Update monolog/monolog requirement from ^2.3 to ^2.3 || ^3.0 (#1551)

* Update monolog/monolog requirement from ^2.3 to ^2.3 || ^3.0

Updates the requirements on [monolog/monolog](https://github.com/Seldaek/monolog) to permit the latest version.
- [Release notes](https://github.com/Seldaek/monolog/releases)
- [Changelog](https://github.com/Seldaek/monolog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Seldaek/monolog/compare/2.3.0...3.9.0)

---
updated-dependencies:
- dependency-name: monolog/monolog
  dependency-version: 3.9.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* update monolog example

* style

* drop monolog 2.3 from example

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Brett McBride <brett@deakin.edu.au>
This commit is contained in:
dependabot[bot] 2025-04-08 11:19:29 +10:00 committed by GitHub
parent 1413c3470e
commit d084288a12
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 10 additions and 10 deletions

View File

@ -93,7 +93,7 @@
"guzzlehttp/psr7": "^2.1",
"mikey179/vfsstream": "^1.6.11",
"mockery/mockery": "^1.5.1",
"monolog/monolog": "^2.3",
"monolog/monolog": "^3.0",
"nyholm/psr7": "^1.4",
"open-telemetry/dev-tools": "dev-main",
"php-http/mock-client": "^1.5",

View File

@ -7,12 +7,12 @@ namespace OpenTelemetry\Example;
use Monolog\Handler\AbstractProcessingHandler;
use Monolog\Handler\StreamHandler;
use Monolog\Logger;
use Monolog\LogRecord as MonologLogRecord;
use OpenTelemetry\API\Globals;
use OpenTelemetry\API\Logs\Bridge;
use OpenTelemetry\API\Logs\LoggerInterface;
use OpenTelemetry\API\Logs\LoggerProviderInterface;
use OpenTelemetry\API\Logs\LogRecord;
use OpenTelemetry\API\Logs\Map\Psr3;
use OpenTelemetry\API\Logs\Severity;
use Psr\Log\LogLevel;
/**
@ -36,7 +36,7 @@ require __DIR__ . '/../../../vendor/autoload.php';
$streamHandler = new StreamHandler(STDOUT, LogLevel::DEBUG);
$tracer = Globals::tracerProvider()->getTracer('monolog-demo');
//otel handler for Monolog v2
//otel handler for Monolog v3
$otelHandler = new class(LogLevel::INFO) extends AbstractProcessingHandler {
private LoggerInterface $logger;
@ -50,19 +50,19 @@ $otelHandler = new class(LogLevel::INFO) extends AbstractProcessingHandler {
$this->logger = $provider->getLogger('monolog-demo', null, null, ['logging.library' => 'monolog']);
}
protected function write(array $record): void
protected function write(MonologLogRecord $record): void
{
$this->logger->emit($this->convert($record));
}
private function convert(array $record): LogRecord
private function convert(MonologLogRecord $record): LogRecord
{
return (new LogRecord($record['message']))
->setSeverityText($record['level_name'])
->setSeverityText($record->level->toPsrLogLevel())
->setTimestamp((int) (microtime(true) * LogRecord::NANOS_PER_SECOND))
->setObservedTimestamp($record['datetime']->format('U') * LogRecord::NANOS_PER_SECOND)
->setSeverityNumber(Psr3::severityNumber($record['level_name']))
->setAttributes($record['context'] + $record['extra']);
->setObservedTimestamp((int) $record->datetime->format('U') * LogRecord::NANOS_PER_SECOND)
->setSeverityNumber(Severity::fromPsr3($record->level->toPsrLogLevel()))
->setAttributes($record->context + $record->extra);
}
};