---
name: "loggen"
section: "1"
platform: "linux"
package: "syslog-ng"
version: "4.12.0-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/loggen"
---

# loggen(1)

## NAME

loggen --- Generate syslog messages at a specified rate

## SYNOPSIS

loggen \[options\]

target \[port\]

## DESCRIPTION

**NOTE:** The loggen application is distributed with the syslog-ng OSE system logging application, and is usually part of the syslog-ng OSE package. The latest version of the syslog-ng OSE application is available at the syslog-ng OSE page.

This manual page is only an abstract.

The loggen application is a tool to test and stress-test your syslog server and the connection to the server. It can send syslog messages to the server at a specified rate using a number of connection types and protocols, including TCP, UDP, and unix domain sockets. The messages can be generated automatically (repeating the PADDstring over and over), or read from a file or the standard input.

When loggen finishes sending the messages, it displays the following statistics:

- •

  average rate: The average rate of the sent messages in messages/second.

- •

  count: The total number of messages sent.

- •

  time: The time required to send the messages in seconds.

- •

  average message size: The average size of the sent messages in bytes.

- •

  bandwidth: The average bandwidth used for sending the messages in kilobytes/second.

## OPTIONS

`--active-connections <number-of-connections>`\
     Number of connections loggen will use to send messages to the\
     destination. This option is usable only when using TCP or TLS\
     connections to the destination. Default value: 1\
     The loggen utility waits until every connection is established\
     before starting to send messages. See also the `--idle-connections`\
     option.

`--csv` or `-C`\
     Send the statistics of the sent messages to stdout as CSV. This can\
     be used for plotting the message rate.

`--dgram` or `-D`\
     Use datagram socket (UDP or unix-dgram) to send the messages to the\
     target. Requires the --inet option as well.

`--dont-parse` or `-d`\
     Do not parse the lines read from the input files, send them as\
     received.

`--help` or `-h`\
     Display a brief help message.

`--idle-connection <number-of-connections>`\
     Number of idle connections loggen will establish to the destination.\
     Note that loggen will not send any messages on idle connections, but\
     the connection is kept open using keep-alive messages. This option\
     is usable only when using TCP or TLS connections to the destination.\
     See also the --active-connections option. Default value: 0

`--inet` or `-i`\
     Use the TCP (by default) or UDP (when used together with the\
     \--dgram option) protocol to send the messages to the target.

`--interval <seconds>` or `-I <seconds>`\
     The number of seconds loggen will run. Default value: 10

```
NOTE: When `--interval` and `--number` are used together, loggen will
send messages until the period set in `--interval` expires or the
amount of messages set in `--number` is reached, whichever happens
first.
```

`--ipv6` or `-6`\
     Specify the destination using its IPv6 address. Note that the\
     destination must have a real IPv6 address.

`--loop-reading` or `-l`\
     Read the file specified in `--read-file` option in loop: loggen will\
     start reading from the beginning of the file when it reaches the end\
     of the file.

`--number <number-of-messages>` or `-n <number-of-messages>`\
     Number of messages to generate.

```
NOTE: When `--interval` and `--number` are used together, loggen will
send messages until the period set in `--interval` expires or the
amount of messages set in `--number` is reached, whichever happens
first.
```

`--no-framing` or `-F`\
     Do not use the framing of the IETF-syslog protocol style, even if\
     the `--syslog-proto` option is set.

`--quiet` or `-Q`\
     Display statistics only when loggen is finished. If not set, the\
     statistics are displayed every second.

`--permanent` or `-T`\
     Keep sending logs indefinitely, without time limit.

`--rate <message/second>` or `-r <message/second>`\
     The number of messages generated per second for every active\
     connection. Default value: 1000

```
If you want to change the message rate while loggen is running, send
SIGUSR1 to double the message rate, or SIGUSR2 to halve it:
kill `-USR1 <loggen-pid>kill` `-USR2 <loggen-pid>`
```

`--read-file <filename>` or `-R <filename>`\
     Read the messages from a file and send them to the target. See also\
     the `--skip-tokens` option.\
     Specify - as the input file to read messages from the standard input\
     (stdio). Note that when reading messages from the standard input,\
     loggen can only use a single thread. The -R -parameters must be\
     placed at end of command, like: loggen 127.0.0.1 1061 `--read-file` -

`--sdata <data-to-send>` or `-p <data-to-send>`\
     Send the argument of the `--sdata` option as the `SDATA` part of\
     IETF-syslog (RFC-5424 formatted) messages. Use it together with the\
     `--syslog-proto` option.

````
For example:
```config
--sdata "[test name=\"value\"]
```
````

`--size <message-size>` or `-s <message-size>`\
     The size of a syslog message in bytes. Default value: 256. Minimum\
     value: 127 bytes, maximum value: 8192 bytes.

`--skip-tokens <number>`\
     Skip the specified number of space-separated tokens (words) at the\
     beginning of every line. For example, if the messages in the file\
     look like foo bar message, --skip-tokens 2 skips the foo bar part\
     of the line, and sends only the message part. Works only when used\
     together with the --read-file parameter. Default value: 0

`--stream` or `-S`\
     Use a stream socket (TCP or unix-stream) to send the messages to the\
     target.

`--syslog-proto` or `-P`\
     Use the new IETF-syslog message format. By\
     default, loggen uses the legacy BSD-syslog message format.\
     See also the --no-framing option.

`--unix </path/to/socket>` or `-x </path/to/socket>`\
     Use a UNIX domain socket to send the messages to the target.

`--use-ssl` or `-U`\
     Use an SSL-encrypted channel to send the messages to the target.\
     Note that it is not possible to check the certificate of the target,\
     or to perform mutual authentication.

`--version` or `-V`\
     Display version number of syslog-ng.

### EXAMPLES:

The following command generates 100 messages per second for ten minutes, and sends them to port 2010 of the localhost via TCP. Each message is 300 bytes long.

```
loggen --size 300 --rate 100 --interval 600 127.0.0.1 2010
```

The following command is similar to the one above, but uses the UDP protocol.

```
loggen --inet --dgram --size 300 --rate 100 --interval 600 127.0.0.1 2010
```

Send a single message on TCP6 to the ::1 IPv6 address, port 1061:

```
loggen --ipv6 --number 1 ::1 1061
```

Send a single message on UDP6 to the ::1 IPv6 address, port 1061:

```
loggen --ipv6 --dgram --number 1 ::1 1061
```

Send a single message using a unix domain-socket:

```
loggen --unix --stream --number 1 </path/to/socket>
```

Read messages from the standard input (stdio) and send them to the localhost:

```
loggen 127.0.0.1 1061 --read-file -
```

## FILES

/Users/hofi/Develop/Balabit/syslog-ng/build/install/bin/loggen

**NOTE:** If you experience any problems or need help with syslog-ng OSE, see the *syslog-ng OSE Administration Guide*\[1\], or visit the *syslog-ng OSE mailing list*\[2\]. For news and notifications about syslog-ng OSE, visit the *syslog-ng OSE blogs*\[3\].

## AUTHOR

This manual page was generated from the *syslog-ng OSE Administration Guide*\[1\], which was written by several contributors to whom we'd like to extend our sincere thanks.

## COPYRIGHT

## NOTES

\[1\] `syslog-ng OSE Administration Guide`\
     ⟨https://syslog-ng.github.io/admin-guide/README⟩

\[2\] `syslog-ng OSE mailing list`\
     ⟨https://lists.balabit.hu/mailman/listinfo/syslog-ng⟩

\[3\] `syslog-ng OSE blogs`\
     ⟨https://syslog-ng.com/blog/⟩
