2012-02-09 89 views
8

我使用TeamCity进行持续集成。部署机器和构建的解决方案签出。部署在Windows Server 2008 R2下运行的计算机 - 俄语。有俄语PowerShell安装等。在TeamCity生成日志,所有俄罗斯符号是错误的编码。TeamCity构建日志

如何更改生成日志中的编码?

回答

11
  1. 改变编码log4j的配置生成日志中conf/teamcity-agent-log4j.xml

    <appender name="ROLL.BUILD" class="jetbrains.buildServer.util.TCRollingFileAppender"> 
        <param name="file" value="${teamcity_logs}teamcity-build.log"/> 
        <param name="Encoding" value="UTF-8"/> 
        ... 
    </appender> 
    
  2. 添加的file.encoding = UTF-8参数launcher/conf/wrapper.conf使用代理上开始 你应该增加它像

    wrapper.app.parameter.6=-Dfile.encoding=UTF-8 
    
  3. add -Dfile.encoding=UTF-8 in JAVA_OPTS

该步骤可以帮助我,但现在我有一个错误 - 如果你看日志中尾巴新的俄罗斯符号替换为“?”。刷新页面后,他们显示正确。

+0

附加阅读:http://confluence.jetbrains.com/display/TCD7/Configuring+Build+Agent+Startup+Properties – 2013-05-30 08:05:11

1

对于我来说,在TeamCity的7和8的TeamCity,帮助编辑文件的TeamCity代理-的log4j.xml

<?xml version='1.0' encoding='UTF-8' ?> 

,之后重新启动的TeamCity。

但是只有刷新日志页面后编码才是正确的。

4

对于TeamCity的9下一个曾经帮助:

sudo dpkg-reconfigure locales 
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 

(这样做是你的代理商)

之后 - 重新启动代理:

./BuildAgent/bin/agent.sh stop 
11

对于我来说,在Windows 7,TeamCity 9.0.3帮助将“teamcity.runner.commandline.stdstreams.encoding = 866”行添加到buildAgent.properties文件中。 我已经通过在命令提示符下输入“chcp”来获得编码值。

+0

唯一的建议帮助了我,谢谢! – GaGar1n 2015-05-13 06:25:33

+0

这对俄罗斯编码很有帮助。谢谢! – Selmaril 2017-04-18 12:00:35