packages feed

eventlog-live-otelcol-0.1.0.1: eventlog-live-otelcol.cabal

cabal-version:   3.12
name:            eventlog-live-otelcol
version:         0.1.0.1
synopsis:        Stream eventlog data to the OpenTelemetry Collector.
description:
  This executable supports live streaming of eventlog data into
  the OpenTelemetry Collector.

  > Usage: eventlog-live-otelcol --eventlog-socket SOCKET
  >                              [--eventlog-socket-timeout NUM]
  >                              [--eventlog-socket-exponent NUM]
  >                              [--batch-interval NUM] [--eventlog-log-file FILE]
  >                              [-h Tcmdyrbi] [--service-name STRING]
  >                              [-v|--verbosity NUM|quiet|error|warning]
  >                              --otelcol-host HOST [--otelcol-port PORT]
  >                              [--otelcol-authority HOST] [--otelcol-ssl]
  >                              [--otelcol-certificate-store FILE]
  >                              [--otelcol-ssl-key-log FILE |
  >                                --otelcol-ssl-key-log-from-env]
  >                              [--otelcol-no-metrics] [--otelcol-no-traces]
  >
  > Available options:
  >   --eventlog-socket SOCKET Eventlog Unix socket.
  >   --eventlog-socket-timeout NUM
  >                            Eventlog socket connection retry timeout in
  >                            microseconds.
  >   --eventlog-socket-exponent NUM
  >                            Eventlog socket connection retry timeout exponent.
  >   --batch-interval NUM     Batch interval in microseconds.
  >   --eventlog-log-file FILE Use file to log binary eventlog data.
  >   -h Tcmdyrbi              Heap profile breakdown.
  >   --service-name STRING    The name of the profiled service.
  >   -v,--verbosity NUM|quiet|error|warning
  >                            The verbosity threshold for logging.
  >   --help                   Show this help text.
  >   --version                Show version information
  >
  > OpenTelemetry Collector Server Options
  >   --otelcol-host HOST      Server hostname.
  >   --otelcol-port PORT      Server TCP port.
  >   --otelcol-authority HOST Server authority.
  >   --otelcol-ssl            Use SSL.
  >   --otelcol-certificate-store FILE
  >                            Store for certificate validation.
  >   --otelcol-ssl-key-log FILE
  >                            Use file to log SSL keys.
  >   --otelcol-ssl-key-log-from-env
  >                            Use SSLKEYLOGFILE to log SSL keys.
  >   --otelcol-no-metrics     Disable metrics exporter.
  >   --otelcol-no-traces      Disable traces exporter.

license:         BSD-3-Clause
license-file:    LICENSE
author:          Wen Kokke
maintainer:      wen@well-typed.com
copyright:       (c) 2025 Well-Typed
build-type:      Simple
category:        Debug, Monitoring, System
extra-doc-files: CHANGELOG.md
tested-with:     GHC ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4 || ==9.10.2

source-repository head
  type:     git
  location: https://github.com/well-typed/eventlog-live.git
  subdir:   eventlog-live-otelcol

common language
  ghc-options:
    -Wall -Wcompat -Widentities -Wprepositive-qualified-module
    -Wredundant-constraints -Wunticked-promoted-constructors
    -Wunused-packages

  default-language:   Haskell2010
  default-extensions:
    BangPatterns
    DataKinds
    DefaultSignatures
    DeriveFoldable
    DeriveFunctor
    DeriveTraversable
    DerivingStrategies
    DuplicateRecordFields
    FlexibleContexts
    FlexibleInstances
    GADTs
    GeneralizedNewtypeDeriving
    ImportQualifiedPost
    InstanceSigs
    KindSignatures
    LambdaCase
    MultiParamTypeClasses
    NoFieldSelectors
    NumericUnderscores
    OverloadedRecordDot
    RankNTypes
    RecordWildCards
    ScopedTypeVariables
    TupleSections
    TypeApplications
    TypeFamilies

library
  import:          language
  hs-source-dirs:  src
  exposed-modules: GHC.Eventlog.Live.Otelcol
  other-modules:   Paths_eventlog_live_otelcol
  autogen-modules: Paths_eventlog_live_otelcol
  build-depends:
    , base                   >=4.16   && <4.22
    , bytestring             >=0.11   && <0.13
    , dlist                  >=1.0    && <1.1
    , eventlog-live          >=0.1    && <0.2
    , eventlog-live:options
    , eventlog-live:socket
    , ghc-events             >=0.20   && <0.21
    , grapesy                >=1.1.0  && <1.2
    , hashable               >=1.4    && <1.6
    , hs-opentelemetry-otlp  >=0.1.0  && <0.2
    , lens-family            >=2.1.3  && <2.2
    , machines               >=0.7.4  && <0.8
    , optparse-applicative   >=0.19   && <0.20
    , proto-lens             >=0.7.1  && <0.8
    , random                 >=1.3    && <1.4
    , text                   >=1.2    && <2.2
    , unordered-containers   >=0.2.20 && <0.3

executable eventlog-live-otelcol
  import:         language
  main-is:        Main.hs
  hs-source-dirs: app
  build-depends:  eventlog-live-otelcol