cabal-version: 3.4
name: shikumi-trace-otel
version: 0.1.2.1
synopsis:
OpenTelemetry export of shikumi hierarchical trace trees (EP-7)
category: AI
description:
An opt-in OpenTelemetry adapter for shikumi's hierarchical trace trees.
'Shikumi.Trace.OpenTelemetry.exportTree' walks a finished 'TraceTree' and emits
one OTel span per node, preserving parent/child nesting (each child span is
created in a context carrying its parent span). LM-call spans carry GenAI
semantic-convention attributes; every span carries @shikumi.@-prefixed
span-kind/cost/latency/retry attributes. The heavy @hs-opentelemetry-*@
dependency tree is isolated in this package, mirroring baikai's
@baikai-trace-otel@ split.
license: BSD-3-Clause
author: Nadeem Bitar
maintainer: nadeem@gmail.com
build-type: Simple
extra-doc-files: CHANGELOG.md
common common-options
ghc-options:
-Wall
-Wcompat
-Widentities
-Wincomplete-uni-patterns
-Wincomplete-record-updates
-Wredundant-constraints
-fhide-source-paths
-Wmissing-export-lists
-Wpartial-fields
-Wmissing-deriving-strategies
default-language: GHC2024
default-extensions:
DeriveAnyClass
DuplicateRecordFields
OverloadedLabels
OverloadedStrings
library
import: common-options
hs-source-dirs: src
exposed-modules:
Shikumi.Trace.LiveExport
Shikumi.Trace.OpenTelemetry
build-depends:
aeson >=2.2 && <2.3,
baikai >=0.7.1.0 && <0.8,
base >=4.20 && <5,
bytestring >=0.11 && <0.13,
containers >=0.6 && <0.9,
generic-lens >=2.2 && <2.4,
hs-opentelemetry-api >=1.0 && <1.1,
hs-opentelemetry-exporter-otlp >=1.0 && <1.1,
hs-opentelemetry-sdk >=1.0 && <1.1,
hs-opentelemetry-semantic-conventions >=1.40 && <2,
lens ^>=5.3,
scientific >=0.3 && <0.4,
shikumi ^>=0.4.0.0,
shikumi-trace ^>=0.3.0.1,
text ^>=2.1,
time >=1.12 && <1.17,
unordered-containers >=0.2 && <0.3,
test-suite shikumi-trace-otel-test
import: common-options
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Main.hs
other-modules: BillingSpec
ghc-options:
-threaded
-with-rtsopts=-N
build-depends:
aeson,
baikai,
base,
bytestring,
containers,
effectful,
generic-lens,
hs-opentelemetry-api >=1.0 && <1.1,
hs-opentelemetry-exporter-in-memory >=1.0 && <1.1,
hs-opentelemetry-sdk >=1.0 && <1.1,
lens,
shikumi ^>=0.4.0.0,
shikumi-cache ^>=0.2.0.1,
shikumi-eval ^>=0.3.0.1,
shikumi-testing ^>=0.1.0.0,
shikumi-trace ^>=0.3.0.1,
shikumi-trace-otel ^>=0.1.2.1,
tasty,
tasty-hunit,
text,
time,
unordered-containers,