用 Parseable 查看 Datasette 的 OpenTelemetry Trace
Simon Willison3 天前
用 Parseable 查看 Datasette 的 OpenTelemetry Trace
Parseable 是一个新的可观测性平台,提供开源版本和商业版本。其开源实现采用 Rust 编写,许可证为 AGPL,发布形态是一个约 180MB 的单文件二进制程序;此外还提供带有额外功能的 Enterprise 版本和云托管选项。
Datasette 从 1.0a41 版本开始加入了 OpenTelemetry 支持,因此可以将 Datasette 产生的 trace 数据发送到支持 OpenTelemetry 的可观测性系统中进行分析。
这次实验的目标是:运行 Parseable,并把 Datasette 的 OpenTelemetry trace 送入其中,随后在 Parseable 的本地 Web 应用里查看追踪结果。
从展示结果看,Parseable 可以显示 Datasette 请求的 trace 详情,包括:
- 请求的根 span,例如
GET /... - 整体耗时,例如示例中的
40.9 ms - span 数量,例如示例中的
247 - 数据库相关 span,例如
db.query和db.query.execute - 按时间展开的 span waterfall,用于观察请求内部各步骤的执行顺序和耗时
截图中的 trace 视图包含一个时间轴和 span 列表。根 span 覆盖整个请求周期,下面则展示多组数据库查询相关的子 span,能够直观看到每次查询或执行操作在请求生命周期中的位置和耗时。
对于已经在使用 Datasette 的开发者来说,这意味着新版 Datasette 可以通过 OpenTelemetry 接入类似 Parseable 的可观测性工具,用于本地调试、性能分析或理解请求内部的数据库访问过程。
