Log Levels As mentioned in the logging documentation, log messages are logged at different log levels (also known as log priorities), and with different facilities (i.e. the component generating the log message).
The following table lists the supported log levels, in descending priority
order. Thus the DEBUG
level has the lowest priority, and the
EMERG
level has the highest priority.
Level | Description |
EMERG |
Fatal/unrecoverable error/condition, application is unusable and stops immediately |
ALERT |
Condition requires immediate intervention by administrator/operator |
CRIT |
Condition should be corrected immediately, but indicates e.g. failure in secondary system/library |
ERR |
Non-urgent failure conditions that should be relayed to developers and/or administrators; should be resolved/corrected soon |
WARNING |
Unexpected error/condition that may require intervention to review/correct |
NOTICE |
Significant/noteworthy condition, no intervention/action required |
INFO |
Normal operating conditions, no intervention/action required |
DEBUG |
Internal details of application operations useful to developers, not necessarily useful during normal operations |
The proftpd
daemon can use any or all of the above log levels for
its emitted log messages, depending on the situation. You might find that
you only want proftpd
to log messages above a certain level; for
example, you might not be interested in INFO
and DEBUG
level messages. ProFTPD logs all levels by default. To tell
proftpd
to silently ignore all log messages below a certain level,
use the SyslogLevel
directive. Thus to ignore INFO
/DEBUG
messages,
you would use:
SyslogLevel notice
Note that additional log filtering is also done by the syslogd
daemon, to which proftpd
logs by default. You will need to
consult your syslogd
configuration (typically found in
/etc/syslog.conf
) to see whether it is capturing log messages
from the facility used by proftpd
(default is "daemon"), and
whether it is filtering out messages below a certain level/priority.
If you need to tell proftpd
to use a different facility,
so that it matches your /etc/syslog.conf
settings for example,
you can use the SyslogFacility
directive like so:
# Tell proftpd to log using the "ftp" facility, rather than "daemon" SyslogFacility ftp
The
The
Additional Logging
DEBUG
Level
ProFTPD treats the DEBUG
log level a little differently. There
are so many conditions which are relevant only when triaging a specific issue
(such as figuring out why a user cannot log in, or why a file cannot be
uploaded) that the DEBUG
level would become cluttered. Additional
filtering of these debug messages is needed. Thus ProFTPD imposes its own
notion of debug levels within the DEBUG
logging level/priority.
DebugLevel
directive is used to control the granularity/verbosity of the DEBUG
level messages; the default level is 0, and goes to 10 (inclusive). In general,
the higher the DebugLevel
, the more debug messages will be emitted
by proftpd
to the DEBUG
logging level/priority.
Note that ProFTPD also supports even finer-grained logging of internals via
its trace logging. Trace logging, however, is
completely unrelated to syslogd
, and thus the syslog
facility and level concepts/filtering do not apply
to trace logging.
© Copyright 2013-2019 The ProFTPD Project
All Rights Reserved