logstash

logstash解析嵌套json格式数据

孤街醉人 提交于 2020-10-26 12:39:24
logstash解析嵌套json格式数据 1、源文件   1.原日志文件为 2019-10-28 09:49:44:947 [http-nio-8080-exec-23] INFO [siftLog][qewrw123ffwer2323fdsafd] - logTime:2019-10-28 09:49:25.833-receiveTime:2019-10-28 09:49:44.044-{"area":"","frontInitTime":0,"initiatePaymentMode":"plugin_manual","network":"电信","os":"Microsoft Windows 7","payStatus":"1","reqs":[{"curlCode":"0","end":"2019-10-28 09:49:25.233","errorCode":"","errorDesc":"","totalTime":2153}],"settleAccountsTime":0}   在这里我们需要先把json前面一段的正则写出来,由于这些数据在实际生产没什么实际意义,所以没重点分字段   DATETIME %{YEAR}-%{MONTHNUM}-%{MONTHDAY}[T ]%{HOUR}:?%{MINUTE}(?::?%{SECOND})? ACCESSLOG %

[Logstash]使用详解

本小妞迷上赌 提交于 2020-10-26 11:33:30
  Logstash是一款轻量级的日志搜集处理框架,可以方便的把分散的、多样化的日志搜集起来,并进行自定义的处理,然后传输到指定的位置,比如某个服务器或者文件。   本文针对 官方文档 进行翻译以及实践,希望有更多的有用户了解、使用这款工具。 下载、安装、使用   这款工具是开箱即用的软件, 下载地址戳这里 ,下载自己对应的系统版本即可。   下载后直接解压,就可以了。   通过命令行,进入到logstash/bin目录,执行下面的命令: logstash -e ""   可以看到提示下面信息(这个命令稍后介绍), 输入hello world!    可以看到logstash尾我们自动添加了几个字段,时间戳@timestamp,版本@version,输入的类型type,以及主机名host。 工作原理   Logstash使用 管道方式 进行日志的搜集处理和输出。有点类似*NIX系统的管道命令 xxx | ccc | ddd ,xxx执行完了会执行ccc,然后执行ddd。   在logstash中,包括了三个阶段:   输入input --> 处理filter(不是必须的) --> 输出output   每个阶段都由很多的 插件 配合工作,比如file、elasticsearch、redis等等。   每个阶段也可以指定 多种方式 ,比如输出既可以输出到elasticsearch中

[FAQ] Error: com.mysql.jdbc.Driver not loaded. :jdbc_driver_library

假如想象 提交于 2020-10-25 07:39:41
以上问题出现在 logstash.conf 未配置好 MySQL 的 JDBC 驱动时导致的错误提示。 首先,下载好 MySQL JDBC 驱动库,可以放到 logstash.conf 所在当前目录或者任意位置。 http://dev.mysql.com/downloads/connector/ 然后 logstash.conf 配置项,jdbc_driver_library 指定到 jar 文件所在位置。 Link: https://www.cnblogs.com/farwish/p/12892228.html 来源: oschina 链接: https://my.oschina.net/u/4315748/blog/4281577

elasticsearch 7.7 添加用户名密码认证

 ̄綄美尐妖づ 提交于 2020-10-24 14:29:26
1.首先我做的是单实例单节点跑的ES版本为7.7 不用单独安装x-pack { "name" : "node-1", "cluster_name" : "myes", "cluster_uuid" : "OGiYluA_Sxynl2bXl1TcbQ", "version" : { "number" : "7.7.0", "build_flavor" : "default", "build_type" : "rpm", "build_hash" : "81a1e9eda8e6183f5237786246f6dced26a10eaf", "build_date" : "2020-05-12T02:01:37.602180Z", "build_snapshot" : false, "lucene_version" : "8.5.1", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search" } 2、使用es内置工具创建密码 首先输出环境变量 export PATH=/usr/share/elasticsearch/bin/:$PATH 3、首先你的es节点要是运行状态

ES写入性能优化实录

女生的网名这么多〃 提交于 2020-10-22 09:03:32
背景: 公司的各个微服务在逐步接入ES APM 这个监控体系,但是metrics写入量较大(每个metrics的长度很小,但是频率很高),通过logstash往ES写数据时候频繁报写入队列已满,写入拒绝,运维侧需要对ES做写入优化。 优化措施 1、调整ES的索引持久化参数 主要是调整下面4个参数: "index.translog.durability" : "async", "index.translog.flush_threshold_size" : "512mb", "index.translog.sync_interval" : "120s", "index.refresh_interval" : "120s" index.refresh_interval 这个参数需要特别注意,如果你们公司对索引实时性要求很高,就不要像我上面这样设置了(默认这个参数是1秒钟,建议允许的话,改大点,日志系统可以建议设置到60s,能大幅提升性能)。 具体含义不再赘述,参考官方文档。 需要说明的是,这个动作是索引级别的,因此我们每当有新索引创建完成后都要执行这个操作,不然对新索引是不会生效的。 所以,还需要有个update_settings.sh 的脚本,来定期操作。 # 调整 es的索引的写入参数,牺牲持久性来换取高写入性能 curl -s -HContent-Type:application

Prometheus 和 它的监控需求朋友们 ;)

爱⌒轻易说出口 提交于 2020-10-17 13:50:26
这篇博文的面向群体是 还不太了解 Prometheus 和 想要开始使用 Prometheus 的人群. 本文想做的事是 想尽力讲清楚 Prometheus 是如何看待监控这件事情 以及 Prometheus 是如何实现这些需求的. 本文中不会出现的内容: 跟 Prometheus 实现细节有太多相关的东西 等 当想看监控的时候, 我们到底想要什么? 我们想要看的东西也就是我们对监控的需求. 需求 在实际的生产过程中, 产生的和需要收集的监控数据分为很多种, 例如以下这些, 除此之外, 还有很多很多. 但从实现方式上来说, 大多都大同小异. 瞬时状态的 CPU 和 MEM 使用率读数 硬盘使用量的增长率 对 集群节点 状态 进行筛选 , 记录节点位于什么时刻不可用, 这就要求有 Tag 支持 瞬时状态的 网卡流量, 例如 100 Mbps, 服务请求量, 服务的 QPS, 服务的 错误率和错误次数 全部请求的平均时耗 一段时间内, 所有请求的 时耗中, 50% 的请求时耗小于多少毫秒, 95% 的请求时耗小于多少毫秒? 以此评估整体的接口情况 一段时间内, 所有请求的 时耗中, 多少请求时耗大于 1000ms, 多少请求时耗位于 200-500 区间内, 用于了解 请求时耗的具体分布, 以评估接口情况 …… 那么我们就需要一个 监控系统 来完成 上述需求, 这个监控系统

PB级大规模Elasticsearch集群运维与调优实践

别等时光非礼了梦想. 提交于 2020-10-14 21:57:04
导语 | 腾讯云Elasticsearch 被广泛应用于日志实时分析、结构化数据分析、全文检索等场景中,本文将以情景植入的方式,向大家介绍与腾讯云客户合作过程中遇到的各种典型问题,以及相应的解决思路与方法,希望与大家一同交流。文章作者:bellen,腾讯云大数据研发工程师。 ​ 一、背景 某中型互联网公司的游戏业务,使用了腾讯云的 Elasticsearch 产品,采用 ELK 架构存储业务日志。 因为游戏业务本身的日志数据量非常大(写入峰值在 100w qps ),在服务客户的几个月中,我们踩了不少坑。经过数次优化与调整,最后将客户的 ES 集群调整得比较稳定,避免了在业务高峰时客户集群的读写异常,并且降低了客户的资金成本和使用成本。 二、与客户的初次交锋 解决方案架构师A:bellen, XX公司要上线一款新游戏,日志存储决定用 ELK 架构,他们决定在 XX云和我们之间二选一,我们首先去他们公司和他们交流一下,争取拿下! bellen: 好,随时有空! 随后和架构师一起前往该公司,跟负责底层组件的运维部门的负责人进行沟通。 XX公司运维老大:不要讲你们的PPT了,先告诉我你们能给我们带来什么! bellen:呃,我们有很多优势,比如可以灵活扩缩容集群,还可以一键平滑升级集群版本,并且提供有跨机房容灾的集群从而实现高可用...... XX公司运维老大:你说的这些别的厂商也有

Docker安装及安装单机版ELK日志收集系统

这一生的挚爱 提交于 2020-10-06 08:03:19
Docker 安装单机版ELK日志收集系统 概述 现在Elasticsearch是比较火的, 很多公司都在用. 而Docker也正如火如荼, 所以我就使用了Docker来安装ELK, 这里会详细介绍下安装的细节以及需要注意的地方. 先来强调一下, Elasticsearch和Kibana必须用相同版本, 这个可以避免很多坑。 日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。 开源实时日志分析ELK平台由ElasticSearch、Logstash和Kiabana三个开源工具组成: 1)ElasticSearch是一个基于Lucene的开源分布式搜索服务器。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。在elasticsearch中,所有节点的数据是均等的。 2)Logstash是一个完全开源的工具