aseemann/php-livelog

为您的php项目提供实时日志记录器。查看您发送到日志记录器的请求。

v0.0.1 2021-12-18 19:56 UTC

This package is auto-updated.

Last update: 2024-09-12 21:59:27 UTC


README

它能做什么

这个小工具可以通过提供实时跟踪网络应用程序日志的可能来简化开发者的生活。

您无需在机器上直接使用tailgrep来查看日志文件,也不需要下载它。日志只会在当前会话中写入,所以您只能看到您自己的请求日志。

安装

建议的安装方法是通过composer composer req aseemann/php-livelog。安装包后,您需要在公共目录中的web文件夹设置一个符号链接,例如 ln -s vendor/aseemann/php-livelog/web docroot/livelog

现在您可以在Web浏览器中通过符号链接的路径打开日志仪表板。例如 domian.tld/livelog

为了更容易设置,您可以在composer.json文件的scripts部分添加以下内容。

{
    "scripts": {
        "set-symlinks": [
            "ln -sfT ../vendor/aseemann/php-livelog/web docroot/livelog"
        ],
        "post-install-cmd": [
            "@set-symlinks"
        ],
        "post-update-cmd": [
            "@set-symlinks"
        ]
    }
}

如何使用

要将日志发送到日志页面,请将记录器集成到您的脚本中,如下所述。

$logger = new \ASeemann\PhpLiveLog\Logger('Application Name', 'LoggerName');

$logger->info('A small info massage');

$logger->notice('Some notice', ['data' => 'data for notice']);

之后,日志应该按照请求分组显示在日志页面上。

screenshot

连接器

为了方便集成到某些项目中,也提供了连接器。因此,您只需要在应用程序中添加一些配置,您应用程序的所有日志都会显示在日志页面上。

TYPO3

将以下行添加到您的AdditionalConfiguration.php中

$GLOBALS['TYPO3_CONF_VARS']['FE']['debug'] = true;
$GLOBALS['TYPO3_CONF_VARS']['BE']['debug'] = true;
$GLOBALS['TYPO3_CONF_VARS']['SYS']['enable_DLOG'] = true,
$GLOBALS['TYPO3_CONF_VARS']['SYS']['enable_errorDLOG'] = true,
$GLOBALS['TYPO3_CONF_VARS']['SYS']['enable_exceptionDLOG'] = true,
$GLOBALS['TYPO3_CONF_VARS']['SYS']['systemLogLevel'] = 0,

if (false === is_array($GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration'][\TYPO3\CMS\Core\Log\LogLevel::DEBUG])) {
    $GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration'][\TYPO3\CMS\Core\Log\LogLevel::DEBUG] = [];
}

$GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration'][\TYPO3\CMS\Core\Log\LogLevel::DEBUG]
[\ASeemann\PhpLiveLog\Connector\TYPO3\LogWriter::class] = [
];

$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_div.php']['devLog'] = [];
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_div.php']['devLog'][]
    = \ASeemann\PhpLiveLog\Connector\TYPO3\DevLogger::class . "->devLogger";

从这里取出的行可能因您的typo3安装而异。

您还有排除某些记录器的可能性。因此,您可以专注于您想看到的内容。要排除记录器,请将ignorePattern选项传递给日志写入器。

示例:(忽略所有名称中包含Frontend的记录器)

$GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration'][\TYPO3\CMS\Core\Log\LogLevel::DEBUG]
[\ASeemann\PhpLiveLog\Connector\TYPO3\LogWriter::class] = [
    'ignorePattern' => '.*Frontend.*'
];

待办事项

  • 为上下文添加格式化器
  • 在上下文中转义标签
  • 添加更多连接器。