2012-09-19 8 views
7

私はjavaプログラムを持っており、/ var/log/messagesファイルをfedoraマシンにログインしたいと思います。私はlog4j SyslogAppenderを使用していますが、動作しません。SyslogAppenderが動作しません

私のlog4jプロパティファイルは/etc/rsyslog.conf

# Set root category priority to INFO and its only appender to CONSOLE. 
log4j.rootCategory=INFO, CONSOLE, SYSLOG 
#log4j.rootCategory=INFO, CONSOLE, LOGFILE 

# Set the enterprise logger priority to DEBUG 
log4j.logger.com.locaid=INFO, CONSOLE, LOGFILE, SYSLOG 

# CONSOLE is set to be a ConsoleAppender using a PatternLayout. 
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout 
log4j.appender.CONSOLE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n 

# LOGFILE is set to be a File appender using a PatternLayout. 
log4j.appender.LOGFILE=org.apache.log4j.FileAppender 
log4j.appender.LOGFILE.File=/home/dev/app.log 
log4j.appender.LOGFILE.Append=true 
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout 
log4j.appender.LOGFILE.layout.ConversionPattern=[%d{dd/MM/y HH:mm:ss}][%t][%1p] %c - %m%n 

log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender 
log4j.appender.SYSLOG.syslogHost=localhost 
log4j.appender.SYSLOG.layout=org.apache.log4j.PatternLayout 
log4j.appender.SYSLOG.layout.conversionPattern=%d{ISO8601} %-5p [%t] %c{2} %x - %m%n 
log4j.appender.SYSLOG.Facility=LOCAL1 
log4j.appender.SYSLOG.Threshold=debug 
log4j.appender.SYSLOG.FacilityPrinting=true 

が含まれている私は

local1.*  /var/log/app.log 

の/ etc /のsysconfig/rsyslogのrsyslogのサービスapp.logファイルを再起動するには

SYSLOGD_OPTIONS="-r -m 0 -c 4" 

を持っていますログは追加されません。 logger -p LOCAL1.info cmdが動作していて、app.logにログを追加していますが、デフォルトのUSER機能を使用しても動作しませんでした。助けが必要。

+0

私はあなたのlog4j.propertiesファイルにいくつかの行があると思います。ファイル全体を表示できますか?私はあなたがロガーと一緒にアペンダーをどのように使用するかを見なければならないと思う。 – maba

+0

完全なlog4jファイルが更新されました... :) –

+0

私はfacility.levelの異なる組み合わせを試しましたが、動作しません。 –

答えて

6

私はlog4jの端で何かを見ることはできませんが、私の(Ubuntuの上)/etc/default/rsyslog-r-m 0-c 4との組み合わせでは動作しませんことを示唆している

# Options for rsyslogd 
# -m 0 disables 'MARK' messages (deprecated, only used in compat mode < 3) 
# -r enables logging from remote machines (deprecated, only used in compat mode < 3) 
# -x disables DNS lookups on messages received with -r 
# -c compatibility mode 
# See rsyslogd(8) for more details 

語ります。代わりに、ここでのリモートアクセスを設定しようとしているのは、あなた/etc/rsyslogd.confを編集する必要がありますし、追加(またはコメント解除)

$ModLoad imudp 
$UDPServerRun 514 
+0

ありがとう....それは私のために働いた...私はロガーコマンドを使用してsysloggingを行っているが。 –

+4

'logger'コマンドは、rsyslogdとの通信にUDPソケット機構を使用せず、Unixソケット'/dev/log'を使用します。 –

2
#This Configuration File is used for Logger Module which is used for either using  Log4J or SysLog4J 
log4j.rootLogger = DEBUG,LOGFILE 

    #------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------ 
#[Log4j] 
#------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------ 

# Log4j implements Rolling File Appender Configurations 
log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender 
# The log4j layout 
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout 
# The Log4j configuration file location 
log4j.appender.LOGFILE.File= C:/Documents and Settings/bgh28706/Desktop/log_output.cfg 
# The Log4j conversion layout to apply for 
log4j.appender.LOGFILE.layout.ConversionPattern=%d{ISO8601} %t %p %c %M %m %n 
# The Log4j maximum file size to keep for before renaming to the backup file 
log4j.appender.LOGFILE.MaxFileSize=5KB 
# The maximum number of log4j files to be kept in the system 
log4j.appender.LOGFILE.MaxBackupIndex=2 
#Additivity set to False makes the output not to be produced in any other appender 
log4j.additivity.LOGFILE.file=false 


#------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------ 
#[Syslog] 
#------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------ 

# The syslog appender to be configured for the syslog configuration to affect 
log4j.appender.SYSLOGFILE=org.apache.log4j.net.SyslogAppender 
# The hostname to log the syslogger information 
log4j.appender.SYSLOGFILE.SyslogHost=localhost 
# The facility name in the logger where the log file shall be logged 
log4j.appender.SYSLOGFILE.facility=local5 
# The log filename layout of the syslogger appender 
log4j.appender.SYSLOGFILE.layout=org.apache.log4j.PatternLayout 
# The syslogger configuration pattern 
log4j.appender.SYSLOGFILE.layout.ConversionPattern=%d{ISO8601} %t %p %c %M %m %n 
#Additivity set to False makes the output not to be produced in any other appender 
log4j.additivity.SYSLOGFILE.file=false 

これが私のために正常に動作しているかどうかを確認してください。 よろしく アナンドBhatさん

1

ここでの問題は、

SYSLOGD_OPTIONS="-r -m 0 -c 4" 

SYSLOGD_OPTIONS="-r -m 0" 

これらのオプションはないんであるべきです一緒に仕事をする

関連する問題