1.Java程序的日志特征,logstash 正为此准备好了 codec/multiline 插件!

有时候应用程序会抛异常,就存在着如何合并多行信息的问题,我这里做的配置就是如果当前行是以‘空格’,‘字母‘ 和 ‘-’开头的,那么就直接合并到上

[2019-06-26 11:59:42,758[ INFO ThreadPool 任务运行队列 thread:2](cn.com.to1.common.dac.SupportDAC:575) prepared的查询语句是:SELECT COUNT(DISTINCTr.user_id) FROM TB_DEPARTMENT_INFO d, tb_qy_user_department_ref r where r.department_id = d.id and d.org_id = :orgId AND (d.dept_full_name LIKE :deptFullNameLike or d.dept_full_name = :deptFullName)
[2019-06-26 11:59:42,763[ INFO ThreadPool 任务运行队列 thread:8](cn.com.to1.common.dac.SupportDAC:575) prepared的查询语句是:insert into TB_QY_USER_DEPARTMENT_REF(ID,USER_ID,DEPARTMENT_ID,SORT,ORG_ID) values(:id,:userId,:departmentId,:sort,:orgId)
2019-06-26 11:59:42,764[ERROR DefaultQuartzScheduler_Worker-10](cn.com.to1.component.util.EmailUtil:225) EmailUtil sendWarnEmail error
javax.mail.AuthenticationFailedException
at javax.mail.Service.connect(Service.java:319)
at javax.mail.Service.connect(Service.java:169)
at javax.mail.Service.connect(Service.java:118)
at javax.mail.Transport.send0(Transport.java:188)
at javax.mail.Transport.send(Transport.java:118)
at cn.com.do1.component.util.EmailUtil.send(EmailUtil.java:191)
at cn.com.do1.component.util.EmailUtil.sendWarnEmail(EmailUtil.java:217)
at cn.com.do1.component.util.ThreadPoolUtils.warn(ThreadPoolUtils.java:278)
at cn.com.do1.component.util.ThreadPoolUtils.execute(ThreadPoolUtils.java:127)
at cn.com.do1.component.runtask.thread.RunTaskJob.runTask(RunTaskJob.java:63)
at cn.com.do1.component.runtask.thread.RunTaskJob.execute(RunTaskJob.java:52)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
[2019-06-26 11:59:42,764[ INFO ThreadPool 任务运行队列 thread:8](cn.com.do1.common.dac.SupportDAC:575) prepared的查询语句是:insert into TB_QY_USER_INFO(ID,USER_ID,ORG_ID,PERSON_NAME,PINYIN,SEX,UPDATE_TIME,USER_STATUS,HEAD_PIC,CREATE_TIME,IS_CONCERNED,WX_USER_ID,CORP_ID) values(:id,:userId,:orgId,:personName,:pinyin,:sex,:updateTime,:userStatus,:headPic,:createTime,:isConcerned,:wxUserId,:corpId)

2.logstash的配置关键

合并多行数据(Multiline)

demo

[Aug/08/08 14:54:03] hello world
[Aug/08/09 14:54:04] hello logstash
hello best practice
hello raochenlin
[Aug/08/10 14:54:05] the end

logstash的关键配置

[root@VM_0_92_centos opt]# cat /usr/local/logstash/config/exception.conf
input {
file {
path => "/opt/50910626.log"
codec => multiline {
pattern => "^\["
negate => true
what => "previous"
}
start_position => "beginning"
}
}
output {
elasticsearch { hosts => ["10.0.0.92:9200"]
index => "linemuti"
}
stdout { codec => rubydebug }
}
说明:匹配以“[”开头的行,如果不是,那肯定是属于前一行的。

参考:https://doc.yonyoucloud.com/doc/logstash-best-practice-cn/codec/multiline.html

elk logstash Managing Multiline Events的更多相关文章

  1. ELK logstash 处理MySQL慢查询日志(初步)

    写在前面:在做ELK logstash 处理MySQL慢查询日志的时候出现的问题: 1.测试数据库没有慢日志,所以没有日志信息,导致 IP:9200/_plugin/head/界面异常(忽然出现日志数 ...

  2. ELK——Logstash 2.2 date 插件【翻译+实践】

    官网地址 本文内容 语法 测试数据 可配置选项 参考资料 date 插件是日期插件,这个插件,常用而重要. 如果不用 date 插件,那么 Logstash 将处理时间作为时间戳.时间戳字段是 Log ...

  3. ELK logstash邮件报警

    这个方法有一个问题就是我这边不能给我们公司的邮箱发邮件.还有就是我们有两个邮箱一个是腾讯企业邮箱,还有一个就是我们的集团邮箱 使用下面的这个方法是不能给我们的集团邮箱发邮件的.第二个问题就是这个方法给 ...

  4. ELK(Logstash+Elasticsearch+Kibana)的原理和详细搭建

    一. Elastic Stack Elastic Stack是ELK的官方称呼,网址:https://www.elastic.co/cn/products ,其作用是“构建在开源基础之上, Elast ...

  5. [elk]logstash的最佳实战-项目实战

    重点参考: http://blog.csdn.net/qq1032355091/article/details/52953837 不得不说这是一个伟大的项目实战,是正式踏入logstash门槛的捷径 ...

  6. [elk]logstash&filebeat常用语句

    filebeat安装dashboard 参考: https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-getting-star ...

  7. logstash之multiline插件,匹配多行日志

    在外理日志时,除了访问日志外,还要处理运行时日志,该日志大都用程序写的,比如log4j.运行时日志跟访问日志最大的不同是,运行时日志是多行,也就是说,连续的多行才能表达一个意思. 在filter中,加 ...

  8. ELK logstash 启动慢的解决方法

    最近开始测试部署ELK, 在部署logstash的时候出现一个故障: logstash在第一次安装完成以后启动正常, 但是之后启动时间越来越长, 5分钟以上甚至10多分钟.以至于怀疑程序错误, 在重装 ...

  9. ELK logstash 处理MySQL慢查询日志

    在生产环境下,logstash 经常会遇到处理多种格式的日志,不同的日志格式,解析方法不同.下面来说说logstash处理多行日志的例子,对MySQL慢查询日志进行分析,这个经常遇到过,网络上疑问也很 ...

随机推荐

  1. robotframework 获取坐标

    Get Horizontal Position  获取X轴坐标 Get Vertical Position      获取Y轴坐标 Get Element Size          获取整个图表的高 ...

  2. 3 触发器报警-->远程执行命令

    0.需求 上节课我们讲了,触发器报警,发送邮件,这节课主要讲下远程执行命令 流程图如下 item--> triggers-->action--->Email     |——>远 ...

  3. Linux安装JAVA web环境

    一:安装jdk   1.下载 在oracle下载东西的时候因为oracle的一些验证机制,所以需要在链接前面添加一些参数 wget --no-check-certificate --no-cookie ...

  4. hdu 6068 Classic Quotation

    题 QAQ http://acm.hdu.edu.cn/showproblem.php?pid=6068 2017 Multi-University Training Contest - Team 4 ...

  5. CDOJ 1263 The Desire of Asuna 贪心

    The Desire of Asuna Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Othe ...

  6. 3622 假期(DP+单调队列优化)

    3622 假期 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 黄金 Gold 题目描述 Description 经过几个月辛勤的工作,FJ决定让奶牛放假.假期可以在1-N天内任意选择 ...

  7. K8S中DaemonSet

    DaemonSet DaemonSet 确保全部(或者一些)Node 上运行一个 Pod 的副本.当有 Node 加入集群时,也会为他们新增一个 Pod .当有 Node 从集群移除时,这些 Pod ...

  8. 本地创建的项目使用版本管理(git)推送至远端。

    1.创建项目 mkdir nidexiangmu cd nidexiangmu touch README.md 2.使用 git 命令管理 git init // 建立本地仓库 git add . / ...

  9. Java集合框架之TreeSet

    简述 TreeSet是基于TreeMap作为存储的可排序.可去重的有序集合 继承于AbstractSet,AbstractSet实现了equals和hashcode方法 实现了NavigableSet ...

  10. postgresql-基础-1

    概述 层状关系 网状关系 关系型数据库 关系型数据库 ​ 元祖:代表一行 ​ 属性:代表一列 ​ 主码:唯一确定一个元组的属性组,即主键 ​ 域:属性的取值范围 ​ 分量:元组中的一个属性值,即某一行 ...