2012-11-05 16 views
6

syslogにログメッセージを書き込めません。どんな助けも素晴らしいだろう。ここで は私の単純なlog4jのプログラムがlog4jを使用してsyslogにログデータを書き込む

import org.apache.log4j.Logger; 
import java.io.*; 
import java.sql.SQLException; 
import java.util.*; 

public class log4jExample 
{ 
    /* Get actual class name to be printed on */ 
    static Logger log = Logger.getLogger(log4jExample.class.getName()); 

    public static void main(String[] args) throws IOException,SQLException 
    { 

    log.error("Hello this is an error message"); 
    log.info("Hello this is an info message"); 
    log.fatal("Fatal error message"); 
    } 
} 

である私のsyslogプロパティは、それは私のために働いたファイル

$ModLoad imudp 
$UDPServerRun 514 

をrsyslog.confするには、以下の行を追加します。

# configure the root logger 
log4j.rootLogger=INFO, SYSLOG 


# configure Syslog facility LOCAL1 appender 
log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender 
log4j.appender.SYSLOG.threshold=WARN 
log4j.appender.SYSLOG.syslogHost=localhost 
log4j.appender.SYSLOG.facility=LOCAL4 
log4j.appender.SYSLOG.layout=org.apache.log4j.PatternLayout 
log4j.appender.SYSLOG.layout.conversionPattern=[%p] %c:%L - %m%n 

答えて

12

を提出します。

変更後にrsyslogを再起動する必要があります。

+1

これらの変更を行った後で、rsyslogdも再起動する必要があります。 – Dave

+0

はい、忘れました。ありがとう –

+0

@SandeepRaoパーフェクト!私は約1時間を費やして、なぜLOG4JからMySQLデータベースに何も表示されないようにしました:-)ありがとう。 – setevoy

関連する問題