eventuo11y-0.9.0.0: eventuo11y.cabal
cabal-version: 3.0
name: eventuo11y
version: 0.9.0.0
synopsis: An event-oriented observability library
description:
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 a @Prometheus@ page, posting to @OpenTelemetry@) 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](https://hackage.haskell.org/package/eventuo11y-dsl) for simpler syntax for
creating application-level instrumentation types.
See [eventuo11y-otel](https://hackage.haskell.org/package/eventuo11y-otel) for an OpenTelemetry-based
backend.
See [eventuo11y-json](https://hackage.haskell.org/package/eventuo11y-json) for JSON-based rendering
and backends.
See [Example.hs](https://github.com/shlevy/eventuo11y/tree/v0.6.0.0/Example.hs) for an example.
See [eventuo11y-batteries](https://hackage.haskell.org/package/eventuo11y-batteries) for miscellaneous
framework-specific helpers.
bug-reports: https://github.com/shlevy/eventuo11y/issues
license: Apache-2.0
license-file: LICENSE
author: Shea Levy
maintainer: shea@shealevy.com
copyright: Copyright 2022 Shea Levy.
category: Observability
extra-source-files:
CHANGELOG.md
tested-with: GHC == { 8.10.7, 9.2.4, 9.4.2 }
source-repository head
type: git
location: https://github.com/shlevy/eventuo11y
library
exposed-modules:
Control.Natural.Control
Observe.Event
Observe.Event.Backend
Observe.Event.Class
Observe.Event.Explicit
Observe.Event.Render.InMemory
build-depends:
, base ^>= { 4.14, 4.16, 4.17 }
, exceptions ^>= { 0.10 }
, general-allocate ^>= { 0.2 } && >= 0.2.1
, primitive ^>= { 0.7 }
, time ^>= { 1.11, 1.12 }
, transformers ^>= { 0.5, 0.6 }
, transformers-base ^>= { 0.4 }
, monad-control ^>= { 1.0 }
, mtl ^>= { 2.2, 2.3 }
, unliftio-core ^>= { 0.2 }
hs-source-dirs: src
default-language: Haskell2010