如何在Jenkins控制台日志中添加自定义应用标识行?
解决方案:在Jenkins控制台日志添加高亮的应用标识行
你当前用Log Parser插件的思路走偏了——这个插件是用来识别并高亮已有日志内容的,不是用来主动输出日志行的。要实现需求,得分成两步:先主动输出标识行,再用插件高亮它。
1. 先输出应用标识行到控制台
在Jenkinsfile的最开头(比如pipeline块的第一行之前,或者stages阶段的最前面)添加echo命令,直接把标识行打出来,确保它出现在日志开头:
// 放在pipeline块外最顶部,确保日志第一行就显示 echo "This is for Application: Datamax-Crawler" pipeline { agent any stages { // 你的业务构建阶段... } post { // 后续的logParser和邮件配置... } }
这一步完成后,控制台日志里就会出现目标行,已经满足sed/awk提取的需求了。
2. 配置Log Parser规则实现绿色高亮
全局配置的「Rules1」规则文件不能直接写要显示的文本,得写解析匹配规则,正确格式如下:
info /This is for Application: .*/
info对应Log Parser的绿色高亮样式(warning是黄色,error是红色)/.../是正则表达式,.*/可以适配不同的应用名称,方便后续复用规则
3. 修正Jenkinsfile里的logParser配置
因为用的是全局配置的规则,所以要调整参数,确保插件正确调用全局规则:
post { always { logParser ([ projectRulePath: '', parsingRulesPath: 'Rules1', // 指定全局配置的规则名 showGraphs: true, unstableOnWarning: true, useProjectRule: false // 禁用项目级规则,使用全局规则 ]) emailext ( to: 'xxx@xxx.com', attachLog: 'true', replyTo: '$DEFAULT_REPLYTO', subject: '$DEFAULT_SUBJECT', body: '$DEFAULT_CONTENT', mimeType: 'text/html' ); } }
验证操作
- 保存Jenkins全局配置里的规则文件
- 更新Jenkinsfile并触发新构建
- 查看控制台日志,开头的
This is for Application: Datamax-Crawler会以绿色高亮显示
内容的提问来源于stack exchange,提问作者shailysharma
相关产品推荐
相关产品推荐

