tla*_*huk 3 logging hadoop hadoop-yarn
在Apache Hadoop 3.0.0的yarn-default.xml中,它将yarn.nodemanager.log-dirs的默认值显示为$ {yarn.log.dir}/userlogs.
yarn.log.dir在哪里定义?它有默认值吗?
我没有在任何默认配置(core-default.xml,hdfs-default.xml,mapred-default.xml,yarn-default.xml)中找到它.
我没有在任何环境脚本中找到它(hadoop-env.sh,httpfs-env.sh,kms-env.sh,mapred-env.sh,yarn-env.sh.
同样让我感到困惑的是,当我grep"yarn.nodemanager.log-dirs"的代码时,它出现的唯一地方是yarn-default.xml和markdown文件,而不是任何地方的任何java代码.那么设置yarn.nodemanager.log-dirs怎么做呢?
yarn.log.dir是一个基于-D标志的Java属性
在yarn-env.sh,你应该看到YARN_LOG_DIR
# default log directory and file
if [ "$YARN_LOG_DIR" = "" ]; then
YARN_LOG_DIR="$HADOOP_YARN_HOME/logs"
...
fi
YARN_OPTS="$YARN_OPTS -Dyarn.log.dir=$YARN_LOG_DIR"
Run Code Online (Sandbox Code Playgroud)