Syntropy.Telemetry
(syntropy v0.3.0)
Copy Markdown
Custom :telemetry event emitters for the Syntropy runtime.
Event names and measurement shapes live here so instrumentation call
sites stay one-liners and SyntropyWeb.Telemetry (the Prometheus
reporter) has a single contract to define metrics against.
Events:
[:syntropy, :task_run, :stop]— a run reached a terminal state (completed / failed / cancelled). Measurements:duration_ms,agent_count. Metadata:status,strategy,kind.[:syntropy, :llm_request, :stop]— one provider completion call finished. Measurements:duration_ms. Metadata:provider,model,status.[:syntropy, :llm_request, :tokens]— provider-reported usage for a completion (emitted only when the provider returns usage data). Measurements:input_tokens,output_tokens,total_tokens. Metadata:provider,model,stage.[:syntropy, :webhook_delivery, :stop]— one webhook delivery concluded. Measurements:attempts. Metadata:status.[:syntropy, :event_recorder, :flush]— the event recorder flushed a batch to Postgres. Measurements:batch_size,duration_ms.
Summary
Functions
Emits one event recorder batch flush.
Emits the stop event for one LLM provider completion call.
Emits provider-reported token usage for one completion call.
Emits the terminal-state event for a run envelope.
Emits the result of one webhook delivery (after retries).
Functions
@spec event_recorder_flush(non_neg_integer(), integer()) :: :ok
Emits one event recorder batch flush.
@spec llm_request_stop( String.t(), String.t() | nil, {:ok, term()} | {:error, term()}, integer() ) :: :ok
Emits the stop event for one LLM provider completion call.
Emits provider-reported token usage for one completion call.
@spec task_run_stop(map()) :: :ok
Emits the terminal-state event for a run envelope.
@spec webhook_delivery_stop(map()) :: :ok
Emits the result of one webhook delivery (after retries).