2016-04-19 18 views
1

Beginnen Sie einfach Apache Flume zu lernen. Ich folge den Anweisungen auf Flume offiziellen Erste Schritte Webseite:apache rune log Verzeichnis

https://cwiki.apache.org/confluence/display/FLUME/Getting+Started

Fast alles ist in Ordnung, nach den Anweisungen auf dem obigen Link folgen. Aber ich konnte danach keine Log-Datei finden. Ich nehme an, die Protokolldatei befindet sich unter {flume.directory}/logs. Irgendeine Idee, Gerinne Log-Dateien zu finden?

kommt mein log4j.properties:

flume.root.logger=INFO,LOGFILE 
flume.log.dir=./logs 
flume.log.file=flume.log 

log4j.logger.org.apache.flume.lifecycle = INFO 
log4j.logger.org.jboss = WARN 
log4j.logger.org.mortbay = INFO 
log4j.logger.org.apache.avro.ipc.NettyTransceiver = WARN 
log4j.logger.org.apache.hadoop = INFO 
log4j.logger.org.apache.hadoop.hive = ERROR 

# Define the root logger to the system property "flume.root.logger". 
log4j.rootLogger=${flume.root.logger} 


# Stock log4j rolling file appender 
# Default log rotation configuration 
log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender 
log4j.appender.LOGFILE.MaxFileSize=100MB 
log4j.appender.LOGFILE.MaxBackupIndex=10 
log4j.appender.LOGFILE.File=${flume.log.dir}/${flume.log.file} 
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout 
log4j.appender.LOGFILE.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss,SSS} %-5p [%t] (%C.%M:%L) %x - %m%n 


# Warning: If you enable the following appender it will fill up your disk if you don't have a cleanup job! 
# This uses the updated rolling file appender from log4j-extras that supports a reliable time-based rolling policy. 
# See http://logging.apache.org/log4j/companions/extras/apidocs/org/apache/log4j/rolling/TimeBasedRollingPolicy.html 
# Add "DAILY" to flume.root.logger above if you want to use this 
log4j.appender.DAILY=org.apache.log4j.rolling.RollingFileAppender 
log4j.appender.DAILY.rollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy 
log4j.appender.DAILY.rollingPolicy.ActiveFileName=${flume.log.dir}/${flume.log.file} 
log4j.appender.DAILY.rollingPolicy.FileNamePattern=${flume.log.dir}/${flume.log.file}.%d{yyyy-MM-dd} 
log4j.appender.DAILY.layout=org.apache.log4j.PatternLayout 
log4j.appender.DAILY.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss,SSS} %-5p [%t] (%C.%M:%L) %x - %m%n 


# console 
# Add "console" to flume.root.logger above if you want to use this 
log4j.appender.console=org.apache.log4j.ConsoleAppender 
log4j.appender.console.target=System.err 
log4j.appender.console.layout=org.apache.log4j.PatternLayout 
log4j.appender.console.layout.ConversionPattern=%d (%t) [%p - %l] %m%n 

Antwort

0

Ursache Ihrer Konfiguration einen relativen Pfad verwenden:

flume.log.dir=./logs 
log4j.appender.LOGFILE.File=${flume.log.dir}/${flume.log.file} 

Flume Ihr aktuelles Verzeichnis zu protokollieren.
(das Verzeichnis, in dem Sie sind, wenn Sie Gerinne starten)

Sie können einen absoluten Pfad für flume.log.dir verwenden, wenn Sie Gerinne erzwingen wollen in diesem Pfad zu protokollieren, ganz gleich, wo Sie es starten.

0

Basierend auf Ihrer log4j.properties, wäre es in dem gleichen Verzeichnis, in dem Sie Ihre flume-agent starten, das ist, was ./ tun würde.

Also, wenn Sie von /home Verzeichnis ausgeführt, wäre es

/home/logs/flume.log

auch sein, Sie Linux-Befehle jederzeit nutzen können, um das herauszufinden,

find/-name flume.log ##search in whole disk

find . -name flume.log ##search in current directory