OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
firebase
/
vendor
/
monolog
/
monolog
/
src
/
Monolog
/
Handler
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
08/12/2024 10:35:58 AM
rwxr-xr-x
📄
AbstractHandler.php
2.71 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
AbstractProcessingHandler.php
1.52 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
AbstractSyslogHandler.php
3.24 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
AmqpHandler.php
5.12 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
BrowserConsoleHandler.php
9.3 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
BufferHandler.php
4.6 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
ChromePHPHandler.php
5.21 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
CouchDBHandler.php
2.64 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
CubeHandler.php
5.48 KB
08/12/2024 10:35:56 AM
rw-r--r--
📁
Curl
-
08/12/2024 10:36:32 AM
rwxr-xr-x
📄
DeduplicationHandler.php
6.42 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
DoctrineCouchDBHandler.php
1.17 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
DynamoDbHandler.php
1.97 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
ElasticaHandler.php
3.72 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
ElasticsearchHandler.php
7.01 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
ErrorLogHandler.php
2.71 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
FallbackGroupHandler.php
1.75 KB
08/12/2024 10:35:56 AM
rw-r--r--
📄
FilterHandler.php
7.12 KB
08/12/2024 10:35:57 AM
rw-r--r--
📁
FingersCrossed
-
08/12/2024 10:36:32 AM
rwxr-xr-x
📄
FingersCrossedHandler.php
8.21 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
FirePHPHandler.php
5.2 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
FleepHookHandler.php
3.57 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
FlowdockHandler.php
3.52 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
FormattableHandlerInterface.php
791 bytes
08/12/2024 10:35:57 AM
rw-r--r--
📄
FormattableHandlerTrait.php
1.29 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
GelfHandler.php
1.48 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
GroupHandler.php
3.32 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
Handler.php
1.27 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
HandlerInterface.php
2.79 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
HandlerWrapper.php
3.41 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
IFTTTHandler.php
2.29 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
InsightOpsHandler.php
2.11 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
LogEntriesHandler.php
1.93 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
LogglyHandler.php
4.17 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
LogmaticHandler.php
2.67 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
MailHandler.php
2.28 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
MandrillHandler.php
2.56 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
MissingExtensionException.php
494 bytes
08/12/2024 10:35:57 AM
rw-r--r--
📄
MongoDBHandler.php
2.39 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
NativeMailerHandler.php
5.05 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
NewRelicHandler.php
5.88 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
NoopHandler.php
950 bytes
08/12/2024 10:35:57 AM
rw-r--r--
📄
NullHandler.php
1.35 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
OverflowHandler.php
4.35 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
PHPConsoleHandler.php
12.22 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
ProcessHandler.php
5.24 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
ProcessableHandlerInterface.php
1.2 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
ProcessableHandlerTrait.php
1.65 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
PsrHandler.php
2.5 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
PushoverHandler.php
8.16 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
RedisHandler.php
2.76 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
RedisPubSubHandler.php
1.71 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
RollbarHandler.php
3.65 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
RotatingFileHandler.php
7.02 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
SamplingHandler.php
3.94 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
SendGridHandler.php
2.97 KB
08/12/2024 10:35:57 AM
rw-r--r--
📁
Slack
-
08/12/2024 10:36:32 AM
rwxr-xr-x
📄
SlackHandler.php
7.25 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
SlackWebhookHandler.php
3.92 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
SocketHandler.php
12.27 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
SqsHandler.php
1.77 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
StreamHandler.php
6.83 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
SymfonyMailerHandler.php
3.55 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
SyslogHandler.php
1.71 KB
08/12/2024 10:35:57 AM
rw-r--r--
📁
SyslogUdp
-
08/12/2024 10:36:32 AM
rwxr-xr-x
📄
SyslogUdpHandler.php
4.78 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
TelegramBotHandler.php
9.51 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
TestHandler.php
6.51 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
WebRequestRecognizerTrait.php
527 bytes
08/12/2024 10:35:57 AM
rw-r--r--
📄
WhatFailureGroupHandler.php
1.94 KB
08/12/2024 10:35:57 AM
rw-r--r--
📄
ZendMonitorHandler.php
2.87 KB
08/12/2024 10:35:57 AM
rw-r--r--
Editing: NewRelicHandler.php
Close
<?php declare(strict_types=1); /* * This file is part of the Monolog package. * * (c) Jordi Boggiano <j.boggiano@seld.be> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Monolog\Handler; use Monolog\Level; use Monolog\Utils; use Monolog\Formatter\NormalizerFormatter; use Monolog\Formatter\FormatterInterface; use Monolog\LogRecord; /** * Class to record a log on a NewRelic application. * Enabling New Relic High Security mode may prevent capture of useful information. * * This handler requires a NormalizerFormatter to function and expects an array in $record->formatted * * @see https://docs.newrelic.com/docs/agents/php-agent * @see https://docs.newrelic.com/docs/accounts-partnerships/accounts/security/high-security */ class NewRelicHandler extends AbstractProcessingHandler { /** * @inheritDoc */ public function __construct( int|string|Level $level = Level::Error, bool $bubble = true, /** * Name of the New Relic application that will receive logs from this handler. */ protected string|null $appName = null, /** * Some context and extra data is passed into the handler as arrays of values. Do we send them as is * (useful if we are using the API), or explode them for display on the NewRelic RPM website? */ protected bool $explodeArrays = false, /** * Name of the current transaction */ protected string|null $transactionName = null ) { parent::__construct($level, $bubble); } /** * @inheritDoc */ protected function write(LogRecord $record): void { if (!$this->isNewRelicEnabled()) { throw new MissingExtensionException('The newrelic PHP extension is required to use the NewRelicHandler'); } if (null !== ($appName = $this->getAppName($record->context))) { $this->setNewRelicAppName($appName); } if (null !== ($transactionName = $this->getTransactionName($record->context))) { $this->setNewRelicTransactionName($transactionName); unset($record->formatted['context']['transaction_name']); } if (isset($record->context['exception']) && $record->context['exception'] instanceof \Throwable) { newrelic_notice_error($record->message, $record->context['exception']); unset($record->formatted['context']['exception']); } else { newrelic_notice_error($record->message); } if (isset($record->formatted['context']) && \is_array($record->formatted['context'])) { foreach ($record->formatted['context'] as $key => $parameter) { if (\is_array($parameter) && $this->explodeArrays) { foreach ($parameter as $paramKey => $paramValue) { $this->setNewRelicParameter('context_' . $key . '_' . $paramKey, $paramValue); } } else { $this->setNewRelicParameter('context_' . $key, $parameter); } } } if (isset($record->formatted['extra']) && \is_array($record->formatted['extra'])) { foreach ($record->formatted['extra'] as $key => $parameter) { if (\is_array($parameter) && $this->explodeArrays) { foreach ($parameter as $paramKey => $paramValue) { $this->setNewRelicParameter('extra_' . $key . '_' . $paramKey, $paramValue); } } else { $this->setNewRelicParameter('extra_' . $key, $parameter); } } } } /** * Checks whether the NewRelic extension is enabled in the system. */ protected function isNewRelicEnabled(): bool { return \extension_loaded('newrelic'); } /** * Returns the appname where this log should be sent. Each log can override the default appname, set in this * handler's constructor, by providing the appname in it's context. * * @param mixed[] $context */ protected function getAppName(array $context): ?string { if (isset($context['appname'])) { return $context['appname']; } return $this->appName; } /** * Returns the name of the current transaction. Each log can override the default transaction name, set in this * handler's constructor, by providing the transaction_name in it's context * * @param mixed[] $context */ protected function getTransactionName(array $context): ?string { if (isset($context['transaction_name'])) { return $context['transaction_name']; } return $this->transactionName; } /** * Sets the NewRelic application that should receive this log. */ protected function setNewRelicAppName(string $appName): void { newrelic_set_appname($appName); } /** * Overwrites the name of the current transaction */ protected function setNewRelicTransactionName(string $transactionName): void { newrelic_name_transaction($transactionName); } /** * @param mixed $value */ protected function setNewRelicParameter(string $key, $value): void { if (null === $value || \is_scalar($value)) { newrelic_add_custom_parameter($key, $value); } else { newrelic_add_custom_parameter($key, Utils::jsonEncode($value, null, true)); } } /** * @inheritDoc */ protected function getDefaultFormatter(): FormatterInterface { return new NormalizerFormatter(); } }