vyshinsky/hipchat-logger

为HipChat提供的简单日志类

1.1.2 2014-09-18 11:54 UTC

This package is not auto-updated.

Last update: 2024-09-24 00:50:10 UTC


README

兼容PSR-3的日志类,会将通知发送到你的HipChat聊天室。

截图(使用Nette框架的Tracy桥拍摄)

Screenshot

安装

使用 composer require vysinsky/hipchat-logger:@dev 安装

配置

Vysinsky\HipChat\Logger 有一些静态属性,您可以使用它们进行配置

  • notifyLevels - 允许通知(HipChat的弹出窗口)的级别数组
  • colors - 基于日志级别的颜色设置。在未知键的情况下,将使用黄色

支持的桥梁

Nette框架 (Tracy)

对于Nette,有一个编译器扩展。只需将其添加到neon配置中的扩展列表即可

hipChatLogger: Vysinsky\HipChat\Bridges\Tracy\DI\Extension

并添加一些配置

hipChatLogger:
    accessToken: yourAccessToken
    roomName: test
    filters:
        - [LoggerFilter, filterAccess]
    linkFactory: [MyLinkFactory::createLink] # Set link factory

其他功能

过滤器

您现在可以轻松过滤消息并决定是否发送消息。过滤器是简单的回调,它接收 $level、$message 和 $context 作为参数。过滤器返回布尔值 $shouldSend。一旦任何过滤器返回 FALSE,则执行停止。

示例(我们不想记录404错误)

class LoggerFilter 
{
    function filterAccess($level, $message, $context)
    {
        return $level !== 'access';
    }
}

日志文件链接工厂

您可以将回调工厂设置到Logger中,这样它就会创建指向日志文件的链接,并在链接可用时将其发送到消息中。

您可以通过调用 setLinkToLogFileFactory 来设置它(仅适用于Vysinsky\HipChat\Bridges\Tracy)

$logger->setLinkToLogFileFactory(function(Vysinsky\HipChat\Bridges\Tracy $logger, $logPath){
	return $logger->extractLogPath($logPath);
});