roger-russel / beholder-web-client
一个简单的PHP监控客户端
Requires
- php: >=5.5
Requires (Dev)
- codeception/c3: ^2.0
- codeception/codeception: ^2.3
Suggests
- yaml: Needed to support Yaml configuration file.
This package is auto-updated.
Last update: 2024-09-17 09:41:25 UTC
README
Beholder是一个简单的PHP监控系统,此客户端旨在提供包含当前监控状态信息的JSON响应。
此客户端可以与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