Skip to content
Search
DSL ยท Monolog telemetry bridge

telemetry_handler

Definition

/**
 * Create a TelemetryHandler for forwarding Monolog logs to Flow Telemetry.
 *
 * @param Logger $logger The Flow Telemetry logger to forward logs to
 * @param LogRecordConverter $converter Converter to transform Monolog LogRecord to Telemetry LogRecord
 * @param Level $level The minimum logging level at which this handler will be triggered
 * @param bool $bubble Whether messages handled by this handler should bubble up to other handlers
 *
 * Example usage:
 * ```php
 * use Monolog\Logger as MonologLogger;
 * use function Flow\Bridge\Monolog\Telemetry\DSL\telemetry_handler;
 * use function Flow\Telemetry\DSL\telemetry;
 *
 * $telemetry = telemetry();
 * $logger = $telemetry->logger('my-app');
 *
 * $monolog = new MonologLogger('channel');
 * $monolog->pushHandler(telemetry_handler($logger));
 *
 * $monolog->info('User logged in', ['user_id' => 123]);
 * // โ†’ Forwarded to Flow Telemetry with INFO severity
 * ```
 *
 * Example with custom converter:
 * ```php
 * $converter = log_record_converter(
 *     severityMapper: severity_mapper([
 *         Level::Debug->value => Severity::TRACE,
 *     ])
 * );
 * $monolog->pushHandler(telemetry_handler($logger, $converter));
 * ```
 */
telemetry_handler(Logger $logger, LogRecordConverter $converter, Level $level, bool $bubble, ErrorHandler $errorHandler) : TelemetryHandler

Contributors

Built in the open.

Join us on GitHub
scroll back to top