Next: , Previous: , Up: options   [Contents][Index]

8.1.5 Logging and Debugging Options


Mention column number in error messages. See location-column. Use --no-location-column to disable

-d string

Set debugging level. See Logging and Debugging.


Parse and compile the script file and dump the disassembled listing of the produced code to the terminal. See Logging and Debugging.


Enable debugging the script file parser. While parsing the file, the detailed dump of the parser states and tokens seen will be output.


Enable debugging the lexical analyzer. While parsing the script file, the detailed dump of the lexer states and matched rules will be output.


Show Sendmail macros used in the script file. The macro names are displayed as comma-separated lists, grouped by handler names. See Sendmail, for a detailed description of this option and its usage.


Parse and compile the script file and dump the parse tree in a printable form to the terminal.


Print a cross-reference of variables used in the filter script. See Testing Filter Scripts.


Stop after the preprocessing stage; do not run the compiler proper. The output is in the form of preprocessed source code, which is sent to the standard output. See Preprocessor.


Check script file syntax and exit. If the file is OK, return 0 to the shell, otherwise print appropriate messages to stderr and exit with code 78 (‘configuration error’).


Do not fork sub-processes to serve requests. This option is meant to assist in debugging mailfromd. Don’t use it for anything else but for debugging, as it terribly degrades performance!


Add MFL stack trace information to runtime error output. Overrides stack-trace configuration statement. Use the --no-stack-trace to disable trace information.

See tracing runtime errors, for more information on this feature.


Set desired logging level for gacopyz library (see Gacopyz). There are five logging levels. The following table lists them in order of decreasing priority:


Log fatal errors.


Log error messages.


Log warning messages.


Log informational messages. In particular, this enables printing messages on each subprocess startup and termination, which look like that:

Apr 28 09:00:11 host mailfromd[9411]: connect
Apr 28 09:00:11 host mailfromd[9411]: finishing

This level can be useful for debugging your scripts.


Log debugging information.


Log Milter protocol interactions. This level prints huge amounts of information, in particular it displays dumps of each Milter packet sent and received.

Although it is possible to set these levels independently of each other, it is seldom practical. Therefore, the option --gacopyz-log=level enables all logging levels from level up. For example, --gacopyz-log=warn enables log levels ‘warn’, ‘err’ and ‘fatal’. It is the default. If you need to trace each subprocess startup and shutdown, set --gacopyz-log=info. Setting the logging level to ‘proto’ can be needed only for Gacopyz developers, to debug the protocol.

See Testing Filter Scripts.


Set logger mechanism (mech is one of ‘stderr’, ‘syslog’, ‘syslog:async’). See Logging and Debugging.


Output logs to syslog facility.


Tag syslog entries with the given string, instead of the program name.


Include C source information in debugging messages. This is similar to setting line-info yes in the debug configuration block (see line-info in GNU Mailutils Manual).

The --no-source-info can be used to cancel the effect of the line-info yes configuration statement.

You do not need this option, unless you are developing or debugging mailfromd.


Synonym for --lint.


Enable or disable action tracing. If --trace is given, mailfromd will log all executed actions. See Logging and Debugging.


Enable program instruction tracing. With this option mailfromd will log execution of every instruction in the compiled filter program. The optional arguments allows to specify a comma-separated list of source code modules for which the tracing is to be enabled, for example --trace-program=bi_io,bi_db enables tracing for functions from modules bi_io.c and bi_db.c (notice, that you need not give file suffixes in string).

This option is useful for debugging mailfromd, but is not advised to use otherwise, since it is very time-costly.


Enable or disable transcript of the SMTP sessions to the log channel. See Logging and Debugging.


Selects default syslog mechanism for diagnostic output.


Directs all logging to standard output. Similar to --logger=stderr.


Same as --dump-xref. See Logging and Debugging.

Next: , Previous: , Up: options   [Contents][Index]