Ubuntu环境下Hadoop日志文件的查看位置及方法
Hadoop的日志文件默认存储在**$HADOOP_HOME/logs**目录下($HADOOP_HOME为Hadoop的安装根目录,如/usr/local/hadoop或~/hadoop-3.3.1)。该目录下包含各组件的日志文件,命名规则为hadoop-<用户名>-<组件名>-<主机名>.log(如hadoop-hadoop-namenode-ubuntu.log)。
Hadoop生态中不同组件的日志会分开存储,便于定位问题:
hadoop-*-namenode-*.log)、DataNode日志(hadoop-*-datanode-*.log)、SecondaryNameNode日志(若有配置);hadoop-*-resourcemanager-*.log)、NodeManager日志(hadoop-*-nodemanager-*.log);hadoop-*-jobhistoryserver-*.log,用于记录MapReduce作业历史)。tail -f命令跟踪日志文件的最新内容(如tail -f $HADOOP_HOME/logs/hadoop-hadoop-namenode-*.log),适用于排查实时问题;head -n命令查看日志开头部分(如head -n 20 $HADOOP_HOME/logs/hadoop-hadoop-datanode-*.log),快速了解日志初始状态;grep命令过滤日志中的错误或关键信息(如grep "ERROR" $HADOOP_HOME/logs/hadoop-hadoop-namenode-*.log),高效定位问题;cat命令输出整个日志文件(如cat $HADOOP_HOME/logs/hadoop-hadoop-nodemanager-*.log),适用于小文件查看。若需修改日志存储路径,可通过修改$HADOOP_HOME/etc/hadoop/hadoop-env.sh文件中的HADOOP_LOG_DIR参数实现。例如,将日志路径设置为/data/hadoop-logs,需添加或修改以下行:
export HADOOP_LOG_DIR=/data/hadoop-logs
修改后需执行source $HADOOP_HOME/etc/hadoop/hadoop-env.sh使配置生效,后续日志将输出到新路径。