关于开源监控工具Hyperic 的文本日志监控功能

简述

本文针对Hyperic 5.8+ 版本

在实际的监控中,有很多日志并不是Log4j格式,例如oracle的 ALERT.LOG, Linux的 syslog 和 dmesg等。通过浏览Hyperic的源码发现, 支持 Log4j 的支持类是 Log4JLogTrackPlugin, 继承自 LogFileTailPlugin,而该类实现了对普通文本日志的监控。

那么问题来了,哪个插件使用了 LogFileTailPlugin 这个支持类? 经过仔细分析,发现了一个插件,不但使用了这个类,也提供了更多的功能: Multi Log Tracker 

本文示例配置监控 /var/log  目录下的  syslog 和 dmesg文件。匹配字符串 rsyslogd

操作系统: Ubuntu 12.04.3 LTS 

配置过程

  • 在某个平台下新建服务器,如图

关于开源监控工具Hyperic 的文本日志监控功能

  • 填写名称,在“服务器类型”选择 “Multi Log Tracker 1.0”,在安装路径 可填写"/"

关于开源监控工具Hyperic 的文本日志监控功能

  • 单击“确定”显示如下,在左下角,如图,单击“编辑”

关于开源监控工具Hyperic 的文本日志监控功能

  • 如图,填入几个重要参数,如下,

    basedir             : /var/log

    logfilepattern:     : dmesg,syslog

    includepattern    : rsyslogd:    (所要匹配的字符串)

    选中  server.log_track.enable  和 server.enable_log_services

   

关于开源监控工具Hyperic 的文本日志监控功能

  • 单击“确定”后,稍等片刻,如图:

关于开源监控工具Hyperic 的文本日志监控功能

  • 进入,每个发现的服务,如图:

关于开源监控工具Hyperic 的文本日志监控功能

说明

插件 Multi Log Tracker 1.0 可监控多个log文件,使用的技术是: Apache ant Directory Scanner

basedir - 基准目录,用于扫描每个如何  logfilepattern 模式的文件,该目录必须存在,并且可读,不能使用通配符;

logfilepattern - 扫描的文件模式,可以英文逗号分开。

includepattern - 正则表达式,使用该正则表达式匹配tail的每一行。大小写不敏感。匹配的每一行将送到Hyperc server。

excludepattern - 排除的正则表达式,匹配该表达式的每一行将忽略,该规则覆盖  includepattern.

includepattern_2 - 第二个 include pattern, 可选。

excludepattern_2 - 第二个exclude pattern, 可选。

enable_only_metrics - 不发送日志,只采集指标。

override_file_checks - 默认时,如果文件不存在,验证将失败。该选项覆盖这种行为。

示例

 logfilepattern option:

**\*.class - 匹配所有以 .class 结尾的文件/目录  

test\a??.java - 在目录 test下,匹配所有以a开头,然后是俩个任意字符,后接 .java 的文件/目录。

** - 匹配目录树下的所有内容。

**\test\**\XYZ* - 匹配所有文件/目录,符合 以 "XYZ"开头,并且父目录是 test (例如: "abc\test\def\ghi\XYZ123").

具体示例:

匹配 /var/log 目录下的名为  messages* 或 *log  的文件/目录

basedir=/var/log 

logfilepattern=**/messsages*,**/*log 

includepattern=error|warn|too many threads running 

符合以上条件的文件是: 

/var/log/messages 

/var/log/cron.log 

/var/log/yum.log


下载免费开源Hyperic

你可能感兴趣的:(监控,apm,hyperic,文本日志,日志监控)