TelemetryDeck (telemetry_deck v0.1.0)

Copy Markdown View Source

Elixir client for TelemetryDeck's Ingest API v2.

TelemetryDeck is the entry point for the package documentation. Use TelemetryDeck.Config to describe your TelemetryDeck app, TelemetryDeck.Signal to build an event, and TelemetryDeck.Client to send one signal or a batch of signals.

Example

iex> config =
...>   TelemetryDeck.Config.new!(
...>     namespace: "my-namespace",
...>     app_id: "AAAA-BBBB",
...>     request_fun: fn _url, _opts -> {:ok, %Req.Response{status: 202}} end
...>   )
iex> signal =
...>   TelemetryDeck.Signal.new!(
...>     type: "App.User.signedIn",
...>     client_user: TelemetryDeck.Hash.client_user("user-123", "secret")
...>   )
iex> TelemetryDeck.Client.send(config, signal)
{:ok, %TelemetryDeck.Response{status: 202, body: ""}}