clivern/observability-php-sdk

适用于PHP应用程序的可观测性SDK。

2.0.8 2021-06-27 12:30 UTC

README

observability-php-sdk logo

可观测性SDK

适用于PHP应用程序的可观测性SDK

文档

安装

要通过composer安装此包,请使用以下命令:

$ composer require clivern/observability-php-sdk

此命令要求您已全局安装composer

Graphite Reporter

use Clivern\Observability\Aggregation\MemcachedAggregate;
use Clivern\Observability\Aggregation\Client\MemcachedClient;
use Clivern\Observability\Reporter\GraphiteClient;


$metricsReporter = new MemcachedAggregate(
    new GraphiteClient('localhost', 2003),
    new MemcachedClient('127.0.0.1', 11211),
    []
);

$metricsReporter->report([
    [
        'key' => 'orders_service.metrics.total_http_calls',
        'value' => 1,
        'time' => time(),
        'aggregateFunc' => MemcachedAggregate::SUM_AGGREGATE_FUNCTION
    ]
]);

对于PHP运行时统计,您可以使用此类Clivern\Observability\Stats\Runtime

测量执行时间

use Clivern\Observability\Stats\Execution;


$execution = new Execution();
$execution->start();

// Code that takes time!
sleep(2);

$execution->end();

var_dump($execution->getTimeInSeconds()); // float
var_dump($execution->getTimeInMinutes()); // float

测量HTTP调用或应用程序延迟。

use Clivern\Observability\Aggregation\MemcachedAggregate;
use Clivern\Observability\Aggregation\Client\MemcachedClient;
use Clivern\Observability\Reporter\GraphiteClient;


$metricsReporter = new MemcachedAggregate(
    new GraphiteClient('localhost', 2003),
    new MemcachedClient('127.0.0.1', 11211),
    []
);

$execution = new Execution();
$execution->start();

// Code that takes time!
sleep(2);

$execution->end();

$metricsReporter->report([
    [
        'key' => 'orders_service.metrics.http_request_latency',
        'value' => $execution->getTimeInSeconds(),
        'time' => time(),
        'aggregateFunc' => MemcachedAggregate::AVG_AGGREGATE_FUNCTION
    ]
]);

Elasticsearch Reporter

#

版本控制

为了提高发布周期的透明度并努力保持向后兼容性,observability-php-sdk遵循语义版本控制指南,发布过程是可预测且对商业友好的。

请参阅我们GitHub项目的发布部分以获取每个发布版本的changelog。它包含每个版本中做出的最值得注意的是的更改的摘要。

错误追踪器

如果您有任何建议、错误报告或不满,请向我们的错误追踪器https://github.com/clivern/observability-php-sdk/issues报告。

安全问题

如果您在observability-php-sdk中发现了安全漏洞,请发送电子邮件至hello@clivern.com

贡献

我们是一个开源、社区驱动型项目,所以请随时加入我们。有关更多详细信息,请参阅贡献指南

许可证

© 2020, clivern。在MIT许可证下发布。

observability-php-sdk@clivern编写和维护。