codemix / yii2-streamlog
支持URL格式的Yii 2日志目标
1.3.1
2020-03-26 13:23 UTC
README
支持URL格式的Yii 2日志目标。
此日志目标允许您将日志记录到任何PHP支持的URL目标,如docker容器通常记录到STDOUT
和STDERR
,在这种情况下,目标URL将分别是php://stdout
和php://stderr
。
还可以使用已经打开的资源或PHP的预定义资源常量(仅在CLI上下文中可用)。请参阅下面的$fp
选项。
安装和配置
通过 composer 安装包
composer require codemix/yii2-streamlog
然后将以下内容添加到您的应用程序配置中
<?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' => [], ], ], ],
配置选项
- (字符串)
$url
要使用的URL。有关详细信息,请参阅 https://php.ac.cn/manual/en/wrappers.php。如果已配置$fp
,则忽略此选项。 - (资源)
$fp
一个打开且可写的资源。这也可以是PHP的预定义资源,如STDOUT
或STDERR
,它们在CLI上下文中可用。(自1.2.0版本起) - (字符串或null)
$replaceNewline
应替换日志消息中所有换行符的字符串。默认为null
,表示不替换。(自1.1.0版本起) - (布尔值)
$disableTimestamp
是否省略时间戳前缀。默认为false
,将在每条消息前添加由yii\log\Target::getTime()
生成的时间戳。(自1.3.0版本起) - (字符串)
$prefixString
将前缀字符串添加到每条消息的第一个位置(即使是在时间戳之前 - 如果未禁用)。默认为空字符串。(自1.3.0版本起) - (布尔值)
$enableLocking
是否启用在目标上使用flock()
的锁定。注意,这不是所有流类型都支持的。默认为false
。(自1.3.0版本起)