PHP code example of swissup / module-logger

1. Go to this page and download the library: Download swissup/module-logger library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

swissup / module-logger example snippets


// in pub/index.php or app/etc/env.php
define('MY_MODULE_DEBUG', true);

use Swissup\Logger\Logger\LoggerSingleton;

$logger = LoggerSingleton::getInstance('MY_MODULE_DEBUG', '[MyModule]');

$logger->info('Processing started');
$logger->debug('Item loaded', ['id' => 42]);
$logger->warning('Cache miss', ['key' => 'product_1']);
$logger->error('Failed to connect', ['host' => 'localhost']);

use Psr\Log\AbstractLogger;
use Swissup\Logger\Logger\LoggerSingleton;

class MyLogger extends AbstractLogger
{
    #[\ReturnTypeWillChange]
    public function log($level, $message, array $context = []): void
    {
        LoggerSingleton::getInstance('MY_MODULE_DEBUG', '[MyModule]')->log($level, $message, $context);
    }
}

use Swissup\Logger\Logger\BrowserConsoleLogger;

$logger = new BrowserConsoleLogger(enableGlobalStorage: true, prefix: '[MyModule]');

$logger->group('Processing request');
$logger->info('Step 1 complete');
$logger->debug('Data loaded', ['rows' => 150]);
$logger->warning('Slow query', ['ms' => 320]);
$logger->groupEnd();

// Inject into response HTML
echo $logger->flush();

use Swissup\Logger\Logger\CliLogger;

$logger = new CliLogger(prefix: '[MyModule]');

$logger->group('Processing');
$logger->debug('Step 1', ['size' => 1024]);
$logger->warning('Patch failed', ['nodeId' => 123]);
$logger->groupEnd();

$logger = new CliLogger(prefix: '[MyModule]', immediateOutput: false);
$logger->info('Step 1');
$logger->info('Step 2');
$output = $logger->flush(); // write all at once

$logger->info('User {id} logged in from {ip}', ['id' => 42, 'ip' => '127.0.0.1']);
// → "User 42 logged in from 127.0.0.1"