tweedegolf / prometheus-client
该软件包已被废弃,不再维护。没有建议的替代软件包。
PHP Prometheus客户端库
v0.4.0
2022-01-10 21:21 UTC
Requires
- php: >=7.0
- ext-json: *
Requires (Dev)
- ext-redis: *
- phpunit/phpunit: 6.5.*|7.5.*
- predis/predis: ^1.1
README
由于Tweede Golf已经不再使用/维护此库(已有数年之久)- 此存储库已被归档。如果您愿意维护此库,请通过support@tweedegolf.com联系我们
Tweede Golf Prometheus PHP客户端
一个提供多个存储后端的Prometheus客户端,主要遵循Prometheus文档中指定的指南。
此库目前尚未实现Summary度量类型。对于使用Symfony的用户,有Prometheus客户端扩展包可用。
安装
此库使用Composer。只需运行以下命令即可将其添加为项目依赖项
composer require tweedegolf/prometheus-client
使用方法
首先,您必须创建一个CollectorRegistry
。您可以在此注册任意数量的度量收集器。要创建收集器注册表,您必须指定一个存储适配器。为了简化设置,您可能想尝试APC或APCU存储适配器。以下是一个示例
use TweedeGolf\PrometheusClient\CollectorRegistry; use TweedeGolf\PrometheusClient\Storage\ApcuAdapter; $registry = new CollectorRegistry(new ApcuAdapter()); $registry->createCounter('requests', [], null, true); $registry->createGauge('traffic', ['endpoint'], 'Active traffic per endpoint', true);
接下来,在某个事件(例如请求进入您的应用程序)时,您可以修改现有的度量。以下是一个示例
$registry->getCounter('requests')->inc(); $registry->getGauge('traffic')->set(10, ['/home']);
最后,您的应用程序应公开一些端点,Prometheus可以从中抓取度量
use TweedeGolf\PrometheusClient\Format\TextFormatter; $formatter = new TextFormatter(); header('Content-Type', $formatter->getMimeType()); echo $formatter->format($registry->collect());