hs-opentelemetry-api: OpenTelemetry API for use by libraries for direct instrumentation or wrapper packages.

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Warnings:

Please see the README on GitHub at https://github.com/iand675/hs-opentelemetry/tree/main/api#readme


[Skip to Readme]

Properties

Versions 0.0.1.0, 0.0.2.0, 0.0.3.0, 0.0.3.1, 0.0.3.2, 0.0.3.3, 0.0.3.4, 0.0.3.5, 0.0.3.6, 0.0.3.7, 0.0.3.8, 0.1.0.0, 0.2.0.0, 0.2.0.0
Change log ChangeLog.md
Dependencies async, attoparsec, base (>=4.7 && <5), binary, bytestring, charset, clock, hashable, http-types, memory, mtl, regex-tdfa, safe-exceptions, template-haskell, text, thread-utils-context (>=0.3 && <0.4), transformers, unliftio-core, unordered-containers, vault, vector, vector-builder [details]
License BSD-3-Clause
Copyright 2024 Ian Duncan, Mercury Technologies
Author Ian Duncan, Jade Lovelace
Maintainer ian@iankduncan.com
Category OpenTelemetry, Telemetry, Monitoring, Observability, Metrics
Home page https://github.com/iand675/hs-opentelemetry#readme
Bug tracker https://github.com/iand675/hs-opentelemetry/issues
Source repo head: git clone https://github.com/iand675/hs-opentelemetry
Uploaded by michaelpj at 2024-11-24T19:19:24Z

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for hs-opentelemetry-api-0.2.0.0

[back to package description]

OpenTelemetry API for Haskell

This package provides an interface for instrumentors to use when instrumenting a library directly or implementing a wrapper API around an existing project.

The methods in this package can be safely called by libraries or end-user applications regardless of whether the application has registered an OpenTelemetry SDK configuration or not. When the OpenTelemetry SDK has not registered a tracer provider with any span processors, there API incurs minimal performance overhead, as most of the core interface performs no-ops.

In order to generate and export telemetry data, you will also need to use the OpenTelemetry Haskell SDK.

The inspiration of the OpenTelemetry project is to make every library and application observable out of the box by having them call the OpenTelemetry API directly. Until that happens, there is a need for a separate library which can inject this information. A library that enables observability for another library is called an instrumentation library. In the case of Haskell, instrumentation is currently entirely manual.

Visit the GitHub project for a list of provided instrumentation libraries.

Install Dependencies

Add hs-opentelemetry-api to your package.yaml or Cabal file.