如何为oozi java工作流启用/设置log4j?

时间:2016-11-03 15:32:10

标签: java log4j hdfs oozie

我正在运行Oozie Java工作流程(jar文件在HDFS中),我想在我的应用程序中添加日志记录功能。有谁知道怎么做?我应该把我的" log4j.properties"放在哪里?文件?如何让log4j将日志输出到HDFS中的某个位置?

1 个答案:

答案 0 :(得分:1)

查看this documentation,您可以尝试在oozie目录中添加oozie-log4j.properties(其中workflow.xml)。

以下是默认设置:

log4j.appender.oozie=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.oozie.RollingPolicy=org.apache.oozie.util.OozieRollingPolicy
log4j.appender.oozie.File=${oozie.log.dir}/oozie.log
log4j.appender.oozie.Append=true
log4j.appender.oozie.layout=org.apache.log4j.PatternLayout
log4j.appender.oozie.layout.ConversionPattern=%d{ISO8601} %5p %c{1}:%L - %m%n
log4j.appender.oozie.RollingPolicy.FileNamePattern=${log4j.appender.oozie.File}-%d{yyyy-MM-dd-HH}
log4j.appender.oozie.RollingPolicy.MaxHistory=720

它还概述了以下限制:

  

为了使Oozie日志记录100%正确工作,必须遵守以下限制(如下所述和oozie-log4j.properties文件中所述):

  • Oozie使用的追加者必须命名为“oozie”(即log4j.appender.oozie)

  • log4j.appender.oozie.RollingPolicy.FileNamePattern必须以"-%d{yyyy-MM-dd-HH}.gz""-%d{yyyy-MM-dd-HH}"结尾。如果以".gz"结尾,旧日志将在滚动时压缩

  • log4j.appender.oozie.RollingPolicy.FileNamePattern必须以log4j.appender.oozie.File

  • 的值开头