packages feed

eventuo11y-0.3.1.0: eventuo11y.cabal

cabal-version:      3.0
name:               eventuo11y
version:            0.3.1.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 [Example.hs](https://github.com/shlevy/eventuo11y/tree/v0.3.1.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
  Example.hs

tested-with:        GHC ==8.10.7 || ==9.0.2 || ==9.2.2

source-repository head
  type:     git
  location: https://github.com/shlevy/eventuo11y

library
  exposed-modules:
    Observe.Event
    Observe.Event.Backend
    Observe.Event.BackendModification
    Observe.Event.Dynamic
    Observe.Event.Render.IO.JSON
    Observe.Event.Render.JSON

  build-depends:
    , aeson          ^>=2.0.2.0
    , base           >=4.14    && <4.17
    , bytestring     >=0.10    && <0.12
    , exceptions     ^>=0.10
    , primitive      ^>=0.7
    , resourcet      ^>=1.2
    , text           >=1.2     && <2.1
    , time           >=1.9     && <1.12
    , unliftio-core  ^>=0.2
    , uuid           ^>=1.3

  hs-source-dirs:   src
  default-language: Haskell2010