zoilomora/

elastic-apm-agent-php

PHP 的 Elastic APM 代理

1.0.0 2020-12-16 13:16 UTC

This package is auto-updated.

Last update: 2024-09-16 21:31:24 UTC


README

PHP 的 Elastic APM 代理

Build Status Coverage Status Quality Status PHP Version Latest Version License

这是一个用 PHP 编写的代理,实现了 Intake API v2 方案,用于将跟踪信息发送到 Elastic APM

为什么?

我找不到一个官方的 APM 代理 为 PHP。

我已经搜索了非官方选项,但未找到任何具有 PHP 版本(>= 5.4)向后兼容性的选项。我知道 PHP 5.4 非常旧(2012 年 3 月 1 日),但今天仍然有代码在旧版本上工作。

我想让它尽可能容易地开发新服务,同时也让帮助旧代码重构变得更容易。

我已经基于官方 API 参考版本 7.8.1 进行开发。

安装

  1. 通过 composer 安装

    composer require zoilomora/elastic-apm-agent-php

使用

您可以实现任何 Reporter 以满足您的通信基础设施(同步、异步、redis、amqp 等)。

<?php

class OwnerReporter implements \ZoiloMora\ElasticAPM\Reporter\Reporter
{
    /**
     * @param array $events
     *
     * @return void
     */
    public function report(array $events)
    {
        // TODO: Implement report() method.
    }
}

如果您使用 Kubernetes,建议您使用 官方环境变量节点Pod 映射。

示例

使用此代理的包示例

自定义报告

事务包装器

HTTP 客户端

数据库

其他

开发所用的文档

致谢

许可

MIT 许可证 下授权

阅读 LICENSE 获取更多信息