Membrane.Telemetry.TimescaleDB.Reporter (Membrane Telemetry TimescaleDB v0.1.0) View Source

A worker responsible for persisting events/measurements to the TimescaleDB database.

Receives measurements via send_measurement/3 then, based on event names, eventually persists them to TimescaleDB database.

Link to this section Summary

Functions

Returns a specification to start this module under a supervisor.

Flushes cached measurements to the database.

Returns cached measurements.

Returns list of metrics registered by GenServer.

Resets cached measurements.

Sends measurement to GenServer which, based on event name, will eventually persist it to database.

Link to this section Functions

Returns a specification to start this module under a supervisor.

See Supervisor.

Specs

flush(GenServer.server()) :: :ok

Flushes cached measurements to the database.

Link to this function

get_cached_measurements(reporter)

View Source

Specs

get_cached_measurements(GenServer.server()) :: [map()]

Returns cached measurements.

Specs

get_metrics(GenServer.server()) :: map()

Returns list of metrics registered by GenServer.

Specs

registry() :: atom()

Specs

reset(GenServer.server()) :: :ok

Resets cached measurements.

Link to this function

send_measurement(reporter, event_name, measurement, metadata \\ %{})

View Source

Specs

send_measurement(GenServer.server(), [atom()], map(), map()) :: :ok

Sends measurement to GenServer which, based on event name, will eventually persist it to database.

Logs warning on invalid/unsupported measurement event name or format.

Supported events

Specs

start(any()) :: GenServer.on_start()

Specs

start_link(any()) :: GenServer.on_start()