Skip to content

A Yii 2 log target for streams in URL format

License

Notifications You must be signed in to change notification settings

ProcessFast/yii2-streamlog

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yii2 Streamlog

Latest Stable Version Total Downloads License

A Yii 2 log target for streams in URL format.

This log target allows you to log to any of the URL like targets that are supported by PHP. Typical use cases are docker containers that often log to STDOUT and STDERR, in which case the target urls would be php://stdout and php://stderr respectively.

It's also possible to use an already opened resource or one of PHP's predefined resource constants (only available in CLI context). See the $fp option below.

Installation and Configuration

Install the package through composer:

composer require codemix/yii2-streamlog

And then add this to your application configuration:

<?php
return [
    // ...
    'components' => [
        // ...
        'log' => [
            'targets' => [
                [
                    'class' => 'codemix\streamlog\Target',
                    'url' => 'php://stdout',
                    'levels' => ['info','trace'],
                    'logVars' => [],
                ],
                [
                    'class' => 'codemix\streamlog\Target',
                    'url' => 'php://stderr',
                    'levels' => ['error', 'warning'],
                    'logVars' => [],
                ],
            ],
        ],

Configuration Options

  • (string) $url the URL to use. See http://php.net/manual/en/wrappers.php for details. This gets ignored if $fp is configured.
  • (resource) $fp an open and writeable resource. This can also be one of PHP's predefined resources like STDOUT or STDERR, which are available in CLI context. (Since 1.2.0)
  • (string|null) $replaceNewline a string that should replace all newline characters in a log message. Default ist null for no replacement. (Since 1.1.0)
  • (bool) $disableTimestamp whether to omit the timestamp prefix. The default is false which will prepend every message with a timestamp generated by yii\log\Target::getTime(). (Since 1.3.0)
  • (string) $prefixString a string that will be prefixed to every message at the first position (even before the timestamp - if not disabled). Default is an empty string. (Since 1.3.0)
  • (bool) $enableLocking whether enable locking with flock() on the target. Note, that this is not supported by all stream types. Default is false. (Since 1.3.0)

About

A Yii 2 log target for streams in URL format

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%