在Hive客戶端執行HQL查詢報錯,該查詢走的是MapReduce,此時需要查看MapReduce的日志信息。
那么MR的日志在哪里呢?
首先啟動historyserver,認情況下HistoryServer沒有啟動
進入到hadoop的bin目錄下,執行以下命令,開啟之后,jps一下確認有JobHistoryServer
[root@master sbin]# ./mr-jobhistory-daemon.sh start historyserver
然后需要確認 yarn-site.xml的一個配置信息,啟用日志聚集功能,默認為false,不打開則查看詳細日志會報錯
<property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property>
登陸Yarn的WebUI監控界面:hostname:8088,在這個界面可以看到所有執行的applicaitons。

點擊Histroy的鏈接,進入該應用的歷史信息,點擊對應的數字,查看出錯的日志信息。

經過分析發現出錯的原因是數組的索引超出范圍,導出出錯。

另外MapReduce的log日志存放位置是在HDFS上,每個應用都有對應的文件夾。

