跳转至

PyMongo

logfire.instrument_pymongo() 方法将为使用 PyMongo 客户端执行的每个操作创建一个跨度。

安装

使用 pymongo extra 安装 logfire

pip install 'logfire[pymongo]'
rye add logfire -E pymongo
poetry add 'logfire[pymongo]'

用法

以下示例演示了如何将 Logfire 与 PyMongo 一起使用。

在 Docker 上运行 Mongo(可选)

如果您已经运行了一个 MongoDB 实例,则可以跳过此步骤。否则,您可以使用以下命令使用 Docker 启动 MongoDB:

docker run --name mongo -p 27017:27017 -d mongo:latest

运行 Python 脚本

以下脚本连接到 MongoDB 数据库,插入文档并查询它:

import logfire
from pymongo import MongoClient

logfire.configure()
logfire.instrument_pymongo(capture_statement=True)  # (1)!

client = MongoClient()
db = client["database"]
collection = db["collection"]
collection.insert_one({"name": "MongoDB"})
collection.find_one()
  1. 将 capture_statement 参数设置为 True 以捕获已执行的语句。

    这是其他 OpenTelemetry 插桩包上的默认行为,但在 PyMongo 中默认禁用。


logfire.instrument_pymongo() 的关键字参数被传递给 OpenTelemetry pymongo Instrumentation 包的 PymongoInstrumentor().instrument() 方法,请在此处阅读更多相关信息。


本文总阅读量