Describe your environment
$ php -v
PHP 8.2.7 (cli) (built: Jun 8 2023 20:05:45) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.7, Copyright (c) Zend Technologies
with Zend OPcache v8.2.7, Copyright (c), by Zend Technologies
API:
"name": "open-telemetry/api",
"version": "1.0.0beta10",
SDK:
"name": "open-telemetry/sdk",
"version": "1.0.0beta12",
Steps to reproduce
Run the following script:
<?php
declare(strict_types=1);
use OpenTelemetry\API\Logs\LogRecord;
use OpenTelemetry\SDK\Sdk;
use OpenTelemetry\SDK\Common\Attribute\Attributes;
use OpenTelemetry\SDK\Common\Instrumentation\InstrumentationScopeFactory;
use OpenTelemetry\SDK\Common\Time\ClockFactory;
use OpenTelemetry\SDK\Logs\Exporter\ConsoleExporterFactory;
use OpenTelemetry\SDK\Logs\LoggerProvider;
use OpenTelemetry\SDK\Logs\Processor\BatchLogsProcessor;
require 'vendor/autoload.php';
$loggerProvider = new LoggerProvider(
new BatchLogsProcessor(
(new ConsoleExporterFactory())->create(),
ClockFactory::getDefault()
),
new InstrumentationScopeFactory(Attributes::factory())
);
Sdk::builder()
->setLoggerProvider($loggerProvider)
->setAutoShutdown(true)
->buildAndRegisterGlobal();
$logger = $loggerProvider->getLogger('demo', '1.0', 'http://schema.url', ['scopefoo' => 'scopebar']);
$record = (new LogRecord(['foo' => 'bar', 'baz' => 'bat', 'msg' => 'hello world']))
->setSeverityText('INFO')
->setSeverityNumber(9);
$logger->emit($record);
sleep(10);
What is the expected behavior?
Expect to see the log output in 1 second (default batch processor timeout).
What is the actual behavior?
Log is output after 10 seconds, when the script execution ends.
Additional context
Filed while reviewing open-telemetry/community#1537
Describe your environment
$ php -v
PHP 8.2.7 (cli) (built: Jun 8 2023 20:05:45) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.7, Copyright (c) Zend Technologies
with Zend OPcache v8.2.7, Copyright (c), by Zend Technologies
API:
SDK:
Steps to reproduce
Run the following script:
What is the expected behavior?
Expect to see the log output in 1 second (default batch processor timeout).
What is the actual behavior?
Log is output after 10 seconds, when the script execution ends.
Additional context
Filed while reviewing open-telemetry/community#1537