Software: Apache. PHP/8.1.30 uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root) Safe-mode: OFF (not secure) /usr/share/doc/proftpd-doc/howto/ drwxr-xr-x |
Viewing file: Select action/file-type: ProFTPD: Tracing
What is Tracing? Trace logging has the concept of multiple logging channels, each of which has its own log level. Layers and APIs within the ProFTPD source will tend to use their own channels. There is no limit to the number of different log channels that can be supported. Within a channel, the assumption is that lower log levels indicate higher priority or importance. Or to look at it another way, the higher the log level for channel, the more noisy that log channel might be. The lowest log level is 1; there is no upper log level limit.
Why have this new form of logging, in addition to all the other kinds of logs
(e.g.
Support for tracing is enabled by default. Use the
Configuration Directives
The TraceLog /var/ftpd/trace.logWithout this directive, no trace logging will occur.
Once you have configured your Trace channel1:level1 channel2:level2 ...This directive lets you set each log channel and its level differently, e.g.: Trace command:5 response:8 timer:2 config:9There is also support for a special "DEFAULT" keyword: Trace DEFAULT:10The following is the list of channels which are covered by the "DEFAULT" keyword:
proftpd.conf
file, at the very top:
TraceLog /path/to/ftpd/trace.log Trace DEFAULT:10Then all of the above channels, up to log level 10, will have their messages logged. If you want to look at the default trace channels except for a particular channel, use level 0 to effectively disable that channel. For example, to exclude the "fsio" channel but see the rest of the default channels, you would use: Trace DEFAULT:10 fsio:0
Note that there are trace channel names that are not part of the
"DEFAULT" channel name list (e.g. "class"); any custom channel names,
such as might be used by a third-party module, are also not covered in the
"DEFAULT" list. For example, the TraceLog /path/to/ftpd/trace.log Trace DEFAULT:10 tls:10
Optional Trace Log Channels
Trace Log Format timestamp [process ID] <channel:level>: messageFor example: Jan 16 17:15:58 [30583] <auth:6>: dispatching auth request "endgrent" to module mod_auth_unixThis shows process ID 30583 logging to the "auth" channel, log level 6, a message about handling the "endgrent" Auth API request.
Runtime Tracing
Here's a concrete example of how tuning the trace logging at runtime can be
useful. You may need the extra information logged via trace logging in order
to track down/debug some issue, but you do not want to enable trace
logging all of the time in your environment. Fortunately, it is possible
to make it possible to get the trace logging information you need, when
you need to get it, and then turn the trace logging off all without
restarting proftpd.
First, you need to configure your $ ftpdctl trace lock:10 scoreboard:5which dynamically changes the 'lock' trace channel level to 10, and the 'scoreboard' trace channel level to 5. Once you have gathered the necessary information in the TraceLog file, you then use ftpdctl
again and restore the trace levels back to zero, effectively turning off
trace logging once more:
$ ftpdctl trace DEFAULT:0Note that the changed settings will only apply to new sessions; this does not change the trace logging for existing sessions.
Use Only When Needed |
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0045 ]-- |