Documentation Index
Fetch the complete documentation index at: https://docs.instructorphp.com/llms.txt
Use this file to discover all available pages before exploring further.
Telemetry Cheatsheet
Namespace:Cognesy\\Telemetry\\
TraceContextSpanReferenceObservationMetricMeasurementTelemetryContinuationInstrumentationProfile
TelemetryTraceRegistryCompositeTelemetryExporter
Telemetrytakesnew TraceRegistry()plus an exporter- use
CompositeTelemetryExporter([...])when you want to fan out to multiple backends - call
flush()after the run to send buffered observations and metrics
Live Interop Suite
Run the live backend interop suite from the monorepo root:- tests live under
packages/telemetry/tests/Integration - the suite is opt-in and skips cleanly when disabled
- backend contract tests cover direct exporter write/read interop
- runtime smoke tests cover inference, streaming, agent, and AgentCtrl paths
- inference, streaming, and agent runtime smoke coverage also require
OPENAI_API_KEY - AgentCtrl smoke coverage also requires a usable
codexCLI with working auth/config
Logfire
Basic setup:endpointis the base OTLP URL, not the full/v1/tracespathLogfireExporterrequires eitherLogfireConfigor a custom transport- practical examples:
examples/A03_Troubleshooting/TelemetryLogfire/run.phpexamples/D05_AgentTroubleshooting/TelemetryLogfire/run.phpexamples/D05_AgentTroubleshooting/SubagentTelemetryLogfire/run.php
Langfuse
Basic setup:- Langfuse traces are sent to
/api/public/otel/v1/traces - request-scoped traces fall back to request ids as
session.idvalues - practical examples:
examples/A03_Troubleshooting/TelemetryLangfuse/run.phpexamples/D05_AgentTroubleshooting/TelemetryLangfuse/run.phpexamples/D05_AgentTroubleshooting/SubagentTelemetryLangfuse/run.php
Runtime wiring
For runtime packages, telemetry is usually attached to an event bus throughRuntimeEventBridge
and one or more projectors:
- runtime packages own their local projectors and emit serialized
data['telemetry']envelopes - telemetry core rehydrates the envelope and correlates spans centrally
AgentCtrlTelemetryProjectorcorrelatesagent-ctrlbyexecutionIdagent_ctrl.session_idis continuation metadata, not the primary trace key- request-scoped traces fall back to request ids as
session.idvalues for Langfuse - use the Integration suite when you need live backend proof, not just local payload inspection
Cognesy\\Telemetry\\Adapters\\OTelCognesy\\Telemetry\\Adapters\\LogfireCognesy\\Telemetry\\Adapters\\Langfuse