mcpField
L
logs-python

logs-python

github.com/posthog开发76101 次安装今天更新
代码仓库

关于 logs-python

用于将 PostHog 日志接入 Python 应用的技能,介绍 OTLP 配置、结构化日志、事件属性隐私处理及退出时刷新日志。

主要功能

  1. 01Python SDK 配置指南
  2. 02OTLP 导出器配置
  3. 03结构化日志实践
  4. 04避免事件属性包含 PII
  5. 05进程退出时刷新事件

适用场景

  1. 01将 Python 应用日志发送到 PostHog
  2. 02配置 OpenTelemetry 日志导出器
  3. 03避免在事件属性中放入 PII
  4. 04确保 CLI 退出前发送日志

MCP 相关

参考资料包含使用 MCP 调试日志的指南。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/posthog/skills --skill logs-python

安装后在 Claude Code 中输入/logs-python确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
best-practices.md
debug-logs-mcp.md
link-session-replay.md
python.md
search.md
start-here.md
troubleshooting.md

详细介绍

Python 的 PostHog 日志

此技能可帮助你为 Python 应用添加 PostHog 日志摄取。

参考文件

  • references/python.md - Python 日志安装 - 文档
  • references/start-here.md - 日志入门 - 文档
  • references/search.md - 搜索日志 - 文档
  • references/best-practices.md - 日志记录最佳实践 - 文档
  • references/troubleshooting.md - 日志故障排查 - 文档
  • references/link-session-replay.md - 关联会话回放 - 文档
  • references/debug-logs-mcp.md - 使用 mcp 调试日志 - 文档

请查阅文档,了解 API 详情和特定框架的模式。

关键原则

  • 环境变量:始终使用环境变量配置 PostHog 密钥和 OpenTelemetry 端点。切勿将其硬编码。
  • 尽量少改动:在现有日志记录旁添加日志导出。不要替换或重构现有日志记录代码。
  • OpenTelemetry:PostHog 日志使用 OpenTelemetry 协议。请配置一个指向 PostHog 摄取端点的 OTLP 导出器。
  • 结构化日志:优先使用包含键值属性的结构化日志格式,而非纯文本消息。

框架指南

  • 请记住,源代码位于 venv/site-packages 目录中
  • posthog 是 Python SDK 的包名
  • 使用 pip install posthog 或 pip install -r requirements.txt 安装依赖项,切勿在 shell 命令中直接使用未加引号的版本说明符(例如 >=)
  • 在 CLI 和脚本中:必须在退出前调用 posthog.shutdown(),否则所有事件都会丢失
  • 始终使用 Posthog() 类构造函数(基于实例的 API),而不要使用模块级别的 posthog.api_key 配置
  • 始终在 Posthog() 构造函数中包含 enable_exception_autocapture=True,以自动跟踪异常
  • 切勿在 capture() 事件属性中发送 PII——包括电子邮件、全名、电话号码、实际地址、IP 地址或用户生成的内容
  • PII 应放在 identify() 人员属性中,而非 capture() 事件属性中。安全的事件属性包括 message_length、form_type 和布尔标志等元数据。
  • 使用 atexit.register() 注册 posthog_client.shutdown,以确保退出时刷新所有事件
  • Python SDK 没有 identify() 方法——请使用 posthog_client.set(distinct_id=user_id, properties={...}) 设置人员属性,或在上下文中使用 identify_context(user_id)

评论

支持 Markdown