1. export HADOOP_ROOT_LOGGER=DEBUG,console
2. 使用Hadoop Shell命令daemonlog
hadoop daemonlog -getlevel host:port [-protocol (http|https)]
hadoop daemonlog -setlevel host:port [-protocol (http|https)]
[root@hadoop2 hadoop-3.2.0]# bin/hadoop daemonlog -getlevel 192.168.142.111:9870 datanode
Connecting to http://192.168.142.111:9870/logLevel?log=datanode
Submitted Class Name: datanode
Log Class: org.apache.commons.logging.impl.Log4JLogger
Effective Level: INFO
--192.168.142.111:9870,这里的端口是http端口
3.通过Web界面
用户可以通过Web界面查看和修改某个类的日志级别,比如,可通过以下URL修改NodeManager类的日志级别:
http://${nodemanager-host}:8042/logLevel
4. 修改log4j.properties文件
以上两种方式只能暂时修改日志级别,当Hadoop重启后会被重置,如果要永久性改变日志级别,可在目标节点配置目录下的log4j.properties文件中添加以下配置选项:
log4j.logger.org.apache.hadoop.yarn.server.nodemanager.NodeManager=DEBUG