eventuo11y: An event-oriented observability library
Instrument your Haskell codebase with wide, semantically meaningful events. This library is designed with separating the following concerns in mind:
Writing instrumentation
- When instrumenting code, I want to think in terms of my application domain and report any information I might need to infer internal application-level state and understand the behavior of my program/library.
Consuming instrumentation
- When consuming instrumentation, I want to think in
terms of the API fo the specific backend I'm supporting (writing to
stderr
, serving aPrometheus
page, posting toOpenTelemetry
) and what is needed to render to that API. Initializing instrumentation in an application
- When I'm ready to tie it all together, I want to identify the specific backends I want to post to and provide the bridge code to render the domain-specific instrumentation as needed for those backends. I also want to handle concerns like sampling or client-side aggregation of domain-specific instrumentation to keep usage manageable.
See Observe.Event for detailed documentation on instrumenting your code.
See Observe.Event.Backend for documentation on writing an
EventBackend
.
See eventuo11y-dsl for simpler syntax for creating application-level instrumentation types.
See eventuo11y-otel for an OpenTelemetry-based backend.
See eventuo11y-prometheus for a Prometheus-based backend.
See eventuo11y-json for JSON-based rendering and backends.
See Example.hs for an example.
See eventuo11y-batteries for miscellaneous framework-specific helpers.
Modules
[Index] [Quick Jump]
Downloads
- eventuo11y-0.9.0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.1.0.0, 0.1.0.1, 0.2.0.0, 0.2.0.1, 0.3.0.0, 0.3.1.0, 0.3.2.0, 0.4.0.0, 0.5.0.0, 0.6.0.0, 0.7.0.0, 0.7.1.0, 0.8.0.0, 0.9.0.0, 0.9.0.1 (info) |
---|---|
Change log | CHANGELOG.md |
Dependencies | base (>=4.14 && <4.15 || >=4.16 && <4.18), exceptions (>=0.10 && <0.11), general-allocate (>=0.2.1 && <0.3), monad-control (>=1.0 && <1.1), mtl (>=2.2 && <2.4), primitive (>=0.7 && <0.9), time (>=1.9 && <1.10 || >=1.11 && <1.13), transformers (>=0.5 && <0.7), transformers-base (>=0.4 && <0.5), unliftio-core (>=0.2 && <0.3) [details] |
Tested with | ghc ==8.10.7 || ==9.2.6 || ==9.4.2 |
License | Apache-2.0 |
Copyright | Copyright 2022 Shea Levy. |
Author | Shea Levy |
Maintainer | shea@shealevy.com |
Category | Observability |
Bug tracker | https://github.com/shlevy/eventuo11y/issues |
Source repo | head: git clone https://github.com/shlevy/eventuo11y |
Uploaded | by shlevy at 2023-03-01T20:16:10Z |
Distributions | |
Reverse Dependencies | 4 direct, 0 indirect [details] |
Downloads | 766 total (6 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2023-03-01 [all 1 reports] |