在Linux系统下,Hadoop进行日志分析可以通过以下几种方法:
启用日志聚合:确保Hadoop集群所有节点都启用了日志聚合。这通常在yarn-site.xml
配置文件中配置,例如:
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>172800</value>
</property>
<property>
<name>yarn.nodemanager.remote-app-log-dir</name>
<value>/tmp/logs/</value>
</property>
<property>
<name>yarn.nodemanager.remote-app-log-dir-suffix</name>
<value>logs/</value>
</property>
<property>
<name>yarn.log.server.url</name>
<value>http://hadoop-node0:19888/jobhistory/logs/</value>
</property>
通过Web UI访问日志:日志聚合后,可以通过Hadoop的ResourceManager Web UI或Job History Server Web UI查看日志。
http://resourcemanager-hostname:8088/cluster/apps/FINISHED/
。http://jobhistory-server-hostname:19888/jobhistory/
。使用hdfs dfs
命令:可以从HDFS读取日志文件,例如:
hdfs dfs -cat /path/to/logs/*
使用文本编辑器查看日志:可以使用任何文本编辑器(如nano
、vim
)打开并查看日志文件,例如:
sudo nano /path/to/logs/application-application-id-container-container-id.log
White Elephant:一个Hadoop日志收集器和展示器,提供用户角度的Hadoop集群可视化。支持Hadoop 1.0系列的jobhistory解析。
Hadoop Job History Server:用于查看已经运行完成的MapReduce作业记录,包括作业提交时间、作业启动时间、作业完成时间等信息。
通过上述方法,可以有效地在Linux系统下使用Hadoop进行日志分析。