{"id":18669484,"url":"https://github.com/zoilomora/elastic-apm-agent-php","last_synced_at":"2025-04-12T00:31:03.276Z","repository":{"id":55634602,"uuid":"257089066","full_name":"zoilomora/elastic-apm-agent-php","owner":"zoilomora","description":"Elastic APM agent for PHP","archived":false,"fork":false,"pushed_at":"2020-12-16T13:20:32.000Z","size":469,"stargazers_count":36,"open_issues_count":0,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-20T09:19:07.799Z","etag":null,"topics":["apm","apm-agent","distributed-tracing","elastic","elasticsearch","php"],"latest_commit_sha":null,"homepage":"https://packagist.org/packages/zoilomora/elastic-apm-agent-php","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zoilomora.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-04-19T19:52:12.000Z","updated_at":"2024-09-27T17:09:08.000Z","dependencies_parsed_at":"2022-08-15T05:00:58.766Z","dependency_job_id":null,"html_url":"https://github.com/zoilomora/elastic-apm-agent-php","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoilomora%2Felastic-apm-agent-php","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoilomora%2Felastic-apm-agent-php/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoilomora%2Felastic-apm-agent-php/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoilomora%2Felastic-apm-agent-php/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zoilomora","download_url":"https://codeload.github.com/zoilomora/elastic-apm-agent-php/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223486800,"owners_count":17153239,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apm","apm-agent","distributed-tracing","elastic","elasticsearch","php"],"created_at":"2024-11-07T08:47:21.140Z","updated_at":"2024-11-07T08:47:21.822Z","avatar_url":"https://github.com/zoilomora.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n    Elastic APM agent for PHP\n    \u003cbr\u003e\n    \u003ca href=\"#\"\u003e\n        \u003cimg src=\"docs/logo/logo.png\" width=\"25%\"\u003e\n    \u003c/a\u003e\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/zoilomora/elastic-apm-agent-php/actions?query=workflow%3A%22Build%22\"\u003e\u003cimg src=\"https://img.shields.io/github/workflow/status/zoilomora/elastic-apm-agent-php/Build?cacheSeconds=86400\" alt=\"Build Status\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://scrutinizer-ci.com/g/zoilomora/elastic-apm-agent-php/?branch=master\"\u003e\u003cimg src=\"https://img.shields.io/scrutinizer/coverage/g/zoilomora/elastic-apm-agent-php?cacheSeconds=86400\" alt=\"Coverage Status\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://scrutinizer-ci.com/g/zoilomora/elastic-apm-agent-php/?branch=master\"\u003e\u003cimg src=\"https://img.shields.io/scrutinizer/quality/g/zoilomora/elastic-apm-agent-php?cacheSeconds=86400\" alt=\"Quality Status\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://packagist.org/packages/zoilomora/elastic-apm-agent-php\"\u003e\u003cimg src=\"https://img.shields.io/packagist/php-v/zoilomora/elastic-apm-agent-php?cacheSeconds=86400\" alt=\"PHP Version\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/zoilomora/elastic-apm-agent-php/releases\"\u003e\u003cimg src=\"https://img.shields.io/packagist/v/zoilomora/elastic-apm-agent-php?include_prereleases\u0026cacheSeconds=86400\" alt=\"Latest Version\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/zoilomora/elastic-apm-agent-php/blob/master/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/github/license/zoilomora/elastic-apm-agent-php?cacheSeconds=86400\" alt=\"License\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nThis is an Agent written in PHP that implements the [Intake API v2] scheme to send tracking information to [Elastic APM].\n\n## Why?\n\nI couldn't find an [official APM Agent] for PHP.\n\nI have searched for unofficial options but I have not found any with backwards compatibility of PHP version (\u003e= 5.4).\nI know [PHP 5.4] is very old (01 Mar 2012) but today there is still code working even with older versions.\n\nI 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.\n\nI have based myself on the official [API reference of version 7.8.1].\n\n## Installation\n\n1) Install via [composer]\n\n    ```shell script\n    composer require zoilomora/elastic-apm-agent-php\n    ```\n\n## Usage\n\nYou can implement any **Reporter** to suit your communication infrastructure (sync, async, redis, amqp, etc...).\n\n```php\n\u003c?php\n\nclass OwnerReporter implements \\ZoiloMora\\ElasticAPM\\Reporter\\Reporter\n{\n    /**\n     * @param array $events\n     *\n     * @return void\n     */\n    public function report(array $events)\n    {\n        // TODO: Implement report() method.\n    }\n}\n```\n\nIf you are using **Kubernetes**, it is recommended that you use the [official environment variables] to map **Nodes** and **Pods**.\n\n## Examples\n\n- [Configuration](docs/examples/configuration.md)\n- [Metadata](docs/examples/metadata.md)\n- [Transaction Context](docs/examples/transaction-context.md)\n- [Agent Instantiate](docs/examples/agent-instantiate.md)\n- [Basic Usage](docs/examples/basic-usage.md)\n- [Distributed Tracing](docs/examples/distributed-tracing.md)\n\n## Examples of packages that use this Agent\n\n**Custom reports**\n- [PcComponentes/apm-redis-reporter](https://github.com/PcComponentes/apm-redis-reporter)\n\n**Transaction Wrappers**\n- [PcComponentes/apm-symfony-console](https://github.com/PcComponentes/apm-symfony-console)\n- [PcComponentes/apm-symfony-http-kernel](https://github.com/PcComponentes/apm-symfony-http-kernel)\n- [PcComponentes/apm-symfony-messenger](https://github.com/PcComponentes/apm-symfony-messenger)\n\n**HTTP Clients**\n- [PcComponentes/apm-symfony-http-client](https://github.com/PcComponentes/apm-symfony-http-client)\n- [PcComponentes/apm-guzzle](https://github.com/PcComponentes/apm-guzzle)\n\n**Databases**\n- [PcComponentes/apm-doctrine-dbal](https://github.com/PcComponentes/apm-doctrine-dbal)\n- [PcComponentes/apm-mongodb](https://github.com/PcComponentes/apm-mongodb)\n- [PcComponentes/apm-predis](https://github.com/PcComponentes/apm-predis)\n\n**Others**\n- [PcComponentes/apm-twig](https://github.com/PcComponentes/apm-twig)\n- [PcComponentes/apm-dompdf](https://github.com/PcComponentes/apm-dompdf)\n\n## Documentation used for development\n\n- [Building an agent](https://github.com/elastic/apm/blob/master/docs/agents/agent-development.md)\n\n## Credits\n- [Zoilo Mora][link-author]\n- [Verónica Expósito](https://www.linkedin.com/in/veronicaexpositocano/) (Logo)\n- [All Contributors][link-contributors]\n\n## License\nLicensed under the [MIT license](http://opensource.org/licenses/MIT)\n\nRead [LICENSE](LICENSE) for more information\n\n[link-author]: https://github.com/zoilomora\n[link-contributors]: https://github.com/zoilomora/elastic-apm-agent-php/contributors\n\n[Intake API v2]: https://www.elastic.co/guide/en/apm/server/7.8/intake-api.html\n[Elastic APM]: https://www.elastic.co/apm\n[official APM Agent]: https://www.elastic.co/guide/en/apm/agent/index.html\n[PHP 5.4]: https://www.php.net/ChangeLog-5.php#5.4.0\n[API reference of version 7.8.1]: https://github.com/elastic/apm-server/tree/ce6c49cecba96b45e0a3c1c64c6a874336416185/docs/spec\n[composer]: https://getcomposer.org/\n[official environment variables]: https://www.elastic.co/guide/en/apm/server/master/metadata-api.html#kubernetes-data\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoilomora%2Felastic-apm-agent-php","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzoilomora%2Felastic-apm-agent-php","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoilomora%2Felastic-apm-agent-php/lists"}