【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. 总结

细节是魔鬼。

神在细节之中。

相关推荐
淘矿人11 小时前
Claude辅助DevOps实践
java·大数据·运维·人工智能·算法·bug·devops
cgsthtm20 小时前
openEuler release 24.03 (LTS-SP2) 安装 jenkins
jenkins·openeuler·firewall-cmd·jenkins.reps
IT界的老黄牛1 天前
Flink 重启变双开:一次部署引发的两个 CDC 任务并发消费
大数据·flink·jenkins
2401_853087881 天前
历史知识库平滑迁移:全量数据迁移、格式兼容与低切换成本方案
敏捷开发·devops
效能革命笔记2 天前
DevOps工具链选型推荐:聚焦本土适配与安全可控
人工智能·安全·devops
南宫乘风2 天前
用 Skills 驱动 AI 开发:Matt Pocock 工作流在 DevOps 场景里的落地实践
devops·skills
love530love3 天前
ComfyUI:为什么说它是 AIGC 应用层面的集大成者?
人工智能·pytorch·windows·aigc·devops·comfyui·extensions
liyunlong-java3 天前
Elasticsearch 8.5.3 + IK 分词器 + Kibana 8.5.3 一键安装
大数据·elasticsearch·jenkins
小程故事多_803 天前
AI重构DevOps,智能增强而非替代,人始终是最终决策者
人工智能·重构·devops
云达闲人3 天前
搭建DevOps企业级仿真实验环境:012容器运行时 containerd 详解
运维·kubernetes·containerd·devops·proxmox ve·容器运行时·容器部署