hadoop的各方面日志定位

本文深入解析了Hadoop MapReduce日志结构,包括服务日志和作业日志的位置,以及不同版本(1.x和2.x)的日志定位变化。详细介绍了JobTracker和TaskTracker的日志存放路径,作业日志的组成(jobhistory和task日志),以及应用程序日志(jobhistory和Container日志)的存放位置。同时,阐述了Container日志的分类及其包含的日志文件(stdout、stderr、syslog)和各自的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hadoop MapReduce日志包含如服务日志和作业日志。但是,因为版本不同,日志的定位有点不太一样。

1.x版本的日志:

分类:一个JobTracker日志和多个(至少一个)TaskTracker日志

JobTracker:在JobTracker节点上,

        默认位置:${hadoop.log.dir}/logs/*-jobtracker-*.log,该文件每天生成一个,旧的日志后缀是日期,当天的日志文件 后缀是“.log”,${hadoop.log.dir}默认值是hadoop安装目录,即${HADOOP_HOME}。

  TaskTracker:在各TaskTracker节点上,

  默认位置是:$HADOOP_HOME/logs/*-tasktracker-*.log,该文件每天生成一个,旧的日志后面会跟一个日志,当天的日志文件后缀是“.log”

  作业日志包括jobhistory日志和task日志两部分,其中,jobhistory日志是作业运行日志,包括作业启动时间、结束时间,每个任 务的启动时间、结束时间,各种counter信息等,用户可以从这个日志中解析出作业运行的各种信息,是非常有价值的信息。

默认存放位置是 JobTracker所在节点的${hadoop.log.dir}/history目录下,可通过参数 hadoop.job.history.location配置。每个task日志存放在task运行节点上,存放位置 是${hadoop.log.dir}/userlogs//目录下,每个task包含 三个日志文件,分别是stdout、stderr和syslog,其中,stdout是通过标准输出打印出来的日志,比如 System.out.println,注意,程序中通过标准输出打印的日志并不会直接显示在终端上,而是保存在这个文件中,syslog是通过log4j打印的日志,通常这个日志中包含的有用信息最多,也是错误调试中最关键的参考日志。

2.x版本

  日志分类:包括ResourceManager日志和各NodeManager日志,

  ResourceManager日志存放位置是Hadoop安装目录下的logs目录下的yarn-*-resourcemanager-*.log

  NodeManager日志存放位置是各个NodeManager节点上hadoop安装目录下的logs目录下的yarn-*-nodemanager-*.log

  应用程序日志包括jobhistory日志和Container日志,其中,jobhistory日志是应用程序运行日志,包括应用程序启动时间、结束时间,每个任务的启动时间、结束时间,各种counter信息等。

  Container日志包含ApplicationMaster日志和普通Task日志,它们均存放在Hadoop安装目录下的userlogs目 录中的application_xxx目录下,其中ApplicationMaster日志目录名称为container_xxx_000001;

       普通 task日志目录名称则为container_xxx_000002,container_xxx_000003,….,同1.x一样,每个目录下包含三个日志文件:stdout、stderr和syslog,且具体含义是一样的。

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值