mcrinquand/zabbix_monitoring
v1.0
2017-10-16 15:20 UTC
Requires
- psr/log: ~1.0
Requires (Dev)
- doctrine/dbal: ~2.0
- symfony/config: ~2.7
- symfony/console: ~2.7
- symfony/dependency-injection: ~2.7
- symfony/http-kernel: ~2.7
This package is not auto-updated.
Last update: 2024-09-29 03:41:51 UTC
README
该仓库旨在提供一种简单的方式来实现Zabbix监控。
安装
使用Composer将包添加为依赖项
$ php composer.phar require mcrinquand/zabbix_monitoring
在内核中启用该包
<?php // app/AppKernel.php public function registerBundles() { $bundles = [ // ... new MCD\ZabbixMonitoringBundle\MCDZabbixMonitoringBundle(), ]; }
配置
然后您必须配置该包。
mcd_zabbix_monitoring: default: zabbix collectors: zabbix: type: zabbix prefix: apache host: localhost port: 10051
目前类型仅为zabbix。
使用方法
它允许您监控像计数器这样的数据。
监控分为两部分:首先是数据的聚合,然后是数据的发送。
记录数据
对于第一部分,您必须创建一个用于监控您的数据的类。该类必须扩展MCD\ZabbixMonitoringBundle\Zabbix\Monitoring\AbstractMonitoring,并定义为服务。它期望在构造函数中有一个文件路径。该参数是存储数据的文件路径,等待发送到您的Zabbix服务器。
以下是一个访客监控器的示例。
<?php namespace AppBundle\Monitorer; use MCD\ZabbixMonitoringBundle\Zabbix\Monitoring\AbstractMonitoring; class VisitorMonitorer extends AbstractMonitoring { }
将VisitorMonitorer设置为服务并指定数据保存的文件路径
services: AppBundle\Monitorer\VisitorMonitorer: class: 'AppBundle\Monitorer\VisitorMonitorer' public: true arguments: $filepath: '%kernel.root_dir%/../var/monitoring/visitor.txt'
记录一个或四个访客
$monitorer = $this->get('AppBundle\Monitorer\VisitorMonitorer'); // record one visitor $monitorer->incrementValue(); // record four visitor $monitorer->incrementValue(4);
发送数据
然后您可以定义任务将监控数据发送到您的Zabbix服务器。
您必须定义一个命令,使其扩展MCD\ZabbixMonitoringBundle\Zabbix\Command\AbstractMonitoringCommand,并声明为服务。将其要发送的监控类作为第二个参数。
然后您可以在crontab中声明该命令,以将值发送到Zabbix。
当命令发送数据时,它会“清除”当前计数。
作者
该包最初由Matthieu Crinquand创建。查看贡献者列表。
该包受到beberlei/metrics包的启发。