Files
ai-team-dashboard/dashboard/view-logs.sh
fang 5f14174bb9 feat: 添加 Dashboard 完整日志监控系统 v1.1.0
 新增功能
- 完整的日志记录系统(6 种日志级别)
- 日志配置功能(可通过 config.json 控制)
- 性能监控装饰器和请求日志中间件
- 7 个管理工具脚本
- 完整的文档和使用指南

🛠️ 管理工具
- start-with-log.sh: 启动脚本(带日志)
- stop-dashboard.sh: 停止脚本
- view-logs.sh: 日志查看器
- monitor-logs.sh: 实时监控工具(支持多种过滤器)
- analyze-logs.sh: 日志分析工具(自动生成报告)
- demo-logging.sh: 功能演示脚本
- test-logging-config.sh: 配置测试工具

📊 日志特性
- 支持 INFO/SUCCESS/WARN/ERROR/DEBUG/PERF 6 种级别
- 自动记录启动过程、API 请求、性能统计
- 缓存命中情况追踪
- 分步性能监控
- 智能过滤器

⚙️ 配置功能
- 可控制是否启用日志(默认:true)
- 可设置日志级别(默认:INFO)
- 可控制文件/控制台输出
- 支持动态配置(重启生效)

📚 文档
- LOGGING_GUIDE.md: 完整使用指南
- LOGGING_CONFIG.md: 配置说明文档
- LOGGING_CONFIG_QUICK.md: 快速配置指南
- 多个中文说明文档

🔒 安全
- 添加 .gitignore 排除敏感信息
- config.json(含 Token)不提交
- 日志文件不提交
- 示例配置使用占位符

 测试
- 语法检查通过
- 功能完整性验证
- 配置控制测试通过
- 文档完整性检查

详见 CHANGELOG_v1.1.0.md

Made-with: Cursor
2026-03-11 11:37:35 +08:00

86 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
# AI Team Dashboard 日志查看脚本
# 使用方法:
# ./view-logs.sh - 查看最近 50 行日志
# ./view-logs.sh -f - 实时查看日志
# ./view-logs.sh -e - 查看错误日志
# ./view-logs.sh -e -f - 实时查看错误日志
# ./view-logs.sh -a - 查看所有日志
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
LOG_FILE="$SCRIPT_DIR/logs/dashboard.log"
ERROR_LOG="$SCRIPT_DIR/logs/dashboard-error.log"
# 检查日志文件是否存在
if [ ! -f "$LOG_FILE" ] && [ ! -f "$ERROR_LOG" ]; then
echo "❌ 未找到日志文件"
echo " 请先使用 ./start-with-log.sh 启动 Dashboard"
exit 1
fi
# 解析参数
FOLLOW=false
ERROR_ONLY=false
ALL=false
for arg in "$@"; do
case $arg in
-f|--follow)
FOLLOW=true
;;
-e|--error)
ERROR_ONLY=true
;;
-a|--all)
ALL=true
;;
-h|--help)
echo "用法: $0 [选项]"
echo ""
echo "选项:"
echo " -f, --follow 实时跟踪日志输出"
echo " -e, --error 查看错误日志"
echo " -a, --all 查看所有日志(不限行数)"
echo " -h, --help 显示此帮助信息"
echo ""
echo "示例:"
echo " $0 查看最近 50 行日志"
echo " $0 -f 实时查看日志"
echo " $0 -e 查看错误日志"
echo " $0 -e -f 实时查看错误日志"
exit 0
;;
esac
done
# 选择日志文件
if [ "$ERROR_ONLY" = true ]; then
TARGET_LOG="$ERROR_LOG"
LOG_NAME="错误日志"
else
TARGET_LOG="$LOG_FILE"
LOG_NAME="运行日志"
fi
# 检查文件是否存在
if [ ! -f "$TARGET_LOG" ]; then
echo "❌ 未找到 $LOG_NAME: $TARGET_LOG"
exit 1
fi
echo "📋 查看 Dashboard $LOG_NAME"
echo " 文件: $TARGET_LOG"
echo ""
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo ""
# 显示日志
if [ "$FOLLOW" = true ]; then
tail -f "$TARGET_LOG"
elif [ "$ALL" = true ]; then
cat "$TARGET_LOG"
else
tail -50 "$TARGET_LOG"
fi