【DEVOPS】Jenkins使用问题 - 控制台输出乱码

0. 目录

    • [1. 问题描述](#1. 问题描述)
    • [2. 解决方案](#2. 解决方案)
    • [3. 最终效果](#3. 最终效果)
    • [4. 总结](#4. 总结)

1. 问题描述

部门内部对于Jenkins的使用采取的是Master + Slave Work Node的方式,即作为Master节点的Jenkins只负责任务调度,具体的操作由对应的Slave Work Node去执行。

最近团队成员反馈一个问题:一个Linux系统的Slave Work Node的编译日志输出中,中文部分均为乱码(如下图),这造成问题排查效率不高。

针对以上问题,我们尝试了:

  1. 在Jenkins的Pipeline脚本中设置LC_ALL = 'en_US.UTF-8'
  2. 确认作为Master节点的Jenkins服务端的启动参数中存在-Dfile.encoding=UTF-8
  3. 确认目标机器Slave Work Node的系统环境变量echo $LANG / locale
  4. 确认作为Master节点的Jenkins服务端的系统环境变量echo $LANG / locale
  5. 在Jenkins的Script Console中设置 System.setProperty('hudson.console.ConsoleCharset', 'UTF-8')

无一例外,全部失败了。

2. 解决方案

这里先说解决方案。毕竟能够找到这里的,肯定是上面提到的常规方式都尝试失败了。

其实事后回顾,此时此刻就只剩下最后一种可能:作为agent的java程序remoting.jar自身的编码不对劲

  1. 确定问题。

  2. 调整。

  3. 验证配置生效。
    重启agent 之后,应该如下图:

修改前后,Slave Work Node上agent命令参数行对比:

3. 最终效果

4. 总结

细节是魔鬼。

神在细节之中。

相关推荐
悠悠121385 小时前
AWS DevOps Agent 体验一周后,我决定把 oncall 手机调成静音了
云计算·aws·devops
又是进步的一天8 小时前
一台虚拟机学习CI流程
学习·ci/cd·云原生·容器·kubernetes·devops
未若君雅裁1 天前
日志采集与ELK:从本地日志到集中检索分析
运维·elk·jenkins
Dontla1 天前
CI/CD前世今生(持续集成、持续交付、持续部署、Jenkins、Github Actions)
ci/cd·github·jenkins
Java 码思客1 天前
【ElasticSearch从入门到架构师】第7章-聚合查询——实现数据统计与分析
大数据·elasticsearch·jenkins
逻极2 天前
Jenkins 从入门到精通:CI/CD自动化流水线实战
ci/cd·自动化·jenkins·devops
炸炸鱼.2 天前
Git+Jenkins实战(一):从零搭建自动化发布与回滚系统(附完整代码)
git·jenkins
love530love2 天前
2026年终极防坑指南:基于 EPGF 架构彻底“本地化” UV 环境与工具
人工智能·windows·python·架构·devops·uv·epgf
宝桥南山2 天前
GitHub Copilot - 尝试使用一下Azure Devops MCP server
microsoft·微软·github·aigc·copilot·devops
咖啡星人k2 天前
MonkeyCode DevOps 实践:CI/CD流水线与自动化部署全流程
ci/cd·自动化·devops·monkeycode