我試圖改變MR作業的日誌級別的日誌級別,我用下面的命令:如何更改MR工作
hadoop jar appMR.jar MainMR -Dmapreduce.map.log.level=DEBUG <args...>
但-Dmapreduce.map.log.level=DEBUG
去的第一個參數來工作。
有沒有辦法做到這一點,只爲一個特定的MR作業,而不需要改變log4j屬性文件中的級別?
我試圖改變MR作業的日誌級別的日誌級別,我用下面的命令:如何更改MR工作
hadoop jar appMR.jar MainMR -Dmapreduce.map.log.level=DEBUG <args...>
但-Dmapreduce.map.log.level=DEBUG
去的第一個參數來工作。
有沒有辦法做到這一點,只爲一個特定的MR作業,而不需要改變log4j屬性文件中的級別?
如果你的主類實現 工具界面,並通過ToolRunner工具被調用,您可以只使用-Dname =價值形態。檢查工具 javadoc的例子,它周圍的實施模型: http://archive.cloudera.com/cdh5/cdh/5/hadoop/api/org/apache/hadoop/util/Tool.html (苛刻十)
您可以使用:
$ export HADOOP_ROOT_LOGGER="DEBUG,console"
然後運行hadoop jar
命令。
這改變了Hadoop的即日誌級別它記錄有關NameNode和DataNode會之間的通信信息。我想改變MapReduce(mapper/reducer)的日誌級別。 –
你究竟做了什麼? Hadoop項目包括HDFS,MapReduce和YARN,因此記錄器適用於所有組件。您可以通過運行示例jar並使用HADOOP_ROOT_LOGGER設置進行驗證。 – tk421