一般情况下,日志最先反映出应用当前的问题,在海量日志里面找到我们异常记录,然后记录下来,并且根据情况报警,大家可以监控系统日志、nginx、Apache、业务日志。

这边我拿常见的MySQL日志做监控,大家看演示。

监控日志key

首先要了解key,

log[ file, <regexp>, <encoding>, <maxlines>, <mode>, <output>]

file:文件名,写绝对路径

regexp:要匹配内容的正则表达式,或者直接写你要检索的内容也可以,例如我想检索带ERROR关键词的记录

encoding:编码相关,留空即可(默认utf-8)

maxlines:一次性最多提交多少行,这个参数覆盖配置文件zabbxi_agentd.conf中的’MaxLinesPerSecond’,也可以留空

mode:默认是all,也可以是skip,skip会跳过老数据(每次经检查新增的日志)

output:输出给zabbix server的数据。可以是\1、\2一直\9,\1表示第一个正则表达式匹配出得内容,\2表示第二个正则表达式匹配错的内容。

备注:推荐大家使用第二个参数,看到网上一些zabbix监控日志的教程,几乎只有第一个参数,这样将会导致日志文件里的内容统统丢给zabbix_server记录,我想,这一定不是大家想看到的。

日志文件权限配置

给日志文件加上读取权限(zabbix用户必须有读取权限),为了演示方便,我直接给777

 
1
# chmod 777 /data/mydata/mydata_3306/li220-237.err

如果权限给的不到位,zabbix agent日志有类似如下报错:

 
1
2
3
4
4780:20150311:135742.401 cannot open '/data/mydata/mydata_3306/li220-237.err': [13] Permission denied
4780:20150311:135742.401 active check "log[/data/mydata/mydata_3306/li220-237.err,ERROR,,,,]" is not supported
4779:20150311:135742.402 cannot open '/data/mydata/mydata_3306/li220-237.err': [13] Permission denied
4779:20150311:135742.402 active check "log[/data/mydata/mydata_3306/li220-237.err,ERROR,,,,]" is not supported

zabbix配置

Host>>目标主机>>item>>create item,如下:

说明:

1. type必须选择zabbix agent(active),因为数据是zabbix被监控主机的主动提交给server

2. key:log[/data/mydata/mydata_3306/li220-237.err,ERROR,,,,],我不多说了,细心的人会说,还有一个叫logrt得key,有什么区别,等会儿讲.

3. log time format:yyMMddphh:mm:ss,对应日志的行头150311 11:47:09,y表示年、M表示月、d表示日、p和:一个占位符(空白),h表示小时,m表示分钟,s表示秒。

zabbix监控MySQL日志查看

切换到最新日志里面,找到相应数据,如下是我的监控截图

接下来便是触发器,大家可以根据自己的情况来创建触发器,例如日志中包含某个字符串等等,如上图,我们可以触发执行mysql表修复。

logrt介绍

 
1
2
3
key:
             log[ file,<regexp>,<encoding>,<maxlines>,<mode>,<output>]
logrt[file_regexp,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

如果仔细看可以发现,第一个参数不一样,logrt的第一个参数可以使用正则表达式。针对日志轮替,例如我们每天都切割nginx日志,日志名位www.ttlsa.com_2017-01-01.log、www.ttlsa.com_2017-01-02.log等等,使用log肯定不合适,如果文件名使用正则,那么新增的日志文件会立即加入监控。

备注:不管新日志、老日志,只要他们有变更,zabbix都会监控。

(72)zabbix监控日志文件 MySQL日志为例的更多相关文章

  1. 使用zabbix监控oracle的后台日志

    本文将介绍如何使用zabbix监控oracle的后台日志,当oracle后台日志出现“ORA-”或“Error”时,第一时间将该信息报警出来 zabbix agent端 以下所有操作均用root执行 ...

  2. Zookeeper日志文件&事务日志&数据快照

    Zookeeper持久化两类数据,Transaction以及Snapshot,logDir存储transaction命令,dataDir存储snap快照,其下子目录名称以version-2命名,子目录 ...

  3. SpringBoot日志配置(详解) 涉及控制台输出日志、生成日志文件、日志级别修改、hibernate日志不输出

    写在前面 本篇主要讲述日志配置,看完本篇可以解决下述问题, 控制台输出日志.生成日志文件.日志级别修改.hibernate日志不输出 Git Demo Path:https://github.com/ ...

  4. ubuntu更改mysql配置文件,使其产生日志文件mysql.log

    1.打开mysql配置文件,将68,69行的注释取消掉,保存关闭 sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 2.重启mysql服务 sudo servic ...

  5. zabbix监控nginx,mysql,java

    zabbix 支持的主要监控方式(1)agent代理程序 在Agent监控方式下,zabbix-agent会主动收集本机的监控信息并通过TCP协议与zabbix-server传递信息.Agent 监控 ...

  6. zabbix监控linux文件的一个目录大小

    监控linux文件的一个目录大小 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.       欢迎加入:高级运维工程师之路 598432640 我们知道,Linux自带的一些监控模板 ...

  7. MariaDB——(二) MariaDB 10.0.15 日志文件—undo 日志

          日志的记录和维护是数据库中相当重要的内容,写这篇文章和后面几篇文章作为学习官网文档的笔记.MariaDB数据库日志可分为二进制日志.查询日志.错误日志.myISAM表日志.relay日志和 ...

  8. Java日志使用slf4j 配置log4j后,有日志文件 但日志文件内容为空

    SLF4J的全称是Simple Logging Facade for Java,即简单日志门面. SLF4J并不是具体的日志框架,而是作为一个简单门面服务于各类日志框架,如java.util.logg ...

  9. SQL Server 2008 清空删除日志文件(瞬间日志变几M)

    sql 在使用中每次查询都会生成日志,但是如果你长久不去清理,可能整个硬都堆满哦,笔者就遇到这样的情况,直接网站后台都进不去了.下面我们一起来学习一下如何清理这个日志吧 SQL2008清空删除日志: ...

随机推荐

  1. JXl常用解析详解

    目的: java解析 excel 无非就是apache poi 或者 jxl 两者在使用上其实都差不多,关键还是看你自己熟悉那个,用那个!我也是初次接触jxl 看很多博客说 jxl只适用于处理小数据量 ...

  2. echart 初级尝试

    var option = { title: { text: 'ECharts 入门示例'//标题 }, legend: { data:['销量']//图例 }, xAxis: { data: [&qu ...

  3. 【手撸一个ORM】第六步、对象表达式解析和Select表达式解析

    说明 一个Orm自然不仅仅包含条件表达式,还会有如下的场景: OrderBy(s => s.StudentName) Select<StudentDto>(s => new S ...

  4. ms sqlserver 清除数据库日志脚本

    USE [master] GO ALTER DATABASE F360DW SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE F360DW SET ...

  5. SSH 的端口转发

    第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我 ...

  6. paas相关,添加ing

    1. docker 构建镜像,docker build -t image_name:version dockerfilePath.使用镜像启动一个docker容器,docker run --name ...

  7. 时间日期相关:Date类、DateFormat类、Calendar类

    1 Date类 类 Date 表示特定的瞬间,精确到毫秒. 1秒=1000毫秒 毫秒的0点:公元1970年 一月一日,午夜0:00:00 对应的毫秒值就是0 时间和日期的计算,必须依赖毫秒值. Sys ...

  8. HTML5 JSDOM

    1,HTML5 新语义化标签 - nav -- 表示导航 - header -- 表示页眉 -- 头部 - section -- 表示区块 -- 类似于div - main -- 文档主要内容 - a ...

  9. If people in the communications only think about gains and losses of interest, then the pleasure of knowing each other will cease to exist.

    If people in the communications only think about gains and losses of interest, then the pleasure of ...

  10. Java transient关键字使用

    1. transient的作用及其使用方法 我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的 ...