krenor/prometheus-client

Prometheus 的 PHP 客户端

0.4.1 2019-12-15 16:48 UTC

This package is auto-updated.

Last update: 2024-09-29 05:14:56 UTC


README

使用 Prometheus 监控您的 PHP 应用程序。

icon-version icon-php icon-build
icon-code-quality icon-code-coverage icon-license

特性

  • 支持计数器、仪表、直方图、汇总和自定义指标
  • 多种 存储仓库
  • 易于使用,类似于 Laravel 的 Eloquent ORM
  • 无标签的指标初始化
  • 支持浮点值
  • 推送网关
  • 状态导出器(用于 fpm_get_status()opcache_get_status()

计划中的功能

  • PHP 7.4 重写
  • Laravel 集成

项目状态

此库目前正在开发中。

只要它没有标记为 >= 1.* 版本,我 可能 会提交不兼容的更改!

快速入门

<?php

use Krenor\Prometheus\Metrics\Metric;
use Krenor\Prometheus\Metrics\Counter;
use Krenor\Prometheus\CollectorRegistry;
use Krenor\Prometheus\Renderer\TextRenderer;
use Krenor\Prometheus\Storage\StorageManager;
use Krenor\Prometheus\Storage\Repositories\InMemoryRepository;
use Krenor\Prometheus\Tests\Stubs\MultipleLabelsCounterStub as ExampleCounter;

Metric::storeUsing(new StorageManager(new InMemoryRepository));

$registry = new CollectorRegistry;

$counter = $registry->register(new ExampleCounter);

$counter->increment(['some', 'label', 'values']);
$counter->incrementBy(3, ['foo', 'bar', 'baz']);

$samples = $registry->collect();
$metrics = (new TextRenderer)->render($samples);

更详细的文档可以在此处找到 这里

注意:由于此项目正在开发中,某些部分可能缺乏文档。
如果某些内容不清楚,您可以 参考测试

贡献

请参阅 CONTRIBUTING 获取更多信息。

许可证

MIT 许可证。有关更多信息,请参阅 LICENSE