定制 studiosite/monitoring-bundle 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

studiosite/monitoring-bundle

Composer 安装命令:

composer require studiosite/monitoring-bundle

包简介

Bundle for monitoring the simple parameters in yours projects

README 文档

README

Sometimes it becomes necessary to monitor some parameters using external monitoring systems (for example, zabbix). The bundle makes it very easy

Step 1: Download the Bundle

Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:

$ composer require studiosite/monitoring-bundle

Step 2: Enable the Bundle

Then, enable the bundle by adding it to the list of registered bundles in the app/AppKernel.php file of your project:

<?php
// app/AppKernel.php

class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...

            new StudioSite\MonitoringBundle\StudioSiteMonitoringBundle(),
        );
    }
}

Step 3: Configuration

studio_site_monitoring:
    # path to console file for zabbix config generator
    # usually the bundle finds the desired path
    console: "%kernel.root_dir%/../bin/console"

Example of use

Consider an example service that provides values of parameters

<?php
// AppBundle/Service/SomeService.php

class SomeService
{
    // Your magic...

    public function getSomeValue()
    {
        return 'teststring';
    }

    public function getCount()
    {
        return 100;
    }

    public function getSum($a, $b)
    {
        return $a + $b;
    }
}

The service description in DI

services:
    app_bundle.some_service:
        class: AppBundle\Service\SomeService
        tags:
            - { name: studiosite_monitoring.parameter, method: getSomeValue, key: app.some_value }
            - { name: studiosite_monitoring.parameter, method: getCount, key: app.count }
            - { name: studiosite_monitoring.parameter, method: getSum, key: app.sum }

Now you can get parameter values

# To see a list of available parameters:
$ php bin/console studiosite:monitoring:get

The list of available parameters:
    app.some_value
    app.count
    app.sum <a> <b>

# To get the value of the parameter:

$ php bin/console studiosite:monitoring:get app.some_value
teststring

$ php bin/console studiosite:monitoring:get app.sum 100 100
200

Generate zabbix user parameter config

The bundle can generate a configuration for all the collected parameters in zabbix userparameter format

$ php bin/console studiosite:monitoring:zabbix /etc/zabbix/conf.d/symfony.conf
Write config to /etc/zabbix/conf.d/symfony.conf? y

$ cat /etc/zabbix/conf.d/symfony.conf
UserParameter=app.some_value[*], /var/www/dev/bin/console studiosite:monitoring:get app.some_value --no-debug -e prod
UserParameter=app.count[*], /var/www/dev/bin/console studiosite:monitoring:get app.count --no-debug -e prod
UserParameter=app.sum[*], /var/www/dev/bin/console studiosite:monitoring:get app.sum $1 $2 --no-debug -e prod

统计信息

  • 总下载量: 444
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-08-30

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固