MapReduce日志处理,如何有效利用loglog算法优化大数据计算?

MapReduce是一种编程模型,用于处理和生成大数据集。log_log是其一种变体,用于加速计算过程。

在MapReduce编程中,日志记录是一个重要的工具,用于监控和调试大规模数据处理作业,MapReduce框架提供了详细的日志记录功能,帮助开发者了解作业执行过程中的详细情况,本文将详细介绍MapReduce日志的查看方法、存储位置以及日志级别设置等内容。

MapReduce日志处理,如何有效利用loglog算法优化大数据计算?

MapReduce日志查看方法

MapReduce日志可以通过多种方式查看,以下是一些常用的方法:

1、使用yarn命令

通过yarn logs applicationId <application_id>命令可以查看特定MapReduce作业的日志。

     yarn logs applicationId application_1539198654522_1073695 > log.txt

这条命令会将日志输出到log.txt文件中,方便后续分析。

2、通过Web UI查看

可以在YARN ResourceManager的Web界面(默认端口为8088)查看作业日志,进入页面后,点击具体的作业链接,然后在页面底部的"logs"部分查看日志。

MapReduce日志存储位置

MapReduce日志主要存储在以下路径:

1、JobhistoryServer

运行日志存储在/var/log/Bigdata/mapreduce/jobhistory

MapReduce日志处理,如何有效利用loglog算法优化大数据计算?

审计日志存储在/var/log/Bigdata/audit/mapreduce/jobhistory

2、Container

每个容器的日志存储在/srv/BigData/hadoop/data1/nm/containerlogs/application_${appid}/container_{$contid}

日志归档规则

MapReduce的日志启动了自动压缩归档功能,缺省情况下,当日志大小超过50MB时,会自动压缩,压缩后的日志文件名规则为“<原有日志名><yyyymmdd_hhmmss>.[编号].log.zip”,最多保留最近的100个压缩文件,压缩文件保留个数可以在参数配置界面中配置。

日志级别

MapReduce中提供了多种日志级别,包括FATAL、ERROR、WARN、INFO和DEBUG,日志级别优先级从高到低分别是FATAL、ERROR、WARN、INFO、DEBUG,程序会打印高于或等于所设置级别的日志,设置的日志等级越高,打印出来的日志就越少。

级别 描述
FATAL 当前事件处理存在严重错误信息。
ERROR 当前事件处理存在错误信息。
WARN 当前事件处理存在异常告警信息。
INFO 记录系统及各事件正常运行状态信息。
DEBUG 系统及系统的调试信息。

日志格式

MapReduce日志格式如下所示:

| 日志类型 | 格式 | 示例 |

| | | |

MapReduce日志处理,如何有效利用loglog算法优化大数据计算?

| 运行日志 |<yyyyMMdd HH:mm:ss,SSS>|<Log Level>|<产生该日志的线程名字>|<log中的message>|<日志事件的发生位置> |20200126 14:18:59,109 | INFO | main | Client environment:java.compiler=<NA> | org.apache.zookeeper.Environment.logEnv(Environment.java:100) |

| 审计日志 |<yyyyMMdd HH:mm:ss,SSS>|<Log Level>|<产生该日志的线程名字>|<log中的message>|<日志事件的发生位置> |20200126 14:24:43,605 | INFO | mainEventThread | USER=omm OPERATION=refreshAdminAcls TARGET=AdminService RESULT=SUCCESS | org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger$LogLevel$6.printLog(RMAuditLogger.java:91) |

常见问题解答

如何修改MapReduce作业的日志级别?

答:你可以通过Cloudera Manager或者直接修改配置文件来设置日志级别,在mapredsite.xml中添加以下配置:

<property>
    <name>mapreduce.reduce.log.level</name>
    <value>DEBUG</value>
</property>
<property>
    <name>mapreduce.map.log.level</name>
    <value>DEBUG</value>
</property>
<property>
    <name>yarn.app.mapreduce.am.log.level</name>
    <value>DEBUG</value>
</property>

保存配置后重新部署Yarn的Gateway客户端即可。

MapReduce日志过大导致的问题如何解决?

答:MapReduce日志启动了自动压缩归档功能,当日志大小超过50MB时,会自动压缩,压缩后的日志文件名规则为“<原有日志名><yyyymmdd_hhmmss>.[编号].log.zip”,最多保留最近的100个压缩文件,压缩文件保留个数可以在参数配置界面中配置,可以通过调整日志级别来减少日志量,例如将日志级别设置为WARN或ERROR。

通过以上内容,相信你对MapReduce日志有了更深入的了解,合理利用这些工具和方法,可以帮助你更好地监控和调试MapReduce作业,提高数据处理的效率和可靠性。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1207076.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-10-12 12:57
下一篇 2024-10-12 12:59

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入