krenor / prometheus-client
Prometheus 的 PHP 客户端
0.4.1
2019-12-15 16:48 UTC
Requires
- php: ^7.2
- ext-json: *
- guzzlehttp/guzzle: ^6.3
- tightenco/collect: ^6.0
Requires (Dev)
- ext-apcu: *
- ext-memcached: *
- ext-redis: *
- codedungeon/phpunit-result-printer: ^0.26.2
- mockery/mockery: ^1.2
- phpunit/phpunit: ^8.3
- predis/predis: ^1.1
Suggests
- ext-apcu: Required to use the APCu storage.
- ext-memcached: Required to use the Memcached storage.
- ext-redis: Required to use the Redis storage with a native client.
- predis/predis: Required to use the Redis storage with the predis client.
This package is auto-updated.
Last update: 2024-09-29 05:14:56 UTC
README
使用 Prometheus 监控您的 PHP 应用程序。
特性
- 支持计数器、仪表、直方图、汇总和自定义指标
- 多种 存储仓库
- 易于使用,类似于 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。