All Projects → zoilomora → elastic-apm-agent-php

zoilomora / elastic-apm-agent-php

Licence: MIT License
Elastic APM agent for PHP

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to elastic-apm-agent-php

elastic-apm-mule3-agent
Elastic APM agent for Mule 3.x
Stars: ✭ 18 (-51.35%)
Mutual labels:  apm, elastic
skywalking-kong
Kong agent for Apache SkyWalking
Stars: ✭ 17 (-54.05%)
Mutual labels:  apm, distributed-tracing
uptrace
Open source APM: OpenTelemetry traces, metrics, and logs
Stars: ✭ 1,187 (+3108.11%)
Mutual labels:  apm, distributed-tracing
gateway
A proxy to buffer and forward metrics, events, and traces.
Stars: ✭ 94 (+154.05%)
Mutual labels:  apm, distributed-tracing
easeagent
An agent component for the Java system
Stars: ✭ 437 (+1081.08%)
Mutual labels:  apm, distributed-tracing
Dd Trace Java
Datadog APM client for Java
Stars: ✭ 228 (+516.22%)
Mutual labels:  apm, distributed-tracing
elastic-apm-agent
Elastic Application Performance Monitoring (APM) agent for PHP
Stars: ✭ 48 (+29.73%)
Mutual labels:  apm, elastic
Apm Agent Rum Js
Elastic APM Real User Monitoring JavaScript agent
Stars: ✭ 166 (+348.65%)
Mutual labels:  apm, distributed-tracing
vaper
Take a look at the relations among servers.
Stars: ✭ 16 (-56.76%)
Mutual labels:  apm, distributed-tracing
elastic-apm-laravel
Laravel APM agent for Elastic v2 intake API
Stars: ✭ 64 (+72.97%)
Mutual labels:  apm, elastic
Skywalking Kubernetes
Apache SkyWalking Kubernetes Deployment Helm Chart
Stars: ✭ 207 (+459.46%)
Mutual labels:  apm, distributed-tracing
skywalking-nodejs
The NodeJS agent for Apache SkyWalking
Stars: ✭ 81 (+118.92%)
Mutual labels:  apm, distributed-tracing
Skywalking Docker
SkyWalking Docker file archive for all official releases
Stars: ✭ 206 (+456.76%)
Mutual labels:  apm, distributed-tracing
skywalking-python
The Python agent for Apache SkyWalking
Stars: ✭ 152 (+310.81%)
Mutual labels:  apm, distributed-tracing
Pinpoint C Agent
It is an agent written by C++, PHP, python languages. And we hope to support other languages by this agent. Until now, it supports [PHP],[C/C++] and [PYTHON].
Stars: ✭ 188 (+408.11%)
Mutual labels:  apm, distributed-tracing
datadog-trace-agent
Datadog Trace Agent archive (pre-6.10.0)
Stars: ✭ 70 (+89.19%)
Mutual labels:  apm, apm-agent
Apm Agent Php
Elastic APM PHP Agent
Stars: ✭ 129 (+248.65%)
Mutual labels:  apm, distributed-tracing
Pinpoint
APM, (Application Performance Management) tool for large-scale distributed systems.
Stars: ✭ 11,883 (+32016.22%)
Mutual labels:  apm, distributed-tracing
skywalking-client-js
Client-side JavaScript exception and tracing library for Apache SkyWalking APM.
Stars: ✭ 171 (+362.16%)
Mutual labels:  apm, distributed-tracing
skywalking-swck
Apache SkyWalking Cloud on Kubernetes
Stars: ✭ 62 (+67.57%)
Mutual labels:  apm, distributed-tracing

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

    composer require zoilomora/elastic-apm-agent-php

Usage

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

<?php

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

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].