-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathview-logs.sh
More file actions
executable file
·80 lines (70 loc) · 2.21 KB
/
view-logs.sh
File metadata and controls
executable file
·80 lines (70 loc) · 2.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#!/bin/bash
# 日志查看工具
LOG_FILE="logs/application.log"
if [ ! -f "$LOG_FILE" ]; then
echo "❌ 日志文件不存在: $LOG_FILE"
exit 1
fi
case "$1" in
"tail"|"-f")
echo "📊 实时查看日志 (Ctrl+C退出)"
echo "=============================="
tail -f "$LOG_FILE"
;;
"errors"|"-e")
echo "⚠️ 错误和警告日志"
echo "=================="
grep -E "ERROR|WARN" "$LOG_FILE" | tail -50
;;
"api"|"-a")
echo "🔄 API请求日志"
echo "=============="
grep "收到聊天请求" "$LOG_FILE" | tail -20
;;
"today"|"-t")
echo "📅 今日日志"
echo "=========="
grep "$(date +%Y-%m-%d)" "$LOG_FILE"
;;
"stats"|"-s")
echo "📈 日志统计"
echo "=========="
echo "总行数: $(wc -l < "$LOG_FILE")"
echo "INFO级别: $(grep -c "INFO" "$LOG_FILE")"
echo "WARN级别: $(grep -c "WARN" "$LOG_FILE")"
echo "ERROR级别: $(grep -c "ERROR" "$LOG_FILE")"
echo "API请求: $(grep -c "收到聊天请求" "$LOG_FILE")"
echo "成功响应: $(grep -c "请求成功" "$LOG_FILE")"
;;
"clear"|"-c")
echo "🧹 清空日志文件"
echo "=============="
> "$LOG_FILE"
echo "✅ 日志已清空"
;;
"help"|"-h"|"")
echo "📋 日志查看工具"
echo "=============="
echo "用法: $0 [选项]"
echo ""
echo "选项:"
echo " tail, -f 实时查看日志"
echo " errors, -e 查看错误和警告"
echo " api, -a 查看API请求日志"
echo " today, -t 查看今日日志"
echo " stats, -s 查看日志统计"
echo " clear, -c 清空日志文件"
echo " help, -h 显示帮助"
;;
*)
# 显示最后N行
if [[ "$1" =~ ^[0-9]+$ ]]; then
echo "📄 最后 $1 行日志"
echo "================"
tail -n "$1" "$LOG_FILE"
else
echo "❌ 未知选项: $1"
echo "使用: $0 help 查看帮助"
fi
;;
esac