Jido.Telemetry (Jido v1.2.0)

View Source

Handles telemetry events for the Jido application.

This module provides a centralized way to handle and report telemetry events throughout the application. It implements common telemetry patterns and provides a consistent interface for event handling.

Summary

Types

Supported telemetry event names.

Telemetry measurements map.

Telemetry metadata map.

Functions

Returns a specification to start this module under a supervisor.

Executes a function while emitting telemetry events for its execution.

Starts the telemetry handler.

Types

event_name()

@type event_name() :: [atom(), ...]

Supported telemetry event names.

measurements()

@type measurements() :: %{
  optional(:system_time) => integer(),
  optional(:duration) => integer(),
  required(atom()) => term()
}

Telemetry measurements map.

metadata()

@type metadata() :: %{
  optional(:error) => term(),
  optional(:result) => term(),
  required(atom()) => term()
}

Telemetry metadata map.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

handle_event(list, measurements, metadata, config)

@spec handle_event(event_name(), measurements(), metadata(), config :: term()) :: :ok

Handles telemetry events.

span(operation_name, func)

@spec span(String.t(), (-> result)) :: result when result: term()

Executes a function while emitting telemetry events for its execution.

start_link(opts)

Starts the telemetry handler.