Response logging filter - Redis

This filter simply logs responses from the database server to the specified output, and does not change the traffic in any way.

This filter type does not take any code.

Be careful when logging responses -- it's easy to generate enormous amounts of logging and to fill up a disk.

Parameters

None of the parameters are required.

The parameters that can take multiple values can be separated by commas or by newlines.


File name

If specified, the logging output will be appended to this file. Keep in mind that this file is from the perspective of the Docker container: it's usually located in a shared filesystem, or in a Docker volume.

If this parameter is not specified, and the Logger name is not specified, the logging output goes to standard out.


Use timestamp

If specified, and the File name parameter is also specified, the file name will be given a timestamp representing when the logging started.


Logger name

If specified, and the File name parameter is not specified, then this logger will be used for output. The specified name can be that of a pre-existing logger, or a new logger.


Format

If specified, this string will be used as a template for the logging output entries.

Available variables:

  • $message: the message to be logged

  • $ts: a timestamp in the format yyyy-MM-dd HH:mm:ss.SSS

  • $user: the name of the database user, if available

  • $ip: the IP address of the database client

  • $thread: the ID of the thread running this filter

  • $connectionName: the name of the connection in Gallium Data

  • $connectionNumber: each connection to the database is given an arbitrary number starting from 1. This can be useful to determine what instance of a connection a message is sent to


Command patterns

Optional: one or more patterns (string or regular expression) that must match the request. If more than one is specified, then the request must contain them in the consecutive order specified.


Response patterns

Optional: one or more patterns (string or regular expression) that must match the response. If more than one is specified, then the response must contain them in the consecutive order specified.



Client IPs

A list of IP addresses (IP4 and/or IP6) and/or regular expressions for IP addresses. If specified, only requests from these IP addresses will be logged.

Example:

12.34.56.78
1234:5678:90ab::01
regex:98\.76\..*
regex:9876:5432:.*


Users

A list of user names and/or regular expressions for user names. If specified, only responses for these users will be logged.


Max length

If this option is specified, no logging message will be longer than that.


Filter

A regular expression. If specified, only messages that satisfy this expression will be logged.