如何启用hdfs和mapred审计日志?

时间:2015-05-14 07:16:43

标签: hadoop logging log4j kerberos

我是windows中的hadoop-2.6.0用户。我想启用hdfs和mapred日志。我可以通过在 hadoop-env.cmd 中设置以下属性来启用hdfs审核日志,但无法为mapred启用审核日志。

set HDFS_AUDIT_LOGGER=INFO,RFAAUDIT

如果我在hadoop-env.cmd中设置了上述变量,那么hdfs-audit.log文件存储在%HADOOP_LOG_DIR%中。

我想启用mapred审核日志记录。在%HADOOP_HOME%\ etc \ hadoop中可用的log4j.properties中,我可以看到贴在下面的mapred的日志属性

映射审核日志

mapred.audit.logger=INFO,NullAppender
mapred.audit.log.maxfilesize=256MB
mapred.audit.log.maxbackupindex=20
log4j.logger.org.apache.hadoop.mapred.AuditLogger=${mapred.audit.logger}
log4j.additivity.org.apache.hadoop.mapred.AuditLogger=false
log4j.appender.MRAUDIT=org.apache.log4j.RollingFileAppender
log4j.appender.MRAUDIT.File=${hadoop.log.dir}/mapred-audit.log
log4j.appender.MRAUDIT.layout=org.apache.log4j.PatternLayout
log4j.appender.MRAUDIT.layout.ConversionPattern=%d{ISO8601} %p %c{2}: %m%n
log4j.appender.MRAUDIT.MaxFileSize=${mapred.audit.log.maxfilesize}
log4j.appender.MRAUDIT.MaxBackupIndex=${mapred.audit.log.maxbackupindex}

但无法启用mapred审核日志记录。当我更改以下属性时,存储在%HADOOP_LOG_DIR%中的空文件 mapred-audit.log

mapred.audit.logger=INFO,MRAUDIT
-
-
-
log4j.additivity.org.apache.hadoop.mapred.AuditLogger=true
-
-

如何启用mapred审核日志?

非常感谢帮助。

1 个答案:

答案 0 :(得分:0)

我找到了答案here

因为我正在使用YARN框架,所以我在log4.properties文件中为mapred.audit.logger添加了以下行

log4j.logger.org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger=${mapred.audit.logger}