#!/usr/bin/env python3 # -*- coding: utf-8 -*- """专题十二 · 步骤 1:查最近 messages,判断空泡是卡住还是已失败。""" from __future__ import annotations 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() sql = ( "docker exec %s psql -U postgres -d dify -c " "\"SELECT id, conversation_id, status, answer IS NOT NULL AS has_answer, " "left(query, 80) AS q, left(error, 180) AS err, created_at " "FROM messages ORDER BY created_at DESC LIMIT 8;\"" % C.PG_CONTAINER ) out, err = d.sh(sql) print(out or err) if "token limit" in (out or "").lower(): print("\n[提示] 发现 token limit 报错 —— 继续运行专题十二后续脚本") return 0 finally: d.close() if __name__ == "__main__": sys.exit(main())