LoginSignup
37

More than 5 years have passed since last update.

Jenkinsのコンソール出力が読みづらくなっている人向けのメモ

Last updated at Posted at 2014-12-14

Log Parser Pluginを使ってParseするときに、文字化けや色の制御文字が邪魔になるので、その対策をまとめています。

コンソール出力が文字化けする

  • Javaのバージョンにもよりますが、JVM起動オプションを変更することで解決します。
  • Jenkinsの「システムプロパティ」で以下のエンコードを確認してください。
    • file.encoding
    • sun.jnu.encoding

CentOSの場合

  • /etc/sysconfig/jenkinsを編集
# arguments to pass to java
JAVA_ARGS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
  • 編集後、Jenkinsを再起動
$ sudo service jenkins restart

Ubuntuの場合

  • /etc/default/jenkinsを編集
# arguments to pass to java
JAVA_ARGS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
  • 編集後、Jenkinsを再起動
$ sudo service jenkins restart

Mac(Homebrew)の場合

  • ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plistを編集
    <key>ProgramArguments</key>
    <array>
      <string>/usr/bin/java</string>
    <string>-Dfile.encoding=UTF-8</string>
    <string>-Dsun.jnu.encoding=UTF-8</string>
      <string>-jar</string>
      <string>/usr/local/opt/jenkins/libexec/jenkins.war</string>
    </array>
  • 編集後、Jenkinsを再起動
$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist

Mac(OSX Installer)の場合

  • /Library/LaunchDaemons/org.jenkins-ci.plistのProgramArgumentsの起動方法を確認
  • java指定起動であればHomebrewの場合と同様
  • jenkins-runner.sh指定起動であれば/Library/Application Support/Jenkins/jenkins-runner.shにjavaArgsを追加
javaArgs=""
javaArgs="$javaArgs -Dfile.encoding=UTF-8"
javaArgs="$javaArgs -Dsun.jnu.encoding=UTF-8"
heapSize=`$defaults heapSize` && javaArgs="$javaArgs -Xmx${heapSize}"
permGen=`$defaults permGen` && javaArgs="$javaArgs -XX:MaxPermSize=${permGen}"
  • 編集後、Jenkins再起動
$ sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
$ sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

Windowsの場合

  • システム環境変数をセットする。
JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
  • 実行ジョブごとに「Windowsバッチコマンドの実行」先頭に以下を追加
chcp 65001

スレーブ起動の場合(OS共通)

  • 変更したいスレーブの「設定」を開く
    • 「高度な設定」「起動方法」
    • JVMオプション-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8を追加(スペース区切り)
  • 追加後Jenkins スレーブを再接続

コンソール出力でターミナルの色指定が制御文字で表示される

  • AnsiColor Pluginを使うと解決します。
  • プラグインインストール後、Jobごとの設定で「ビルド環境」で「Color ANSI Console Output」を有効にしてください。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37