# Configure log output for the Pulsar outbound connector

## Logging

The `logging` section of the `aerospike-pulsar-outbound.yml` file controls log output. Generated log files are rotated daily. The last 30 days of logs are retained by default.

| Option | Required | Default | Description |
| --- | --- | --- | --- |
| file | no | N/A | The output log file path. Rotated logs are placed in the same folder as this log file. |
| enable-console-logging | no | false | When set to true and a log file is specified, logging is sent to both console and the log file. enable-console-logging is false by default but if a log file is _not_ specified, it is forced to true. |
| max-history | no | 30 | Maximum number of log files to retain. |
| levels | no | N/A | Map from logger name to its log level. Valid log levels are `error`, `warn`, `info`, `debug`, and `trace`. |
| ticker-interval | no | 10 | Ticker log interval in seconds. |
| format | no | simple | Format of the log. See [Logging Formats Section](#logging-formats) for more details. |

## Logging formats

Logs can be output in one of the following logging formats:

| Format | Description |
| --- | --- |
| simple | Simple space delimited format of a log line. |
| json | JSON formatted logs. |

### Example

```yaml
logging:

  file: /var/log/aerospike-pulsar-outbound/aerospike-pulsar-outbound.log

  levels:

    root: info # Set default logging level to info.

    record-parser: debug # The Aerospike record parser class.

    server: debug # The server class logs.

    com.aerospike.connect: debug # Set all the classes to default log level.
```