- PR -

Log4JでSyslogdにログ出力した場合の文字化け

1
投稿者投稿内容
きよ
常連さん
会議室デビュー日: 2002/03/27
投稿数: 21
投稿日時: 2002-08-05 12:31
いつもお世話になっております。

Log4Jを用いてsyslogdにログ出力しようとしています。
Log4Jの設定ファイルをコンフィギュレーションすることで
指定したホストのSyslogに出力することができました。
ただ、日本語文字列をログ出力した場合、
文字化けしてSyslogのメッセージを読むことができませんでした。
この回避策はあるのでしょうか。
環境は次の通りです。
■Log4Jでログ出力するマシン
Windows2000, JDK1.3, Log4J1.1.1

■Syslogdが動いているマシン
Solaris8

よろしくお願いします。
しょむ
ぬし
会議室デビュー日: 2001/09/06
投稿数: 430
投稿日時: 2002-08-05 15:28
log4j 1.2.6 のソースを見る限り、WriterAppender#createWriter の javadoc に
「encoding プロパティーを使う」と書いてあるように思えますが。
あと、WriterAppender#setEncoding() もありそう?
ぼんさら
会議室デビュー日: 2004/08/11
投稿数: 1
投稿日時: 2004-08-11 18:01
>WriterAppender#createWriter の javadoc に
>「encoding プロパティーを使う」と書いてあるように思えますが。
>あと、WriterAppender#setEncoding() もありそう?

SyslogAppenderは、WriterAppenderを継承しないから、ムリじゃないんですか?
Log4j 1.2.8 のjavadocには、SyslogWriter#setEncoding() は、載ってませんでした。

諦めるか、自分で実装するかなんですかね?

http://www.atmarkit.co.jp/fjava/rensai2/jakarta09/jakarta09.html

にSMTPAppender の場合のjarはありますが・・・。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-08-11 18:19
ログを読むときに端末のロケールを変えればよいのでは?
ぬべたそ
ベテラン
会議室デビュー日: 2003/12/18
投稿数: 72
投稿日時: 2004-08-12 10:29
きよさん、こんにちわ。
私はlog4j1.2.8でsyslogdを利用していますが、同じように文字化けしていました。
ぼんさらさんが書かれたページを参考に、log4jのソースに手を加え、
プロパティファイルでエンコードを指定できるようにして使っています。


[ メッセージ編集済み 編集者: taiping 編集日時 2004-08-12 11:13 ]
1

スキルアップ/キャリアアップ(JOB@IT)