codemix/yii2-streamlog

支持URL格式的Yii 2日志目标

1.3.1 2020-03-26 13:23 UTC

This package is auto-updated.

Last update: 2024-08-29 03:36:09 UTC


README

Latest Stable Version Total Downloads License

支持URL格式的Yii 2日志目标。

此日志目标允许您将日志记录到任何PHP支持的URL目标,如docker容器通常记录到STDOUTSTDERR,在这种情况下,目标URL将分别是php://stdoutphp://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的预定义资源,如STDOUTSTDERR,它们在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版本起)