项目作者: zoilomora

项目描述 :
Elastic APM agent for PHP
高级语言: PHP
项目地址: git://github.com/zoilomora/elastic-apm-agent-php.git
创建时间: 2020-04-19T19:52:12Z
项目社区:https://github.com/zoilomora/elastic-apm-agent-php

开源协议:MIT License

下载



Elastic APM agent for PHP






Build Status
Coverage Status
Quality Status
PHP Version
Latest Version
License

This is an Agent written in PHP that implements the Intake API v2 scheme to send tracking information to Elastic APM.

Why?

I couldn’t find an official APM Agent for PHP.

I have searched for unofficial options but I have not found any with backwards compatibility of PHP version (>= 5.4).
I know PHP 5.4 is very old (01 Mar 2012) but today there is still code working even with older versions.

I wanted to make it as easy as possible to develop new services and also to make it possible to help legacy code refactors be easier to accomplish.

I have based myself on the official API reference of version 7.8.1.

Installation

1) Install via composer

  1. ```shell script
  2. composer require zoilomora/elastic-apm-agent-php
  3. ```

Usage

You can implement any Reporter to suit your communication infrastructure (sync, async, redis, amqp, etc…).

  1. <?php
  2. class OwnerReporter implements \ZoiloMora\ElasticAPM\Reporter\Reporter
  3. {
  4. /**
  5. * @param array $events
  6. *
  7. * @return void
  8. */
  9. public function report(array $events)
  10. {
  11. // TODO: Implement report() method.
  12. }
  13. }

If you are using Kubernetes, it is recommended that you use the official environment variables to map Nodes and Pods.

Examples

Examples of packages that use this Agent

Custom reports

Transaction Wrappers

HTTP Clients

Databases

Others

Documentation used for development

Credits

License

Licensed under the MIT license

Read LICENSE for more information