Skip to main content

Python SDK for Sentro — error tracking and agent observability for AI agents

Project description

Sentro Python SDK

Error tracking and agent observability for AI agents. Zero dependencies.

Sentro is an open-source Sentry alternative built specifically for AI agents. This SDK gives you full observability into your agent runs — every step, tool call, LLM call, token count, and cost.

Install

pip install sentro-sdk

Quick Start

Error tracking

from sentro import Sentro

sentro = Sentro(dsn="http://token@localhost:3000/api/ingest/proj_1")

try:
    do_something()
except Exception as e:
    sentro.capture_exception(e)

Agent observability

from sentro import Sentro

sentro = Sentro(dsn="http://token@localhost:3000/api/ingest/proj_1")

with sentro.trace("order-processor", goal="Process refund #456") as run:
    with run.trace("Looking up order") as step:
        # Track tool calls
        with step.trace_tool_call("db.query", input={"sql": "SELECT 1"}) as tool:
            result = db.query("SELECT 1")
            tool.set_result(result)

        # Track LLM calls
        llm = step.llm_call(model="claude-sonnet-4-6")
        response = call_llm("Approve refund?")
        llm.end(prompt_tokens=150, completion_tokens=20, cost=0.001)
# Auto-ends on exit, auto-errors on exception

Async support

async with sentro.trace("async-agent", goal="Async task") as run:
    async with run.trace("Step 1") as step:
        result = await some_async_work()

Features

  • Zero dependencies — standard library only, works in any Python 3.10+ environment
  • Context managerswith blocks for automatic lifecycle management
  • Async supportasync with for async frameworks
  • Auto error capture — exceptions automatically mark runs as failed
  • Batched transport — events are batched and sent efficiently
  • Run tracing — full agent execution timeline
  • Step replay — ordered reasoning chain with tool and LLM call details
  • Cost tracking — token counts and cost per LLM call

Configuration

sentro = Sentro(
    dsn="http://token@localhost:3000/api/ingest/proj_1",
    default_tags={"env": "production", "version": "1.0.0"},
)

Security Considerations

  • The capture_prompts option is disabled by default to avoid storing LLM prompt/response bodies that may contain PII
  • DSN tokens are API keys — treat them like passwords, don't commit them to source control
  • Tool call inputs/outputs are stored as-is — avoid passing sensitive data (API keys, passwords) through traced tool calls

Framework Integrations

LangChain

from sentro import Sentro
from sentro.integrations.langchain import SentroMiddleware

sentro = Sentro(dsn="YOUR_DSN")

agent = create_agent(
    model="gpt-4o",
    tools=[...],
    middleware=[SentroMiddleware(sentro)],
)

Requires pip install langchain langgraph.

CrewAI

from sentro import Sentro
from sentro.integrations.crewai import SentroCrewListener

sentro = Sentro(dsn="YOUR_DSN")
SentroCrewListener(sentro)  # auto-registers — just kick off your crew

Requires pip install crewai.

Links

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sentro_sdk-0.2.0.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sentro_sdk-0.2.0-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file sentro_sdk-0.2.0.tar.gz.

File metadata

  • Download URL: sentro_sdk-0.2.0.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for sentro_sdk-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8c81678340753d527e5c0fc4e0f6077f1e04aaa6d3b79217b6d189a6c3b88b1f
MD5 a4998891d480449296439a086088c40b
BLAKE2b-256 2bf8a107cdc167bc19e17d0a423c914ef3722e9f7d8ddcc45ae4b4b6d16413e7

See more details on using hashes here.

File details

Details for the file sentro_sdk-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: sentro_sdk-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for sentro_sdk-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6bedc528958333278891694a15a9d76d8afb11a5e022aaa24e2bb0c827284667
MD5 7ca5592f96aa12a6c7801fc5160a5821
BLAKE2b-256 fdbd9408ddc74242dfbacd1286195aa789544d780613b0c38fda46fd29db99ef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page