NAME

Log::Log4perl::Appender::OpenTelemetry - Send logs via OpenTelemetry

VERSION

version 0.001000

SYNOPSIS

use v5.42;
use Log::Log4perl;

# just to make our synopsis test no hang
local $ENV{OTEL_SDK_DISABLED} = false;

require OpenTelemetry::SDK;
OpenTelemetry::SDK->import;

# %x prefixes each log message with the NDC
my $log4perl_config = q{
    log4perl.logger = DEBUG, OpenTelemetry
    log4perl.appender.OpenTelemetry = Log::Log4perl::Appender::OpenTelemetry
    log4perl.appender.OpenTelemetry.layout = PatternLayout
    log4perl.appender.OpenTelemetry.layout.ConversionPattern = %x %m{chomp}
};

Log::Log4perl::init(\$log4perl_config);

my $log = Log::Log4perl->get_logger();

$log->warn('this is my message');

DESCRIPTION

This Log::Log4perl::Appender gets a OpenTelemetry::Logs::LoggerProvider, gets a logger via "logger" in OpenTelemetry::Logs::LoggerProvider and calls "emit_record" in OpenTelemetry::Logs::Logger.

METHODS

log

See "log" in Log::Log4perl::Appender.

AUTHOR

Alexander Hartmaier <alex@hartmaier.priv.at>

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Alexander Hartmaier.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.