如何查看访问日志?
SSLcat 提供了完整的访问日志功能,让你可以追踪所有访问请求,分析访问模式,监控系统状态。
日志类型
SSLcat 生成多种类型的日志:
- 访问日志 - 记录所有 HTTP/HTTPS 请求
- 错误日志 - 记录错误和异常信息
- 安全日志 - 记录安全相关事件
- 系统日志 - 记录系统运行状态
访问日志格式
访问日志包含详细信息:
2024-01-15 10:30:45 192.168.1.100 GET /api/users 200 1.2s "Mozilla/5.0..."
2024-01-15 10:30:46 192.168.1.101 POST /api/login 401 0.8s "curl/7.68.0"
2024-01-15 10:30:47 192.168.1.102 GET /static/style.css 200 0.1s "Mozilla/5.0..."
日志配置
配置日志输出格式和级别:
# 日志配置
logging:
level: "info"
format: "json"
output: "file"
# 访问日志
access_log:
enabled: true
file: "/var/log/sslcat/access.log"
format: "combined"
rotation:
max_size: "100MB"
max_files: 10
# 错误日志
error_log:
enabled: true
file: "/var/log/sslcat/error.log"
level: "error"
实时日志查看
实时查看日志文件:
# 查看访问日志
tail -f /var/log/sslcat/access.log
# 查看错误日志
tail -f /var/log/sslcat/error.log
# 查看系统日志
journalctl -u sslcat -f
日志分析
使用命令行工具分析日志:
# 统计访问量
awk '{print $1}' /var/log/sslcat/access.log | sort | uniq -c | sort -nr
# 查看错误请求
grep " 4[0-9][0-9] " /var/log/sslcat/access.log
# 查看 5xx 错误
grep " 5[0-9][0-9] " /var/log/sslcat/access.log
# 统计响应时间
awk '{print $NF}' /var/log/sslcat/access.log | sort -n
管理面板日志
通过 Web 管理面板查看日志:
- 实时日志 - 实时显示最新日志
- 日志搜索 - 按时间、IP、状态码搜索
- 日志过滤 - 按日志级别过滤
- 日志导出 - 导出日志文件
日志轮转
配置日志轮转避免日志文件过大:
# logrotate 配置
/var/log/sslcat/*.log {
daily
rotate 30
compress
delaycompress
missingok
notifempty
create 644 sslcat sslcat
postrotate
systemctl reload sslcat
endscript
}
监控和告警
基于日志的监控告警:
- 错误率监控 - 监控 4xx/5xx 错误率
- 访问量监控 - 监控访问量异常
- 响应时间监控 - 监控响应时间
- 安全事件监控 - 监控安全相关事件
日志分析工具
推荐使用日志分析工具:
- ELK Stack - Elasticsearch + Logstash + Kibana
- Grafana - 可视化监控面板
- Prometheus - 指标收集和监控
- GoAccess - 实时 Web 日志分析
最佳实践
日志管理的最佳实践:
- 合理配置 - 设置合适的日志级别
- 定期清理 - 定期清理旧日志文件
- 监控告警 - 配置关键指标告警
- 备份策略 - 备份重要日志文件
通过完善的日志系统,你可以更好地监控和管理 SSLcat 服务。