Debian Jenkins监控与日志管理指南
jenkins_builds_duration_seconds、jenkins_node_online_status),配置Prometheus抓取指标(编辑prometheus.yml添加Jenkins job),再通过Grafana导入Jenkins面板模板(如“Jenkins Overview”)实现数据可视化。适合需要长期存储、告警及复杂分析的场景。/var/log/jenkins/jenkins.log)和构建日志(Web界面直接查看或通过curl http://jenkins_host/job/job_name/build_number/log下载),识别错误信息(如构建失败、插件加载失败)。http://jenkins_host/computer/node_label/api/json?pretty=true)、流水线进度等信息,编写脚本定期检查,实现自动化监控。/var/log/jenkins/jenkins.log,可通过tail -f实时查看最新内容。curl下载保存。$JENKINS_HOME/logs/目录(如plugin-git.log),用于排查插件相关问题。使用logrotate工具配置日志轮转,编辑/etc/logrotate.d/jenkins文件,添加以下内容:
/var/log/jenkins/*.log {
daily # 每天轮转一次
rotate 7 # 保留最近7天日志
compress # 压缩旧日志(如.gz格式)
missingok # 若日志文件不存在也不报错
notifempty # 若日志为空则不轮转
create 0644 root adm # 创建新日志文件并设置权限
sharedscripts # 所有日志轮转完成后执行postrotate
postrotate
if [ -f /var/run/jenkins/jenkins.pid ]; then
kill -HUP $(cat /var/run/jenkins/jenkins.pid) # 重新加载日志配置
fi
endscript
}
此配置可有效控制日志文件大小,避免占用过多磁盘空间。
通过Cron作业定期删除过期日志,例如每天午夜删除修改时间超过7天的.log文件:
0 0 * * * find /var/log/jenkins/ -type f -name "*.log" -mtime +7 -exec rm -f {} \;
可将此命令添加到Cron任务中,实现自动化清理。
INFO,调试用DEBUG),减少无关日志输出。