# pmnull: Syslog Null Parser Module

Module Name: | pmnull
Author: | Rainer Gerhards <rgerhards@adiscon.com>

## Purpose

When a message is received it is tried to match a set of parsers to get properties populated. This parser module sets all attributes to “” but rawmsg. There usually should be no need to use this module. It may be useful to process certain known-non-syslog messages.

The pmnull module was originally written as some people thought it would be nice to save 0.05% of time by not unnecessarily parsing the message. We even doubt it is that amount of performance enhancement as the properties need to be populated in any case, so the saving is really minimal (but exists).

If you just want to transmit or store messages exactly in the format that they arrived in you do not need pmnull! You can use the rawmsg property:

    template(name="asReceived" type="string" string="%rawmsg%")
    action(type="omfwd" target="server.example.net" template="asReceived")

## Configuration Parameters

Note

Parameter names are case-insensitive.

### Parser Parameters

#### Tag

type | default | mandatory | `obsolete legacy` directive
--- | --- | --- | ---
string |  | no | none

This setting sets the tag value to the message.

#### SyslogFacility

type | default | mandatory | `obsolete legacy` directive
--- | --- | --- | ---
Facility | 1 | no | none

This setting sets the syslog facility value. The default comes from the rfc3164 standard.

#### SyslogSeverity

type | default | mandatory | `obsolete legacy` directive
--- | --- | --- | ---
Severity | 5 | no | none

This setting sets the syslog severity value. The default comes from the rfc3164 standard.

## Examples

### Process messages received via imtcp

In this example messages are received through imtcp on port 13514. The ruleset uses the parser pmnull which has the parameters tag, syslogfacility and syslogseverity given.

    module(load="imtcp")
    module(load="pmnull")

    input(type="imtcp" port="13514" ruleset="ruleset")
    parser(name="custom.pmnull" type="pmnull" tag="mytag" syslogfacility="3"
          syslogseverity="1")

    ruleset(name="ruleset" parser=["custom.pmnull", "rsyslog.pmnull"]) {
         action(type="omfile" file="rsyslog.out.log")
    }

### Process messages with default parameters

In this example the ruleset uses the parser pmnull with the default parameters because no specifics were given.

    module(load="imtcp")
    module(load="pmnull")

    input(type="imtcp" port="13514" ruleset="ruleset")
    parser(name="custom.pmnull" type="pmnull")

    ruleset(name="ruleset" parser="custom.pmnull") {
         action(type="omfile" file="rsyslog.out.log")
    }

See also

Help with configuring/using `Rsyslog`:

- Mailing list - best route for general questions

- GitHub: rsyslog source project - detailed questions, reporting issues that are believed to be bugs with `Rsyslog`

- Stack Exchange (View, Ask) - experimental support from rsyslog community

See also

Contributing to `Rsyslog`:

- Source project: rsyslog project README.

- Documentation: rsyslog-doc project README

Copyright 2008-2020 Rainer Gerhards (Großrinderfeld), and Others.