PHPackages                             uengage.io/php-logger - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. uengage.io/php-logger

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

uengage.io/php-logger
=====================

Structured observability logging for uEngage platform services

v0.10.0(1mo ago)027MITPHPPHP &gt;=7.1

Since Apr 15Pushed 1mo agoCompare

[ Source](https://github.com/uengage-io/php-logger)[ Packagist](https://packagist.org/packages/uengage.io/php-logger)[ RSS](/packages/uengageio-php-logger/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (2)Versions (10)Used By (0)

uengage.io/php-logger
=====================

[](#uengageiophp-logger)

Structured observability logging for uEngage platform services. Write logs to a local file, POST them over HTTP, or emit to stdout - same JSON schema regardless of transport.

---

Table of Contents
-----------------

[](#table-of-contents)

- [uengage.io/php-logger](#uengageiophp-logger)
    - [Table of Contents](#table-of-contents)
    - [Overview](#overview)
    - [Requirements](#requirements)
    - [Installation](#installation)
    - [Quick Start](#quick-start)
        - [File transporter (server / EC2)](#file-transporter-server--ec2)
        - [HTTP transporter (no cloud agent)](#http-transporter-no-cloud-agent)
        - [Stdout transporter (Lambda / Docker)](#stdout-transporter-lambda--docker)
    - [Log Schema](#log-schema)
    - [Initialization](#initialization)
        - [Config Reference](#config-reference)
    - [Transporters](#transporters)
        - [File Transporter](#file-transporter)
        - [HTTP Transporter](#http-transporter)
        - [Stdout Transporter](#stdout-transporter)
    - [Log Methods](#log-methods)
        - [Method Signature](#method-signature)
        - [Log Options Reference](#log-options-reference)
    - [Level Filtering](#level-filtering)
    - [Graceful Shutdown](#graceful-shutdown)
    - [CodeIgniter 2 Integration](#codeigniter-2-integration)
        - [Prerequisite - load Composer autoloader](#prerequisite--load-composer-autoloader)
        - [Logger\_service library](#logger_service-library)
        - [Flushing HTTP batch mode in CI2](#flushing-http-batch-mode-in-ci2)
    - [CodeIgniter 4 Integration](#codeigniter-4-integration)
    - [PHP-Specific Notes](#php-specific-notes)
    - [Examples](#examples)
        - [Business event - order placed](#business-event--order-placed)
        - [Engineering error - payment gateway timeout](#engineering-error--payment-gateway-timeout)
        - [Warning - rate limit approaching](#warning--rate-limit-approaching)
        - [Debug - database query](#debug--database-query)
    - [Architecture](#architecture)
    - [Running Tests](#running-tests)

---

Overview
--------

[](#overview)

`uengage/logger` provides a single `Logger` class with four log-level methods (`info`, `error`, `debug`, `warn`). On initialization you choose a **transport**:

TransportHow it worksBest for`file`Appends NDJSON lines to `{basePath}/application/{product}.log`EC2/server - CloudWatch Agent, Datadog Agent, or Fluentd ships the file`http`POSTs JSON to an HTTP endpointEnvironments without a cloud agent`stdout`Writes one NDJSON line per entry to `php://stdout`Lambda (Bref / custom runtime), DockerThe log schema is identical to the Node.js `@uengage/logger` package - uniform cross-service log analysis.

---

Requirements
------------

[](#requirements)

- PHP &gt;= 7.1
- `ext-curl` (required for HTTP transporter; standard on virtually all hosting environments)
- Composer

---

Installation
------------

[](#installation)

```
composer require uengage.io/php-logger
```

---

Quick Start
-----------

[](#quick-start)

### File transporter (server / EC2)

[](#file-transporter-server--ec2)

```
