#!/usr/bin/env python3 # -*- coding: utf-8 -*- """用 ClickHouse 直接查询指定 traceId 的 observation/type/name,确认工具 span 是否真的入库。""" from __future__ import annotations import json import sys import _bootstrap # noqa: F401 import _config as C from dify_api import Dify def main() -> int: d = Dify(C.DIFY_EMAIL, C.DIFY_PASSWORD) try: d.login() trace_id = "135b8918-4785-4cc4-9d61-579e78fe7628" out, err = d.sh( "docker exec langfuse-clickhouse-1 clickhouse-client --user clickhouse --password 883b10278205fa0c3c4a8adf " "--format Vertical --query " "\"SELECT id, type, name, start_time, end_time, substring(input,1,200) AS in_head, substring(output,1,220) AS out_head " "FROM observations WHERE trace_id='%s' ORDER BY start_time DESC LIMIT 30\"" % trace_id, t=180, ) print(out or err) return 0 finally: d.close() if __name__ == "__main__": sys.exit(main())