zoukankan      html  css  js  c++  java
  • (72)zabbix监控日志文件 MySQL日志为例

    一般情况下,日志最先反映出应用当前的问题,在海量日志里面找到我们异常记录,然后记录下来,并且根据情况报警,大家可以监控系统日志、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

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

    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介绍

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

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

  • 相关阅读:
    c#中MessageBox的使用(转)
    ArcGIS中地图配准(转)
    VS2010中VC9.0Runtime与VC10.0Runtime在win7上装不上提示error code 1603(转)
    win7下安装Oracle 10G 的成功方法
    解决win 7 下打不开chm格式文件的办法
    vi 编辑器
    开源赚钱思路
    如何开始linux 编程
    Linux C语言开发基础
    如何做开源项目——ABC
  • 原文地址:https://www.cnblogs.com/wyzhou/p/10842717.html
Copyright © 2011-2022 走看看