Skip to main content

Monocle for tracing GenAI app code

Monocle helps developers and platform engineers building or managing GenAI apps monitor these in prod by making it easy to instrument their code to capture traces that are compliant with open-source cloud-native observability ecosystem.

Monocle is a community-driven OSS framework for tracing GenAI app code governed as a Linux Foundation AI & Data project.

Why Monocle

Monocle is built for:

  • app developers to trace their app code in any environment without lots of custom code decoration
  • platform engineers to instrument apps in prod through wrapping instead of asking app devs to recode
  • GenAI component providers to add observability features to their products
  • enterprises to consume traces from GenAI apps in their existing open-source observability stack

Benefits:

  • Monocle provides an implementation + package, not just a spec
    • No expertise in OpenTelemetry spec required
    • No bespoke implementation of that spec required
    • No last-mile GenAI domain specific code required to instrument your app
  • Monocle provides consistency
    • Connect traces across app code executions, model inference or data retrievals
    • No cleansing of telemetry data across GenAI component providers required
    • Works the same in personal lab dev or org cloud prod environments
    • Send traces to location that fits your scale, budget and observability stack
  • Monocle is fully open source and community driven
    • No vendor lock-in
    • Implementation is transparent
    • You can freely use or customize it to fit your needs

What Monocle provides

  • Easy to use code instrumentation
  • OpenTelemetry compatible format for spans.
  • Community-curated and extensible metamodel for consisent tracing of GenAI components.
  • Export to local and cloud storage

Use Monocle

  • Get the Monocle package
    pip install monocle_apptrace 
  • Instrument your app code
    • Import the Monocle package
         from monocle_apptrace.instrumentor import setup_monocle_telemetry
      
    • Setup instrumentation in your main() function
         setup_monocle_telemetry(workflow_name="your-app-name")
      
  • (Optionally) Modify config to alter where traces are sent

See Monocle user guide for more details.

Use Monocle MCP

First install test-apptrace: pip install test-apptrace

Open bash and run the following command to run the monocle mcp server with stdio: monocle_apptrace

If you are using VS Code you can add following entry to your .vscode/mcp.json

"monocle-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
         "test_apptrace"
      ],
      "env": {}
   }

Roadmap

Goal of Monocle is to support tracing for apps written in any language with any LLM orchestration or agentic framework and built using models, vectors, agents or other components served up by any cloud or model inference provider.

Current version supports:

  • Language: (🟢) Python , (🔜) Typescript
  • LLM-frameworks: (🟢) Langchain, (🟢) Llamaindex, (🟢) Haystack, (🔜) Flask
  • LLM inference providers: (🟢) OpenAI, (🟢) Azure OpenAI, (🟢) Nvidia Triton, (🔜) AWS Bedrock, (🔜) Google Vertex, (🔜) Azure ML, (🔜) Hugging Face
  • Vector stores: (🟢) FAISS, (🔜) OpenSearch, (🔜) Milvus
  • Exporter: (🟢) stdout, (🟢) file, (🔜) Azure Blob Storage, (🔜) AWS S3, (🔜) Google Cloud Storage

Get involved

Provide feedback

  • Submit issues and enhancements requests via Github issues

Contribute

  • Monocle is community based open source project. We welcome your contributions. Please refer to the CONTRIBUTING and CODE_OF_CONDUCT for guidelines. The contributor's guide provides technical details of the project.

Metadata

Release files for test-apptrace 0.5.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for test-apptrace 0.5.7
File Size Uploaded
test_apptrace-0.5.7.tar.gz 90.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for test-apptrace 0.5.7
File Interpreter ABI Platform
test_apptrace-0.5.7-py3-none-any.whl Python 3 none any Details

Total release size: 246.4 kB

Release files / test_apptrace-0.5.7.tar.gz

Download URL test_apptrace-0.5.7.tar.gz
Size 90.8 kB
Tags Source
SHA-256 checksum
How to use checksums
e08a726d1750edb228cf3c2de020c3289c2b1bd6d4b39979865801fcc1f1f2f6
BLAKE2b-256 checksum
How to use checksums
5e268cf9341c90813fc8fefe9dca837efe540875b62ccebdce4a946bb4b9612a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.7

Release files / test_apptrace-0.5.7-py3-none-any.whl

Download URL test_apptrace-0.5.7-py3-none-any.whl
Size 155.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ece08e99edde070eba9fe54cdfa90ebee803cef9e7bbbd1eb7cbe49c75acc2e
BLAKE2b-256 checksum
How to use checksums
791047b189bb4bd26ba438ae4d212e0a7190ee2ac62422af05da7e1716dac4ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.7

Release history Release notifications | RSS feed

This release

0.5.7 This release

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page