Jenkins的Web界面提供了最直接的日志访问方式,涵盖系统级和构建级日志:
命令行适合快速检索、实时监控或批量分析日志,常用命令如下:
/var/log/jenkins/jenkins.log
,可通过以下命令操作:
sudo cat /var/log/jenkins/jenkins.log
:直接查看完整日志内容;sudo tail -f /var/log/jenkins/jenkins.log
:实时跟踪日志最新内容(适合监控实时运行状态);sudo grep "关键字" /var/log/jenkins/jenkins.log
:搜索特定关键字(如“ERROR”“Timeout”),快速定位问题;sudo less /var/log/jenkins/jenkins.log
或sudo more /var/log/jenkins/jenkins.log
:分页查看日志(避免内容过多无法滚动)。jenkins-cli.jar
):java -jar jenkins-cli.jar -s http://your-jenkins-url/ -auth username:password console BuildNumber
(将BuildNumber
替换为实际构建编号)。Jenkins CLI(命令行接口)适合自动化脚本或远程管理,操作示例如下:
http://your-jenkins-url/jnlpJars/jenkins-cli.jar
,保存到本地;java -jar jenkins-cli.jar -s http://your-jenkins-url/ -auth username:password help
(验证连接是否成功);java -jar jenkins-cli.jar -s http://your-jenkins-url/ -auth username:password console BuildNumber
(替换为实际构建编号)。logrotate
工具防止日志文件无限增长,示例配置(保存到/etc/logrotate.d/jenkins
):/var/log/jenkins/*.log {
daily
rotate 7
compress
missingok
notifempty
create 0644 root adm
sharedscripts
postrotate
if [ -f /var/run/jenkins/jenkins.pid ]; then
kill -HUP $(cat /var/run/jenkins/jenkins.pid)
fi
endscript
}
该配置表示每天轮转一次日志,保留最近7天的压缩日志。0 * * * * find /var/log/jenkins/ -type f -name "*.log" -mtime 7 -exec rm -f {} \;
(每天午夜执行)。