Xero.Telemetry (Xero v1.0.0)

Copy Markdown View Source

Telemetry supervisor and default handler.

Events emitted

EventMeasurementsMetadata
[:xero, :http, :request]duration (native)method, url, status, tenant_id
[:xero, :rate_limit, :remaining]day_remaining, min_remaining, app_min_remaining%{}
[:xero, :auth, :token_refreshed]%{}%{}
[:xero, :auth, :token_refresh_failed]%{}%{}

Attaching your own handler

:telemetry.attach_many("my-xero", [
  [:xero, :http, :request],
  [:xero, :rate_limit, :remaining]
], &MyApp.handle_xero_event/4, nil)

telemetry_metrics integration

[
  Telemetry.Metrics.summary("xero.http.request.duration", unit: {:native, :millisecond}, tags: [:status]),
  Telemetry.Metrics.last_value("xero.rate_limit.remaining.day_remaining"),
  Telemetry.Metrics.counter("xero.auth.token_refreshed")
]

Summary

Functions

Returns a specification to start this module under a supervisor.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

start_link(opts)