Documentation Index
Fetch the complete documentation index at: https://handbook.fiddler.ai/llms.txt
Use this file to discover all available pages before exploring further.
1.1
1.1.1
April 2026Bug fixes
-
add_session_attributes()now accepts all OTel primitive value types — Previously,valuewas restricted tostr, forcing callers to convert numeric metadata to strings before attaching it to a session. Numeric values now flow through unchanged, so downstream charts and filters that expect numeric types (e.g. integer counts, floating-point scores) work as intended. Supported value types:str,bool,int,float, and homogeneous sequences of these (per the OpenTelemetry attribute specification).
1.1.0
April 2026New features
-
Offline / S3 routing mode — Traces can now be written to local
.jsonfiles in standard OTLP JSON format and routed through an intermediate store (e.g. Amazon S3) instead of being sent directly to Fiddler. This enables deployment in environments where security or network policies require all data to pass through a controlled intermediary before reaching Fiddler. NewFiddlerClientconstructor parameters:Usage example:Parameter Type Default Description otlp_enabledboolTrueSet to Falseto disable direct OTLP export to Fiddler. WhenFalse,api_keyandurlare not required.otlp_json_capture_enabledboolFalseWhen True, writes traces to local.jsonfiles in standard OTLP JSON format (ExportTraceServiceRequestenvelope) compatible with the Fiddler S3 connector.otlp_json_output_dirstr'fiddler_traces'Directory for OTLP JSON output files. Created automatically if absent. Each span batch is written to a separate timestamped file. Upload the generated.jsonfiles fromotlp_json_output_dirto S3. The Fiddler S3 connector ingests them directly with no reformatting required. -
application_idas first positional parameter —FiddlerClient.__init__now acceptsapplication_idas the first (and only strictly required) argument.api_keyandurldefault to''and are only validated whenotlp_enabled=True.
Clarifications (no functional change)
console_tracer=Truehas always been additive — it prints spans to stdout alongside the existing OTLP export. It does not suppress export to Fiddler. The documentation has been updated to reflect this clearly.jsonl_capture_enabled=Truehas always been additive — it writes spans to a local JSONL file alongside the existing OTLP export. It does not suppress export to Fiddler. Note: the JSONL format is Fiddler’s custom format and is not compatible with the S3 connector; useotlp_json_capture_enabled=Truefor S3 ingestion.
Breaking changes
- Parameter reordering in
FiddlerClient.__init__:application_idis now the first parameter, beforeapi_keyandurl. Code using keyword arguments (the recommended pattern) is unaffected. Code passing arguments positionally will break — update to use keyword arguments.
1.0
1.0.0
March 18, 2026 Initial release of the Fiddler OTel SDK as a standalone package. The core OpenTelemetry instrumentation functionality has been extracted fromfiddler-langgraph into this independent package, which now serves as the foundation for all Fiddler framework integrations.
Core classes
FiddlerClient: Main client that configures and manages the OTel tracer. Handles OTLP authentication, compression, span limits, sampling, and lifecycle (flush/shutdown). Registers anatexithandler for automatic span flushing.@tracedecorator: Automatic function tracing with input/output capture. Supports sync and async functions, all four span types (span,generation,chain,tool), and decorator parameters formodel,system,user_id, andversion.get_current_span(): Retrieve the active Fiddler span inside a@trace-decorated function as a typed wrapper.get_client(): Retrieve the globalFiddlerClientsingleton.
Span wrappers
FiddlerSpan (base), FiddlerGeneration, FiddlerChain, FiddlerTool — typed wrappers with semantic convention helpers.
FiddlerGeneration:set_model(),set_system(),set_system_prompt(),set_user_prompt(),set_completion(),set_usage(),set_context(),set_messages(),set_output_messages(),set_tool_definitions()FiddlerTool:set_tool_name(),set_tool_input(),set_tool_output(),set_tool_definitions()- All wrappers:
set_input(),set_output(),set_attribute(),set_agent_name(),set_agent_id(),set_conversation_id(),record_exception(),end()
Context and session
set_conversation_id(): Set the conversation ID as aContextVarthat propagates to all spans in the current thread or async task.add_session_attributes(key, value): Attach session-level metadata to all spans in the current thread or async coroutine. Emitted asfiddler.session.user.{key}and automatically propagated from parent to child spans.FiddlerSpanProcessor: OTelSpanProcessorthat auto-propagatesgen_ai.agent.name,gen_ai.agent.id,gen_ai.conversation.id,session.id, anduser.idfrom parent to child spans.- Context isolation: Each
FiddlerClientuses its own isolated OTelContext, preventing interference with any existing global tracer in the application.
Configuration and debugging
- JSONL local capture:
jsonl_capture_enabledandjsonl_file_pathconstructor parameters for local span capture. TheFIDDLER_JSONL_FILEenvironment variable overrides the file path whenjsonl_file_pathis not set explicitly. - Console tracing:
console_tracer=Trueparameter to print spans to stdout during development. - Flush and shutdown:
force_flush(),shutdown(),aflush(),ashutdown(), and context manager support.
Constants
FiddlerSpanAttributes: Constants for all Fiddler OTel span attribute keys.FiddlerResourceAttributes: Constants for Fiddler OTel resource attribute keys.SpanType: Constants for validfiddler.span.typevalues.