用途:为 Frappe 应用接入 OpenObserve(开源日志、指标与追踪可观测性平台)提供专家指引,涵盖配置、日志发送与检索、故障排查。
主要能力:配置单一文档类型 "Open Observe API",包含 URL、用户、密码和默认组织;核心函数有 send_logs()、search_logs()、test_connection();支持批量日志发送、基于时间的检索、SQL 查询与 JSON 过滤、Dry Run 试运行;密码使用 Frappe 密码字段加密,采用 HTTP Basic Auth,超时 30 秒,错误写入 Frappe 错误日志。权限仅限系统管理员。
使用方式:通过 frappe.get_doc("Open Observe API", "Open Observe API") 设置 url、user、password、default_org 后保存。发送日志可在 Python 中调用 frappe.call("tweaks.tweaks.doctype.open_observe_api.open_observe_api.send_logs", stream="application-logs", logs=[...]),在服务器脚本或业务逻辑中用 open_observe.send_logs(stream="server-logs", logs=[...])。检索日志使用 open_observe.search_logs(sql="SELECT * FROM application_logs", start_time=..., end_time=..., size=100),ISO 时间戳自动转换为 Unix 微秒。
概念与限制:流(Stream)用于组织日志,组织(Organization)用于隔离环境,默认使用配置的 default_org。时间戳使用 _timestamp 或 @timestamp(Unix 微秒);Frappe 日期时间无时区,需用 frappe.utils.convert_timezone_to_utc() 转换。建议使用描述性流名、添加时间戳与上下文、批量发送并优雅处理失败。更多参数、示例与排查见随附参考文档。资料未提供收费、价格与平台支持等细节。