http://your-jenkins-server-url/),依次点击左侧菜单Manage Jenkins→System Log,可选择日志级别(如ALL、INFO、ERROR)过滤日志,适合查看Jenkins主程序运行的全局日志。Jenkins在Debian上的系统日志默认存储于/var/log/jenkins/jenkins.log(若通过systemd管理,可能位于/var/log/journal/jenkins.log),常用命令如下:
sudo cat /var/log/jenkins/jenkins.log(需root权限);sudo tail -f /var/log/jenkins/jenkins.log(实时输出新增日志,适合监控运行状态);sudo grep "ERROR" /var/log/jenkins/jenkins.log(筛选包含“ERROR”的日志行,快速定位问题);sudo less /var/log/jenkins/jenkins.log(支持上下翻页、搜索,退出按q键);awk(如提取错误行:sudo awk '/ERROR/ {print $0}' /var/log/jenkins/jenkins.log)、sed(如打印含“WARN”的行:sudo sed -n '/WARN/p' /var/log/jenkins/jenkins.log)等工具进行高级处理。java -jar jenkins-cli.jar -s http://your-jenkins-server-url/ console <job-name> <build-number>(替换为实际任务名和构建编号),直接获取指定构建的控制台输出。为避免日志文件无限增长占用磁盘空间,可通过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) # 通知Jenkins重新打开日志文件
fi
endscript
}
保存后,logrotate会按配置自动管理Jenkins日志。
安装Log Parser Plugin(路径:Manage Jenkins→Manage Plugins→Available),通过正则表达式定义日志解析规则(如将“ERROR”“WARN”标记为不同级别),可将杂乱的日志转换为结构化视图,更易识别问题;还可配合Build Failure Analyzer Plugin,在构建失败时自动分析日志并高亮显示关键错误信息。