107 lines
5.8 KiB
Python
107 lines
5.8 KiB
Python
"""
|
||
论坛日志测试数据
|
||
|
||
包含各种日志格式的最小示例,用于测试ForumEngine/monitor.py中的日志解析函数。
|
||
涵盖旧格式([HH:MM:SS])和新格式(loguru默认格式)的日志记录示例。
|
||
"""
|
||
|
||
# ===== 旧格式(支持 [HH:MM:SS])=====
|
||
|
||
# 单行JSON,旧格式
|
||
OLD_FORMAT_SINGLE_LINE_JSON = """[17:42:31] 2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {"paragraph_latest_state": "这是首次总结内容"}"""
|
||
|
||
# 多行JSON,旧格式
|
||
OLD_FORMAT_MULTILINE_JSON = [
|
||
"[17:42:31] 2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {",
|
||
"[17:42:31] \"paragraph_latest_state\": \"这是多行\\nJSON内容\"",
|
||
"[17:42:31] }"
|
||
]
|
||
|
||
# 包含FirstSummaryNode的旧格式日志
|
||
OLD_FORMAT_FIRST_SUMMARY = """[17:42:31] 2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - FirstSummaryNode 清理后的输出: {"paragraph_latest_state": "首次总结"}"""
|
||
|
||
# 包含ReflectionSummaryNode的旧格式日志
|
||
OLD_FORMAT_REFLECTION_SUMMARY = """[17:43:00] 2025-11-05 17:43:00.272 | INFO | InsightEngine.nodes.summary_node:process_output:296 - ReflectionSummaryNode 清理后的输出: {"updated_paragraph_latest_state": "反思总结"}"""
|
||
|
||
# 旧格式,非目标节点(应该被忽略)
|
||
OLD_FORMAT_NON_TARGET = """[17:41:16] 2025-11-05 17:41:16.742 | INFO | InsightEngine.nodes.report_structure_node:run:52 - 正在为查询生成报告结构"""
|
||
|
||
|
||
# ===== 新格式(loguru默认格式)=====
|
||
|
||
# 单行JSON,新格式
|
||
NEW_FORMAT_SINGLE_LINE_JSON = """2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {"paragraph_latest_state": "这是首次总结内容"}"""
|
||
|
||
# 多行JSON,新格式
|
||
NEW_FORMAT_MULTILINE_JSON = [
|
||
"2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {",
|
||
"2025-11-05 17:42:31.288 | INFO | InsightEngine.nodes.summary_node:process_output:132 - \"paragraph_latest_state\": \"这是多行\\nJSON内容\"",
|
||
"2025-11-05 17:42:31.289 | INFO | InsightEngine.nodes.summary_node:process_output:133 - }"
|
||
]
|
||
|
||
# 包含FirstSummaryNode的新格式日志
|
||
NEW_FORMAT_FIRST_SUMMARY = """2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - FirstSummaryNode 清理后的输出: {"paragraph_latest_state": "首次总结"}"""
|
||
|
||
# 包含ReflectionSummaryNode的新格式日志
|
||
NEW_FORMAT_REFLECTION_SUMMARY = """2025-11-05 17:43:00.272 | INFO | InsightEngine.nodes.summary_node:process_output:296 - ReflectionSummaryNode 清理后的输出: {"updated_paragraph_latest_state": "反思总结"}"""
|
||
|
||
# 新格式,非目标节点(应该被忽略)
|
||
NEW_FORMAT_NON_TARGET = """2025-11-05 17:41:16.742 | INFO | InsightEngine.nodes.report_structure_node:run:52 - 正在为查询生成报告结构: 洛阳钼业预期股价变化"""
|
||
|
||
# 新格式,ForumEngine的日志
|
||
NEW_FORMAT_FORUM_ENGINE = """2025-11-05 22:31:09.964 | INFO | ForumEngine.monitor:monitor_logs:457 - ForumEngine: 论坛创建中..."""
|
||
|
||
|
||
# ===== 复杂JSON示例 =====
|
||
|
||
# 包含updated_paragraph_latest_state的JSON(应该优先提取这个)
|
||
COMPLEX_JSON_WITH_UPDATED = [
|
||
"2025-11-05 17:43:00.272 | INFO | InsightEngine.nodes.summary_node:process_output:296 - 清理后的输出: {",
|
||
"2025-11-05 17:43:00.273 | INFO | InsightEngine.nodes.summary_node:process_output:297 - \"updated_paragraph_latest_state\": \"## 核心发现(更新版)\\n1. 这是更新后的内容\"",
|
||
"2025-11-05 17:43:00.274 | INFO | InsightEngine.nodes.summary_node:process_output:298 - }"
|
||
]
|
||
|
||
# 只有paragraph_latest_state的JSON
|
||
COMPLEX_JSON_WITH_PARAGRAPH = [
|
||
"2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {",
|
||
"2025-11-05 17:42:31.288 | INFO | InsightEngine.nodes.summary_node:process_output:132 - \"paragraph_latest_state\": \"## 核心发现概述\\n1. 这是首次总结内容\"",
|
||
"2025-11-05 17:42:31.289 | INFO | InsightEngine.nodes.summary_node:process_output:133 - }"
|
||
]
|
||
|
||
# 包含换行符的JSON内容
|
||
COMPLEX_JSON_WITH_NEWLINES = [
|
||
"[17:42:31] 2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {",
|
||
"[17:42:31] \"paragraph_latest_state\": \"第一行内容\\n第二行内容\\n第三行内容\"",
|
||
"[17:42:31] }"
|
||
]
|
||
|
||
# ===== 边界情况 =====
|
||
|
||
# 不包含"清理后的输出"的行(应该被忽略)
|
||
LINE_WITHOUT_CLEAN_OUTPUT = """2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - JSON解析成功"""
|
||
|
||
# 包含"清理后的输出"但不是JSON格式
|
||
LINE_WITH_CLEAN_OUTPUT_NOT_JSON = """2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: 这不是JSON格式的内容"""
|
||
|
||
# 空行
|
||
EMPTY_LINE = ""
|
||
|
||
# 只有时间戳的行
|
||
LINE_WITH_ONLY_TIMESTAMP_OLD = "[17:42:31]"
|
||
LINE_WITH_ONLY_TIMESTAMP_NEW = "2025-11-05 17:42:31.287 | INFO | module:function:1 -"
|
||
|
||
# 无效的JSON格式
|
||
INVALID_JSON = [
|
||
"2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {",
|
||
"2025-11-05 17:42:31.288 | INFO | InsightEngine.nodes.summary_node:process_output:132 - \"paragraph_latest_state\": \"缺少结束引号",
|
||
"2025-11-05 17:42:31.289 | INFO | InsightEngine.nodes.summary_node:process_output:133 - }"
|
||
]
|
||
|
||
# ===== 混合格式(同一批日志中既有旧格式也有新格式)=====
|
||
MIXED_FORMAT_LINES = [
|
||
"[17:42:31] 2025-11-05 17:42:31.287 | INFO | InsightEngine.nodes.summary_node:process_output:131 - 清理后的输出: {",
|
||
"2025-11-05 17:42:31.288 | INFO | InsightEngine.nodes.summary_node:process_output:132 - \"paragraph_latest_state\": \"混合格式内容\"",
|
||
"[17:42:31] }"
|
||
]
|
||
|