ELK中logstash收集数据写入redis数据积压的问题

我们之前写过一篇logstash收集数据输出到redis的笔记:https://sulao.cn/post/739.html,可能我们有一点顾虑,redis单个key的最大value大小为512M,在生产环境中收集集群机器的日志数据可能512M一会就会写满,所以写满以后导致了redis的数据积压,导致数据读写瓶颈,其实logstash写入和读取redis的时候使用list方式分别使用rpush和lblpop推入和删除已读数据,logstash插入数据到list的最后,logstash不断取走列表的第一个组数据并删除,redis读取数据非常快,所以一般情况...

阅读全文

zabbix4.4配置自动发现和关联主机模板

使用zabbix监控大量主机的时候,我们一个个配置过去有点不现实,所以我们需要使用到zabbix的自动发现功能来批量添加监控主机我们先来看看zabbix的自动发现的配置配置->自动发现,然后创建发现规则,基本配置如下然后再去配置->动作,事件源(自动发现)->创建动作名称随意填写,计算方式我选择的"或",条件你可以根据需要自行选择,我选的还是比较多的,可以删减一些,已启用勾选上,然后切换到操作标签这里基本无需要改什么,主要是操作里面添加关联模板,这样自动发现的主机可以直接关联上模板然后我们去检测->自动发现页面...

阅读全文

zabbix4.4使用snmp的方式监控

简单网络管理协议(SNMP,SimpleNetworkManagementProtocol)构成了互联网工程工作小组(IETF,InternetEngineeringTaskForce)定义的Internet协议族的一部分。该协议能够支持网上管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。SNMP协议主要由两大部分构成:SNMP管理站和SNMP代理。SNMP管理站是一个中心节点,负责收集维护各个SNMP元素的信息,并对这些信息进行处理,最后反馈给网络管理员;而SNMP代理是运行在各个被管理的网络节点之上,负责统计该节点的各...

阅读全文

ELK中logstash数据修改插件mutate的使用方法

filters/mutate插件是Logstash另一个重要插件。它提供了丰富的基础类型数据处理能力。包括类型转换,字符串处理和字段处理等。类型转换类型转换是filters/mutate插件最初诞生时的唯一功能。其应用场景在之前Codec/JSON小节已经提到。可以设置的转换类型包括:"integer","float"和"string"。示例如下:filter {  mutate {    ...

阅读全文

ELK中logstash调用执行命令exec的方法

logstash调用系统执行命令exec的方法比较简单,调用exec命令可以直接调用系统脚本或者命令,处理的方法可以变的更加灵活例如我们在zabbix的邮件报警笔记中使用到了python脚本进行报警,通过稍作修改,也可以让ELK实现邮件报警,或者是钉钉,短信告警output {      if [Level]  == "ERROR" {      &...

阅读全文

ELK中使用logstash将采集的日志打包保存

之前的学习都是logstash收集过滤的日志再次传递到ES中进行存储使用,在实际的工作中有些日志我们是不需要存储到DB中,而是直接收集打包存储到硬盘logstash中的output/file插件可以实现这个功能,使用例子如下output {    file {        path => "/path/to/%{+yyyy/MM/dd/HH}/%{host}.log.gz...

阅读全文

ELK中logstash收集日志写入redis

ELK中我们通常是使用logstash收集到日志然后直接提交到ES中进行存储,当在大量日志的场景下,当存储已经跟不上收集的速度是我们需要使用队列来进行顺序存储,redis在项目中作为存储中间件,下面我们就在之前的笔记的基础上进行一些修改,以便支持redis存取日志信息之前的logstash配置可以查看https://sulao.cn/post/736.html,我们来看看如何使用redis存取吧首先我们需要安装redis,这里不赘述redis的安装修改/etc/logstash/conf.d/logstash.confinput {&nbs...

阅读全文

zabbix4.4使用自定义监控脚本监控mysql

由于官方zabbix4.4的mysql监控方法有些问题,一直没找到原因,看到zabbix论坛有和我一样问题的人,于是还是采用老的方式来监控zabbix性能以前的笔记查看这个,https://sulao.cn/post/513.html,该方案只适合zabbix3.4和zabbix4.0官网的各种监控方案请查看这里:https://www.zabbix.com/cn/integrations/当前主要配置过程如下首先修改zabbix-agent.conf配置文件UnsafeUserParameters=1 #去掉前面#,然后值修改为1然后我们需要...

阅读全文

zabbix使用钉钉机器人发送告警信息

zabbix通过钉钉机器人报警大致和邮件报警类似,邮件报警可以查看我之前的笔记https://sulao.cn/post/396.html我们首先要去钉钉上创建一个群组,然后在群组中点击智能群助手,添加自定义机器人添加的时候主要记录webhook后续操作基本和之前添加邮件报警一致,将脚本放置/usr/local/zabbix/share/zabbix/alertscripts目录下,我的脚本名叫dingtalk.py,代码如下#!/usr/bin/python3#coding: utf-8import requestsim...

阅读全文

ELK中Logstash使用grok进行日志过滤

Logstash是Elasticstack中的一个开源组件,其不仅能够对日志进行抓取收集,还能对抓取的日志进行过滤输出。Logstash的过滤插件有多种,如:grok、date、json、geoip等等。其中最为常用的为grok正则表达式过滤grok的匹配语法分为两种:grok自带的基本匹配模式、用户自定义的匹配模式。Grok的基本匹配模式Grok模块提供了默认内嵌了一些基本匹配模式,其使用语法为:%{SYNTAX:SEMANTIC}其中SYNTAX为匹配模式的名称,用于调用相应的匹配模式匹配文本,如:3.44会被NUBER模式所匹配,而10.10...

阅读全文