在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進行日志分析。