packages feed

hs-opentelemetry-sdk-1.0.0.0: hs-opentelemetry-sdk.cabal

cabal-version: 1.22

-- This file has been generated from package.yaml by hpack version 0.38.3.
--
-- see: https://github.com/sol/hpack

name:           hs-opentelemetry-sdk
version:        1.0.0.0
synopsis:       OpenTelemetry SDK for use in applications.
description:    Please see the README on GitHub at <https://github.com/iand675/hs-opentelemetry/tree/main/sdk#readme>
category:       OpenTelemetry, Telemetry, Monitoring, Observability, Metrics
homepage:       https://github.com/iand675/hs-opentelemetry#readme
bug-reports:    https://github.com/iand675/hs-opentelemetry/issues
author:         Ian Duncan, Jade Lovelace
maintainer:     ian@iankduncan.com
copyright:      2024 Ian Duncan, Mercury Technologies
license:        BSD3
license-file:   LICENSE
build-type:     Simple
extra-source-files:
    README.md
extra-doc-files:
    ChangeLog.md
    docs/img/traces_spans.png

source-repository head
  type: git
  location: https://github.com/iand675/hs-opentelemetry

flag tls-metadata
  description: Enable TLS-based metadata detection (requires crypton-connection >= 0.3.1). Disable for LTS 21.x (GHC 9.4) which lacks crypton-connection.
  manual: False
  default: True

library
  exposed-modules:
      OpenTelemetry.SDK
      OpenTelemetry.Configuration
      OpenTelemetry.Configuration.Create
      OpenTelemetry.Configuration.Parse
      OpenTelemetry.Configuration.Types
      OpenTelemetry.Log
      OpenTelemetry.MetricReader
      OpenTelemetry.MeterProvider
      OpenTelemetry.Metric
      OpenTelemetry.Metric.ExporterSelection
      OpenTelemetry.Metric.View
      OpenTelemetry.Processor.Batch
      OpenTelemetry.Processor.Batch.LogRecord
      OpenTelemetry.Processor.Batch.Span
      OpenTelemetry.Processor.Simple
      OpenTelemetry.Processor.Simple.LogRecord
      OpenTelemetry.Processor.Simple.Span
      OpenTelemetry.Resource.Cloud.Detector
      OpenTelemetry.Resource.Container.Detector
      OpenTelemetry.Resource.Detect
      OpenTelemetry.Resource.Detector.AWS.EC2
      OpenTelemetry.Resource.Detector.AWS.ECS
      OpenTelemetry.Resource.Detector.AWS.EKS
      OpenTelemetry.Resource.Detector.Azure
      OpenTelemetry.Resource.Detector.GCP
      OpenTelemetry.Resource.Detector.Heroku
      OpenTelemetry.Resource.Detector.Metadata
      OpenTelemetry.Resource.FaaS.Detector
      OpenTelemetry.Resource.Host.Detector
      OpenTelemetry.Resource.Kubernetes.Detector
      OpenTelemetry.Resource.OperatingSystem.Detector
      OpenTelemetry.Resource.Process.Detector
      OpenTelemetry.Resource.Service.Detector
      OpenTelemetry.Resource.Telemetry.Detector
      OpenTelemetry.Trace
      OpenTelemetry.Trace.Id.Generator.Default
  other-modules:
      OpenTelemetry.Resource.Detector.Internal
      Paths_hs_opentelemetry_sdk
  reexported-modules:
      OpenTelemetry.Attributes
    , OpenTelemetry.Baggage
    , OpenTelemetry.Context
    , OpenTelemetry.Context.ThreadLocal
    , OpenTelemetry.Exporter.Span
    , OpenTelemetry.Exporter.LogRecord
    , OpenTelemetry.Exporter
    , OpenTelemetry.Processor.Span
    , OpenTelemetry.Processor.LogRecord
    , OpenTelemetry.Processor
    , OpenTelemetry.Propagator
    , OpenTelemetry.Resource
    , OpenTelemetry.Resource.Cloud
    , OpenTelemetry.Resource.Container
    , OpenTelemetry.Resource.DeploymentEnvironment
    , OpenTelemetry.Resource.Device
    , OpenTelemetry.Resource.FaaS
    , OpenTelemetry.Resource.Host
    , OpenTelemetry.Resource.Kubernetes
    , OpenTelemetry.Resource.OperatingSystem
    , OpenTelemetry.Resource.Process
    , OpenTelemetry.Resource.Service
    , OpenTelemetry.Resource.Telemetry
    , OpenTelemetry.Resource.Webengine
    , OpenTelemetry.Trace.Id
    , OpenTelemetry.Trace.Monad
    , OpenTelemetry.Trace.Sampler
    , OpenTelemetry.Trace.TraceState
    , OpenTelemetry.Util
  hs-source-dirs:
      src
  ghc-options: -Wall
  build-depends:
      aeson
    , async
    , base >=4.7 && <5
    , bytestring
    , case-insensitive
    , clock
    , containers
    , directory
    , hashable
    , hs-opentelemetry-api ==1.0.*
    , hs-opentelemetry-exporter-handle ==1.0.*
    , hs-opentelemetry-exporter-otlp ==1.0.*
    , hs-opentelemetry-propagator-b3 ==1.0.*
    , hs-opentelemetry-propagator-datadog ==1.0.*
    , hs-opentelemetry-propagator-jaeger ==1.0.*
    , hs-opentelemetry-propagator-w3c ==1.0.*
    , hs-opentelemetry-propagator-xray ==1.0.*
    , hs-opentelemetry-semantic-conventions >=1.40 && <2
    , http-client
    , http-types
    , network-bsd
    , process
    , random >=1.2.0
    , scientific
    , stm
    , text
    , time
    , unix-compat >=0.7.1
    , unordered-containers
    , vector
    , vector-builder
    , yaml
  default-language: Haskell2010
  if os(windows)
    other-modules:
        OpenTelemetry.Platform
    hs-source-dirs:
        src/platform/windows
  else
    other-modules:
        OpenTelemetry.Platform
    hs-source-dirs:
        src/platform/unix
    build-depends:
        unix
  if flag(tls-metadata)
    cpp-options: -DTLS_METADATA
    build-depends:
        crypton-connection
      , crypton-x509
      , crypton-x509-store
      , http-client-tls
      , tls

test-suite hs-opentelemetry-sdk-test
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  other-modules:
      OpenTelemetry.BaggageSpec
      OpenTelemetry.ConfigurationSpec
      OpenTelemetry.ContextInSpanSpec
      OpenTelemetry.ContextSpec
      OpenTelemetry.LogSpec
      OpenTelemetry.MeterProviderSpec
      OpenTelemetry.MetricReaderSpec
      OpenTelemetry.Resource.DetectorSpec
      OpenTelemetry.ResourceSpec
      OpenTelemetry.Trace.CallStackSpec
      OpenTelemetry.TraceSpec
  hs-source-dirs:
      test
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      async
    , base >=4.7 && <5
    , bytestring
    , clock
    , containers
    , directory
    , hs-opentelemetry-api
    , hs-opentelemetry-exporter-in-memory
    , hs-opentelemetry-propagator-b3
    , hs-opentelemetry-propagator-w3c
    , hs-opentelemetry-sdk
    , hs-opentelemetry-semantic-conventions
    , hspec
    , process
    , text
    , unix
    , unordered-containers
    , vector
  default-language: Haskell2010