IBM AIX

NXLog can collect various types of system logs on the AIX platform. For deployment details, see the supported AIX platforms, AIX installation, and monitoring.

AIX audit

The im_aixaudit module natively collects logs generated by the AIX Audit system, without depending on auditstream or any other process.

Example 1. Collecting AIX audit logs

This example reads AIX logs from the /dev/audit device file.

nxlog.conf
<Input in>
    Module      im_aixaudit
    DeviceFile  /dev/audit
</Input>
Custom programs

The im_exec module allows log data to be collected from custom external programs.

Example 2. Using an external command

This example uses the tail command to read from a file.

The im_file module should be used to read log messages from files. This example only demonstrates the use of the im_exec module.
nxlog.conf
<Input exec>
    Module  im_exec
    Command /usr/bin/tail
    Arg     -f
    Arg     /var/adm/ras/errlog
</Input>
DNS monitoring

DNS logs can be collected from the Bind DNS server, see the BIND 9 section in the NXLog User Guide.

File Integrity Monitoring

File and directory changes can be detected and logged for auditing with the im_fim module. See File Integrity Monitoring.

Example 3. Monitoring file integrity

This example monitors files in the /etc and /srv directories, generating events when files are modified or deleted. Files ending in .bak are excluded from the watch list.

nxlog.conf
<Input fim>
    Module          im_fim
    File            "/etc/*"
    File            "/srv/*"
    Exclude         "*.bak"
    Digest          sha1
    ScanInterval    3600
    Recursive       TRUE
</Input>
Local syslog

Messages written to /dev/log can be collected with the im_uds module. Events written to file in Syslog format can be collected with im_file. In both cases, the xm_syslog module can be used to parse the events. See Collecting and Parsing Syslog for more information.

Example 4. Reading syslog messages from file

This example reads Syslog messages from /var/log/messages and parses them with the parse_syslog() procedure.

nxlog.conf
<Extension _syslog>
    Module  xm_syslog
</Extension>

<Input in>
    Module  im_file
    File    "/var/log/messages"
    Exec    parse_syslog();
</Input>
Log files

The im_file module can be used to collect events from log files.

Example 5. Reading from log files

This configuration reads messages from the /opt/test/input.log file. No parsing is performed; each line is available in the $raw_event field.

nxlog.conf
<Input in>
    Module  im_file
    File    "/opt/test/input.log"
</Input>
Process Accounting

The im_acct module can be used to gather details about which owner (user and group) runs what processes.

Example 6. Reading Process Accounting logs

This configuration turns on process accounting (using /tmp/nxlog.acct as the log file) and watches for messages.

nxlog.conf
<Input acct>
    Module  im_acct
    AcctOn  TRUE
    File    "/tmp/nxlog.acct"
</Input>