---
name: "Plack::Middleware::Log4perl"
section: "3pm"
platform: "linux"
package: "libplack-perl"
version: "1.0051-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Plack::Middleware::Log4perl"
---

# Plack::Middleware::Log4perl(3pm)

Uses Log::Log4perl to configure logger

## NAME

Plack::Middleware::Log4perl - Uses Log::Log4perl to configure logger

## SYNOPSIS

```
  my $app = sub {
      my $env =  shift;
      $env->{'psgix.logger'}({ level => 'error', message => 'Hi' });
      return [
          '200',
          [ 'Content-Type' => 'text/plain' ],
          [ "Hello World" ],
      ];
  };
  # Use your own Log4perl configuration
  use Log::Log4perl;
  Log::Log4perl::init('/path/to/log4perl.conf');
  builder {
      # tell the logger to log with 'plack' category
      enable "Log4perl", category => "plack";
      $app;
  }
  # Configure with Log4perl middleware options
  builder {
      enable "Log4perl", category => "plack", conf => '/path/to/log4perl.conf';
      $app;
  }
```

## DESCRIPTION

Log4perl is a Plack::Middleware component that allows you to use Log::Log4perl to configure the logging object `"psgix.logger"` for a given category.

## CONFIGURATION

- category

  The `"log4perl"` category to send logs to. Defaults to `''` which means it send to the root logger.

- conf

  The configuration file path (or a scalar ref containing the config string) for Log::Log4perl to automatically configure.

## AUTHOR

Tatsuhiko Miyagawa

## SEE ALSO

Log::Log4perl

Plack::Middleware::LogDispatch
