---
name: "Poet::Manual::Configuring"
section: "3pm"
platform: "linux"
package: "libpoet-perl"
version: "0.16-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Poet::Manual::Configuring"
---

# Poet::Manual::Configuring(3pm)

Built-in Poet configuration options

## NAME

Poet::Manual::Configuring - Built-in Poet configuration options

## DESCRIPTION

This is a list of configuration keys used by Poet itself. These may be placed in any Poet conf file, e.g. `"local.cfg"` or `"conf/global/*.cfg"`.

Entries like `"foo.bar"` can be listed either in dot notation

```
    foo.bar: 5
```

or as part of a hash:

```
    foo:
       bar: 5
```

See Dot notation for details.

- cache

  The entire hash under this entry will be passed to Poet::Cache-\>**config()**. See Poet::Cache for examples. e.g.

  ```
     cache:
        defaults:
           expires_variance: 0.2
        storage:
           file:
              driver: File
              root_dir: ${root}/data/cache
           memcached:
              driver: Memcached
              servers: ["10.0.0.15:11211", "10.0.0.15:11212"]
              compress_threshold: 4096
        namespace:
           /some/component:       { storage: file, expires_in: 5min }
           /some/other/component: { storage: memcached, expires_in: 1h }
           Some::Library:         { storage: memcached, expires_in: 10min }
  ```

- env.bin\_dir, env.comps\_dir, etc.

  These entries affect what is returned from `"$poet->bin_dir"`, `"$poet->bin_path"`, `"$poet->comps_dir"`, etc., and thus where various Poet resources are kept. See Poet::Environment. For example, to move data and logs into external directories outside the environment:

  ```
      env:
        data_dir: /some/external/data/dir
        logs_dir: /some/external/logs/dir
  ```

- log.defaults, log.category

  Specify the log level, output location, and layout string for logging, in the default case and for particular categories respectively. See Poet::Log for examples. e.g.

  ```
      log:
        defaults:
          level: info
          output: poet.log
          layout: "%d{dd/MMM/yyyy:HH:mm:ss.SS} [%p] %c - %m - %F:%L - %P%n"
        class:
          CHI:
            level: debug
            output: chi.log
            layout: "%d{dd/MMM/yyyy:HH:mm:ss.SS} %m - %P%n"
          MyApp::Foo:
            output: stdout
  ```

- log.log4perl\_conf

  Bypass Poet's simplified logging configuration and specify a log4perl conf file directly. e.g.

  ```
      log:
        log4perl_conf: /path/to/log4perl.conf
  ```

- mason

  The hash under this entry will be treated as options that are passed to `"Mason->new"` for the main Mason instance, overriding any default options. See Poet::Mason. e.g.

  ```
      mason:
        static_source: 1
        static_source_touch_file: ${root}/data/purge.dat
  ```

- server.default\_content\_type

  Content type for requests that don't explicitly set one. Defaults to `"text/html"`.

- server.host

  The IP address to listen on.

- server.load\_modules

  A list of modules to load on server startup, e.g.

  ```
      server.load_modules:
         - DBI
         - List::Util
         - MyApp::Foo
         - MyApp::Bar
  ```

- server.port

  The port to listen on.

## SEE ALSO

Poet

## AUTHOR

Jonathan Swartz \<swartz@pobox.com\>

## COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Jonathan Swartz.

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