roger-russel/beholder-web-client

一个简单的PHP监控客户端

v0.12.0 2018-10-16 16:17 UTC

README

Travis:Master Codecov branch Latest Version Packagist Software License

Beholder是一个简单的PHP监控系统,此客户端旨在提供包含当前监控状态信息的JSON响应。

Try Beholder

此客户端可以与Zabbix和其他工具一起使用,只需设置它们读取此客户端提供的JSON文件即可。

依赖关系

  • PHP:5.6,原因?为了兼容性。
  • Composer
  • 库Yaml,仅在使用时需要。更多信息请参阅此处

某些模块可能有更多的依赖项,请参阅src/Eyes/ModuleName/Readme.md。

如何安装

使用以下命令将依赖项添加到composer.json文件中

$ composer require roger-russel/beholder-web-client;

如何使用

您可以在doc/ModelName文件夹中查看特定模型的配置。

require 'vendor/autoload.php';

$conf = [
  'eyes' => [
      'DB' => [ // This DB is just an alias, it can be anything
        'type' => 'Db\MySQL', // Model wich will be used, this will be usage Db\Mysql Model.
//      'driver' => 'PDO', // If this option is not setted it will try to use one on this order: PDO, mysqli or mysql. If setted it will force to use it.
        'host' => 'beholder-test-mysql',
        'user' => 'root',
        'password' => 'initial1234',
//      'port' => 3306, // If not setted it will use the default port 3306
        'dbname' => 'beholder_test',
        'querys' => [ // Query that will runned on a test, it will be executed into the following order: CREATE, INSERT, UPDATE, SELECT and DROP.
          'select' => 'select name from user limit 1'
        ]
      ]
  ]
];

$beholder = new BeholderWebClient\Observer($conf);
$beholder->run();

如何贡献

贡献很简单。创建一个分支并开始编码,然后发起一个pull请求。

您不仅可以代码贡献,还可以提交错误报告、提出功能请求或简单地提出建议。

如何在本地运行

使用Docker既容易又有趣!

  • 创建一个Docker网络

$ docker network create --driver bridge beholder-network

  • 构建项目并运行容器

$ docker-compose build

$ docker-compose up

  • 进入容器并运行composer安装依赖项

$ docker exec -it beholder-web-client bash

$ composer install

或单行命令

$ docker exec -it beholder-web-client composer install

运行codeception测试

在Docker容器运行时执行以下操作

$ docker exec -it beholder-web-client bash

$ codecept run

或单行命令

$ docker exec -it beholder-web-client codecept run

您可以运行特定的测试,如下所示

$ codecept run nfs

$ codecept run unit

如果您想运行MySQL测试,首先需要在tests/mysql/文件夹中启动Docker mysql容器。然后运行以下命令

$ codecept run mysql

许可证

Apache 2.0 版权所有 2017 Roger Russel 和 Alan Yoshida