Hadoop日志存放路径详解

来源:互联网 发布:北科大东凌经管知乎 编辑:程序博客网 时间:2024/05/08 08:11

  Hadoop的日志有很多种,很多初学者往往遇到错而不知道怎么办,其实这时候就应该去看看日志里面的输出,这样往往可以定位到错误。Hadoop的日志大致可以分为两类:(1)Hadoop系统服务输出的日志;(2)Mapreduce程序输出来的日志。这两类的日志存放的路径是不一样的。本文基于Hadoop2.x版本进行说明的,其中有些地方在Hadoop1.x中是没有的,请周知。

一、Hadoop系统服务输出的日志

  诸如NameNode、DataNode、ResourceManage(下称RM)等系统自带的服务输出来的日志默认是存放在${HADOOP_HOME}/logs目录下。比如:
  
RM的输出日志为yarn-${USER}-resourcemanager-${hostname}.log,其中${USER}是指启动RM进程的用户,${hostname}是RM进程所在机器的hostname;当日志到达一定的大小(可以在${HADOOP_HOME}/etc/hadoop/log4j.properties文件中配置)将会被切割出一个新的文件,切割出来的日志文件名类似yarn-\${USER}-resourcemanager-${hostname}.log.数字的,后面的数字越大,代表日志越旧。在默认情况下,只保存前20个日志文件,比如下面:
这里写图片描述

上面这些都是可以配置的,比如RM(在${HADOOP_HOME}/etc/hadoop/log4j.properties):
这里写图片描述

二、Mapreduce程序相关的日志
   Mapreduce程序的日志可以分为历史作业日志和Container日志。
  (1)历史作业的记录里面包含了一个作业用了多少个Map、用了多少个Reduce、作业提交时间、作业启动时间、作业完成时间等信息;这些信息对分析作业是很有帮助的,我们可以通过这些历史作业记录得到每天有多少个作业运行成功、有多少个作业运行失败、每个队列作业运行了多少个作业等很有用的信息。这些历史作业的信息是通过下面的信息配置的:
  这里写图片描述
这里写图片描述

转载自:http://www.iteblog.com/archives/896

0 0
原创粉丝点击