kusebauch/nette-new-relic-logger

该软件包已废弃,不再维护。未建议替代软件包。

New Relic 的 Nette 框架和 Tracy 的日志装饰器

1.0.1 2016-05-29 01:27 UTC

This package is not auto-updated.

Last update: 2020-11-16 11:24:40 UTC


README

记录应用请求

记录所有 Nette 应用请求和记录应用异常(除了 404),但不记录代码中的错误。

  1. 仅当您的 NewRelic
  • 已安装
  • 已启用
  • 通过 Bootstrap::setup() 配置
$application = new Application();
\Kusebauch\NetteNewRelicLogger\Bootstrap::addOnError(['\Kusebauch\NetteNewRelicLogger\Utils', onAppError], $application);
\Kusebauch\NetteNewRelicLogger\Bootstrap::addOnRequest(['\Kusebauch\NetteNewRelicLogger\Utils', onAppRequest], $application);
  1. 尝试运行(如果您未安装 NewRelic 代理,将会出现问题)
$application = new Application();
$application->onError[] = ['\Kusebauch\NetteNewRelicLogger\Utils', onAppError];
$application->onRequest[] = ['\Kusebauch\NetteNewRelicLogger\Utils', onAppRequest];

记录应用错误

在当前的 Tracy 日志装饰器之上创建。您的应用程序将继续以以前的方式记录日志,但将在其之上记录到 New Relic。

$oldLogger = \Tracy\Debugger::getLogger();
$newLogger = new \Kusebauch\NetteNewRelicLogger\Bridges\Tracy\LoggerDecorator($oldLogger);
$newLogger->excludeMessageFunc[] = ['\Kusebauch\NetteNewRelicLogger\Utils', 'noticeLoggerFilter'];
$newLogger->excludeMessageFunc[] = ['\Kusebauch\NetteNewRelicLogger\Utils', 'strictLoggerFilter'];
$newLogger->includeMessageFunc[] = function ($message, $priority) { 
    return in_array($priority, [\Tracy\ILogger::CRITICAL, \Tracy\ILogger::ERROR, \Tracy\ILogger::EXCEPTION]);
};
\Tracy\Debugger::setLogger($newLogger);