Pydantic Logfire
为 Python 应用采集并查询追踪、指标与日志。
- Star 数
- ★ 4.5k
- 最近更新
- 今天
- License
- MIT
- 主语言
- Python
- FA 评分
- 69/100 · 存在缺口
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台
- 费用
- 有免费版,另有付费云服务
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- Python 后端团队在排查一次请求为何变慢时,用
logfire.span(...)标记关键步骤并查看对应遥测数据。 - 不适合
- 需要完全离线或自托管可观测平台的团队(平台闭源,自托管需企业许可)
- 只想用开源服务端、不接受数据发送到厂商云的用户
- 需要非 Python 技术栈 SDK 的团队(本仓库仅含 Python SDK)
- 源码审查
- 69/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
Pydantic Logfire 是 Pydantic 团队提供的可观测性平台,其开源仓库包含 Python SDK logfire 与文档。开发者可在代码中手动创建日志和 span,也可为 FastAPI 等常用 Python 包接入自动化观测。SDK 以 OpenTelemetry 为基础,覆盖 traces、metrics 和 logs,并支持将数据导出至任意兼容 OTel 的后端。平台的记录与展示服务(UI 和后端)为闭源;企业许可支持自行托管该平台。它适合需要查看 Python 应用、数据库查询、事件循环及 Pydantic Validation 数据流的团队,而不是一个自主执行任务的 AI Agent。
通过 pip install logfire 安装 Python SDK 后,应用调用 logfire.configure() 进行配置。代码可调用 logfire.info()、logfire.debug(),并使用 with logfire.span(...) 包裹操作以产生手动遥测数据;也可调用 logfire.instrument_fastapi(app) 为 FastAPI 应用接入观测。README 还说明可继续为数据库连接器和 HTTP 库接入 instrumentation,并添加 logging handler。生成的 traces、metrics 和 logs 可供 Logfire 平台记录和显示,或导出到任意 OTel 兼容后端;平台数据可用标准 SQL 查询。
- Python 后端团队在排查一次请求为何变慢时,用
logfire.span(...)标记关键步骤并查看对应遥测数据。 - 使用 FastAPI 和 Pydantic
BaseModel的服务团队,希望通过logfire.instrument_fastapi(app)观察接口与验证相关的数据流。 - 需要同时收集追踪、指标和日志的工程团队,希望采用基于 OpenTelemetry 的 Python SDK。
- 已有 OTel 兼容后端的团队,希望通过 Logfire SDK 导出遥测数据,而不把数据路径限定为 Logfire 平台。
- 需要以标准 SQL 查询可观测性数据,或希望将查询接入既有 BI 工具和数据库查询库的数据团队。
如何安装或部署这个 Agent?
在具备 Python 和 pip 的环境中运行:
pip install logfire随后运行:
logfire auth所给材料仅展示认证命令,未说明所需账号、令牌或交互式认证细节。
如何使用这个 Agent?
最小可用调用:
import logfirelogfire.configure()
logfire.info('Hello, {name}!', name='world')可用 with logfire.span('Asking the user their {question}', question='age'): 包裹一段操作以创建 span。FastAPI 集成则在创建 FastAPI() 应用后调用 logfire.configure() 和 logfire.instrument_fastapi(app)。
这个 Agent 有哪些优点和局限?
- 以 OpenTelemetry 为基础,README 明确支持 traces、metrics 与 logs,并可导出至任意 OTel 兼容后端。
- 提供直接的 Python API,包括
logfire.info()、logfire.debug()和logfire.span(...),可从手动追踪开始。 - 提供
logfire.instrument_fastapi(app),且文档说明可为数据库连接器和 HTTP 库继续接入 instrumentation。 - 可用标准 SQL 查询数据,并可配合既有 BI 工具和数据库查询库。
- 记录和展示数据的 Logfire UI 与后端为闭源,仓库不包含该服务的实现。
- 自行托管 Logfire 平台需要购买企业许可。
- 所给材料没有给出认证所需凭据、配置参数、数据保留策略或故障处理行为。
- Python SDK 与文档开源,但仓库并非完整的平台服务器部署包。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Pydantic Logfire 当前 | 69 · 存在缺口 | 命令行工具免费版 + 付费版 | ★ 4.5k | 今天 | Python | — |
| OpenInference | 66 · 存在缺口 | 代码库 / SDK免费 | ★ 1.3k | 1 天前 | Python | OpenAI API · Claude API |
| DataBuff | 65 · 存在缺口 | 自托管服务免费 + 模型费 | ★ 723 | 1 个月前 | Java | OpenAI API |
| Laminar | 58 · 缺口较多 | 自托管服务免费版 + 付费版 | ★ 3.5k | 6 天前 | TypeScript | OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
文档说明 SDK 通过 OpenTelemetry 导出遥测,可选择关闭发送,也说明 CLI 登录与 SDK 配置分离、写入凭据的作用范围;OAuth 示例采用授权码、PKCE、state 和 scope,体现了用户授权边界。文档还指出密码等可能被脱敏,但 LLM 提示和响应默认不脱敏,因此敏感数据保护未覆盖所有常见数据。依赖清单对若干已知问题设定版本下限,但未提供完整的供应链审计证据。遥测上传会产生外部数据流,且没有在所给材料中看到 SDK 操作的通用撤销或恢复机制。来源仅能归于仓库与版权声明,发布者身份按题设仍未知。
README、AGENTS.md 与代码结构描述均将仓库定位为 Python SDK 和文档,并称平台服务端闭源,整体定位基本一致。配置说明列出程序参数、环境变量、配置文件及优先级,依赖清单也给出 Python 版本范围;但一些文档将完整平台能力与 SDK 可见能力并列介绍,容易造成边界混淆。配置文档说明缺少凭据时的警告和丢弃行为,提供了一些故障信号;所给材料不足以证明所有依赖路径和错误情形均有清晰处理。
文档涵盖应用开发、平台与安全团队、不同语言及多种基础设施场景,受众和用例较广;不过 SDK 仓库的实证主要是 Python,其他语言由独立 SDK 或 OTel 支持。README 明确说明服务端闭源,配置文档说明 SDK 不负责交互式项目选择,技能文件也区分应用遥测、基础设施监控和模型网关用途,能力边界较清楚。技能的触发描述具体,但所给只是抽样,无法确认所有适用场景均有一致规则。环境适配覆盖 Python 版本和多种配置方式,仍有部分平台能力需云端或企业部署。
仓库结构、配置文档和 FAQ 提供清晰的信息入口;README 给出 pip 安装、SDK 单独安装及基本连接步骤,但深入配置仍依赖外部文档。公共名称如 logfire、logfire-sdk 与 logfire-api 有说明,然而多个包名可能需要读者额外区分。示例和 FAQ 丰富,包含安全路径及常见使用方式;文档明确提示 LLM 内容默认不脱敏、服务端闭源等限制,但所给材料未形成完整限制清单。许可证文本与 MIT 元数据一致。存在 CHANGELOG 相关 CI 规则及版本字段,但未提供具体发布历史。贡献说明和安全报告路径可见,维护责任仍未明确到具体团队或可验证发布者。
SDK 示例、OpenTelemetry 集成、SQL 查询和 AI 可观测性文档表明其能帮助用户查看应用及模型调用上下文;但材料证明的是观测与调试效用,不是 Agent 执行或任务完成能力。OpenTelemetry 兼容和跨层追踪可能带来额外价值,实际边际收益依赖用户已有监控栈。文档提到采样和计费,可帮助控制数据量与成本;未提供足够证据量化设置、存储或运维成本,因此成本收益只能评为部分充分。
README、配置指南、平台安全指南及源码分别支持 SDK 定位、配置方式和遥测实现等主张;FAQ 中的产品优势、合规与功能陈述多为自述,材料内没有独立佐证。跨文件对 Python SDK、OTel 和闭源服务端边界有相互印证,但云端能力与合规主张没有在给定材料中得到独立交叉验证。文档通常能区分配置事实与建议,但营销性比较和概括性优势未充分标示为未经独立验证的主张。
- LLM 提示和响应默认不会脱敏;发送遥测前应依据敏感数据指南配置内容采集与脱敏。
- 本评估对应的是可见的 SDK 与文档,不应将其视作可在仓库中核验的完整平台或自主 Agent;服务端闭源,且多项产品能力在材料中属于自述。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
发布说明摘录
* Drop all incoming context when distributed tracing is disabled by @dmontagu in [#2679](https://github.com/pydantic/logfire/pull/2679) * Carry variable overrides and targeting context into thread pools by @dmontagu in [#2680](https://github.com/pydantic/logfire/pull/2680) * Name the setting when LOGFIRE_TRACE_SAMPLE_RATE is not a number by @chrikrah in [#2685](https://github.com/pydantic/logfire/pull/2685) * Record audio responses and legacy function calls from OpenAI chat completions by @pcbeingused333 in [#2636](https://github.com/pydantic/logfire/pull/2636) …在 GitHub 查看 ↗ -
发布说明摘录
* logfire.agent_sandboxes() by @samuelcolvin in [#2658](https://github.com/pydantic/logfire/pull/2658) and [#2672](https://github.com/pydantic/logfire/pull/2672) * fix(sdk): serialize all pathlib.Path variants as plain strings by @RichardoMrMu in [#2669](https://github.com/pydantic/logfire/pull/2669) * Format an empty set as set() in the console exporter by @chrikrah in [#2671](https://github.com/pydantic/logfire/pull/2671) * Keep binary attributes out of the secret scrubber by @Eapp1e in [#2668](https://github.com/pydantic/logfire/pull/2668) …在 GitHub 查看 ↗ -
发布说明摘录
* Automatically instrument FastAPI with logfire run by @alexmojaki in [#2606](https://github.com/pydantic/logfire/pull/2606) * Automatically instrument Starlette apps with logfire run by @alexmojaki in [#2596](https://github.com/pydantic/logfire/pull/2596) * Automatically instrument Flask apps with logfire run by @alexmojaki in [#2594](https://github.com/pydantic/logfire/pull/2594) * Raise when SQLAlchemy instrumentation is skipped by @maaz-bin-hassan in [#2602](https://github.com/pydantic/logfire/pull/2602) …在 GitHub 查看 ↗
常见问题
这是一个会自主完成任务的 AI Agent 吗?
可以不使用 Logfire 的闭源后端吗?
如何开始认证?
logfire auth。所给材料没有说明账户、令牌或认证流程的具体要求。能否自托管 Logfire 平台?
谢谢反馈,我们会据此改进页面。