如何收集SparkSteaming运行日志实时进入kafka中

用过sparkstreaming的人都知道,当使用sparkstreaming on yarn模式的时候,如果我们想查看系统运行的log,是没法直接看的,就算能看也只是一部分。

这里的log分:

(1)

下面会介绍下如何使用:

streaming项目中的log4j使用的是apache log4j

sparkstreaming项目可以单独提交某个job的log4j文件,这样就能定制每个job的log输出格式,如果提交的时候不提交log4j文件,那么默认用的是spark安装目录下面的log4j文件。 看下我们log4j文件的内容:

最后看下提交脚本:

注意上面提交脚本中,/opt/bigdata/jars/spark/这个路径引用的jar包,必须在每台hadoop机器上都要存在,sparkstreaming运行过程中,会从本地加载jar包,此外log4j.properties文件以及参数里面--jars 后面的依赖jar 可以在提交机器上放一份即可,不需要每台机器上都存放。

提交任务后,在kafka的节点上执行消费者命令就能看到对应的log输出: 执行命令:

kafka-console-consumer --zookeeper 192.168.201.5:2181 --topic kp_diag_log

收集到的log内容如下:

至此,我们的log就统一收集成功了,后续我们可以把log从kafka导入到es中,就可以任意分析和查询了。

这里需要注意一点,sparkstreaming运行时候,系统本身也有大量的log,如果把这个系统log也收集到kafka里面本身的量是非常大的,而且好多信息不重要,其实 我们只需要关注业务重点log即可,主要是WARN+ERROR级别的,调试的时候可以把info级别打开,代码里重点关注的log都放在warn级别,异常什么的放在ERROR即可 这样排查问题时候也容易而且了避免了大量log的产生从应用本身性能的影响。

原文发布于微信公众号 - 我是攻城师(woshigcs)

原文发表时间:2017-01-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏令仔很忙

新手学Linux(八)----MySql安装(Centos7)

最近项目新申请了云服务器,老大让我搭了下环境,在安装MySql的时候遇到的坑稍微多点,所以在这里做个记录,我的安装方式不是通过安装包来安装的,而是通过yum来...

1321
来自专栏web开发

Gulp实现css、js、图片的压缩以及css、js文件的MD5命名

目前做代码压缩合并的工具有很多,诸如gulp,webpack,grunt等等,可以说这些项目构建工具的功能非常之强大:图片压缩、图片转base64、css和js...

4588
来自专栏C/C++基础

Linux下查看文件创建时间

在windows下,一个文件有:创建时间、修改时间、访问时间。而在Linux下,一个文件也有三种时间,分别是:访问时间(Access)、修改时间(Modify)...

1664
来自专栏javathings

JVM 线程和操作系统线程一一对应吗?

Java 的线程和操作系统的线程是一一对应的。使用 Java 线程就是使用一个操作系统本地线程。

3924
来自专栏技术博文

git init 和 git init –bare 的区别

使用命令"git init --bare"(bare汉语意思是:裸,裸的)初始化的版本库(暂且称为bare repository)只会生成一类文件:用于记录版本...

3588
来自专栏我的博客

安卓开发之环境搭建

第一步:安装JDK 安装JDK(有的直接进入安装SDK安装,这里说明下,必须先有JDK才可以) 安装JDK路径:D:\android\jdk 设置:我的电脑->...

3748
来自专栏noteless

spring原理案例-基本项目搭建 01 spring framework 下载 官网下载spring jar包

All avaible features and modules are described in the Modules section of the ref...

864
来自专栏JavaQ

开发工程师必会的Linux命令

之前分享过一篇有关Linux的操作命令,内容很全,但是比较基础。然而,实际工作中用到的比那些稍复杂些,本篇分享一些开发工程师必须具备的实战Linux命令。 1....

35611
来自专栏linux系统运维

zip压缩以及tar打包

22310
来自专栏黑泽君的专栏

Linux命令复习和练习

1401

扫码关注云+社区

领取腾讯云代金券