在apachehadoop3.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有什么作用呢?
1条答案
按热度按时间zynd9foi1#
yarn.log.dir
是一个java属性,基于-D
旗帜在
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"