Tom Taylor 8068002c17
Include db.system attribute in opentelemetry_ecto (#187)
* Run mix format

* Upgrade dependencies to build on OTP 26

* Add db.system attribute

* Add support for mssql and fallback to other_sql

* Fallback to not including db_system if adapter is unrecognised

---------

Co-authored-by: Tristan Sloughter <t@crashfast.com>
2023-09-23 05:56:42 -06:00
..
2021-10-08 15:38:18 -06:00
2021-10-08 15:38:18 -06:00
2023-05-23 04:49:29 -06:00
2021-10-08 15:38:18 -06:00
2023-05-23 05:04:01 -06:00
2021-12-28 16:39:06 -07:00

OpentelemetryEcto

Telemetry handler that creates Opentelemetry spans from Ecto query events. Because Ecto emits telemetry events only after queries have finished, OpentelemetryEcto estimates the start time of the span by subtracting the reported total duration from the current timestamp.

After installing, setup the handler in your application behaviour before your top-level supervisor starts.

OpentelemetryEcto.setup([:blog, :repo])

See the documentation for OpentelemetryEcto.setup/2 for additional options that may be supplied.

Installation

If available in Hex, the package can be installed by adding opentelemetry_ecto to your list of dependencies in mix.exs:

def deps do
  [
    {:opentelemetry_ecto, "~> 1.0"}
  ]
end

Compatibility Matrix

OpentelemetryEcto Version Otel Version Notes
v0.1.0 <= v.0.5.0
v1.0.0-rc.1 v1.0.0-rc.1
v1.0.0-rc.2 v1.0.0-rc.2
v1.0.0-rc.3 v1.0.0-rc.3
v1.0.0-rc.4 v1.0.0-rc.4
v1.0 v1.0

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/opentelemetry_ecto.