源代码:
在Map中通过调用System.err.println将信息打印到日志中,而不是标准输出窗口。
在默认情况下Job的状态为hdfs://localhost:9000/user/root/input/res/1903.gz:0+73075,状态表明:输入文件的URL,以及本Job的输入数据在文件中的位置,如本例中文件1903.gz的0到73075字节有本Job处理。如果出现错误,可以通过reporter.setStatus来改变的Job的退出状态。
在运行Hadoop程序后,会打印如下类似信息: 13/05/07 22:37:11 INFO util.NativeCodeLoader: Loaded the native-hadoop library 13/05/07 22:37:11 WARN snappy.LoadSnappy: Snappy native library not loaded 13/05/07 22:37:11 INFO mapred.FileInputFormat: Total input paths to process : 12 13/05/07 22:37:11 INFO mapred.JobClient: Running job: job_201305071200_0028 其中job_201305071200_0028为Job的ID号在http://jobtracker-host:50030/页面找到该Job的一栏,如
打开job_201305071200_0028连接,如下所示:
打开map链接,如下图所示: 可以看出task_201305071200_0028_m_000011的状态有变化,提示查看log文件。
在http://jobtracker-host:50030/页面的最下面的Local Logs段中有Log directory一项,进入该项。进入最下面的userlogs/ ,找到与Job ID(job_201305071200_0028)对应的一行。找到出问题的task。并进入stderr 目录,打开就可以看见打印信息。