https://github.com/czproject/logger
Output logger.
https://github.com/czproject/logger
logger logging php
Last synced: 11 months ago
JSON representation
Output logger.
- Host: GitHub
- URL: https://github.com/czproject/logger
- Owner: czproject
- License: other
- Created: 2016-10-14T14:39:43.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2025-06-10T18:37:51.000Z (about 1 year ago)
- Last Synced: 2025-07-11T06:29:24.599Z (12 months ago)
- Topics: logger, logging, php
- Language: PHP
- Homepage:
- Size: 19.5 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- Funding: .github/funding.yml
- License: license.md
Awesome Lists containing this project
README
# CzProject\Logger
[](https://github.com/czproject/logger/actions)
[](https://packagist.org/packages/czproject/logger)
[](https://github.com/czproject/logger/releases)
[](https://github.com/czproject/logger/blob/master/license.md)
## Installation
[Download a latest package](https://github.com/czproject/logger/releases) or use [Composer](http://getcomposer.org/):
```
composer require czproject/logger
```
CzProject\Logger requires PHP 8.0 or later.
## Usage
``` php
use CzProject\Logger;
use CzProject\Logger\ILogger;
$logger = new Logger\OutputLogger(ILogger::DEBUG); // minimal level
$logger->log('Debug info', ILogger::DEBUG);
$logger->log('Output', ILogger::INFO);
$logger->log('Done!', ILogger::SUCCESS);
$logger->log('Warning...', ILogger::WARNING);
$logger->log('Error message', ILogger::ERROR);
$logger->log('Exception message', ILogger::EXCEPTION);
$logger->log('App crashed.', ILogger::CRITICAL);
```
### Loggers
* `CzProject\Logger\CliLogger($level, $colored = NULL)` - sends messages to CLI STDOUT
* `CzProject\Logger\OutputLogger($level)` - prints messages to STDOUT
* `CzProject\Logger\FileLogger($path, $level)` - saves messages into new created file
* `CzProject\Logger\MemoryLogger($level)` - saves messages into memory, you can use `$memoryLogger->getLog()`
* `CzProject\Logger\MultiLogger()` - sends messages to other loggers
``` php
$logger = new Logger\MultiLogger;
$logger->addLogger(new Logger\OutputLogger(ILogger::INFO));
$logger->addLogger(new Logger\FileLogger(__DIR__ . '/debug.log', ILogger::DEBUG));
$logger->log($msg, $level);
```
### LoggerProxy
LoggerProxy is interface for using of Logger.
```php
$logger = new Logger\OutputLogger(ILogger::DEBUG); // minimal level
$proxy = new Logger\LoggerProxy($logger);
$proxy->debug('Debug info');
$proxy->log('Output'); // or $proxy->info()
$proxy->success('Done!');
$proxy->warning('Warning...', ILogger::WARNING);
$proxy->error('Error message', ILogger::ERROR);
$proxy->exception('Exception message', ILogger::EXCEPTION);
$proxy->critical('App crashed.', ILogger::CRITICAL);
```
------------------------------
License: [New BSD License](license.md)
Author: Jan Pecha, https://www.janpecha.cz/