DSPy Observability & Monitoring with OpenTelemetry SigNoz announced support for monitoring DSPy programs via OpenTelemetry, enabling real-time visibility into DSPy module calls and language model requests. The integration uses the OpenInference DSPy instrumentation to capture traces with DSPy-native attributes, allowing users to trace program runs, compare model usage, and set alerts on latency and errors. SigNoz offers both no-code auto-instrumentation and code-based instrumentation for connecting DSPy applications to its observability platform. What is DSPy Observability? DSPy observability gives you real-time visibility into your DSPy programs by collecting traces using OpenTelemetry https://opentelemetry.io/ . The OpenInference DSPy instrumentation https://pypi.org/project/openinference-instrumentation-dspy/ automatically captures every DSPy module call Predict , ChainOfThought , ReAct , custom Module pipelines and the underlying language model request as spans, tagged with DSPy-native attributes such as openinference.span.kind CHAIN, LLM, TOOL , llm.model name , and llm.provider . With full DSPy monitoring in SigNoz, you can trace every program run end to end, break down module and tool activity, compare model usage and latency, set alerts on latency and errors, and continuously improve the reliability of your DSPy applications. Prerequisites - A SigNoz Cloud account https://signoz.io/teams/ with an active ingestion key or Self Hosted SigNoz instance https://signoz.io/docs/install/self-host/ - Python 3.9 or later - A DSPy program and a configured language model provider for example, an Anthropic or OpenAI API key Monitoring DSPy with OpenTelemetry DSPy does not ship with OpenTelemetry built in, so you add the OpenInference DSPy instrumentation https://pypi.org/project/openinference-instrumentation-dspy/ and export traces to SigNoz over OTLP/HTTP. You can wire this up two ways. For more details, refer to the DSPy documentation https://dspy.ai/ . No-code auto-instrumentation is recommended for quick setup with minimal code changes. It is ideal when you want observability up and running without modifying your application code, using the OpenInference DSPy instrumentor loaded automatically at startup. Step 1: Install the necessary packages in your Python environment. pip install \ dspy \ opentelemetry-distro \ opentelemetry-exporter-otlp \ openinference-instrumentation-dspy Step 2: Add automatic instrumentation. opentelemetry-bootstrap --action=install Step 3: Run an example. python import dspy dspy.configure lm=dspy.LM "anthropic/claude-sonnet-5" predict = dspy.Predict "question - answer" result = predict question="What is OpenTelemetry in one sentence?" print result.answer Step 4: Run your application with auto-instrumentation. OTEL RESOURCE ATTRIBUTES="service.name=