Issue
I am using Tomcat log to log the access info. And the definitions of %D
and %F
in official doc are:
I am confused by these two definitions. Does the time of %F
include the time of %D
?
Solution
%D
includes %F
plus any network time
There is a bit more information in the API Doc https://tomcat.apache.org/tomcat-7.0-doc/api/org/apache/catalina/valves/AccessLogValve.html
AccessLogValve.ElapsedTimeElement
write time taken to process the request - %D, %T
AccessLogValve.FirstByteTimeElement
write time until first byte is written (commit time) in millis -%F
In the Bugzilla 55102 entry for %F
it says:
Tomcat's
AccessLogValve
is able to report the time taken to send an entire request using%D
. This is the total processing time and may be affected by network conditions. It is sometimes useful to be able to record the time taken by the server to prepare the response and send the first content to the client.Attached is a patch that records the time the response is committed and then allows that to be reported in the access log using a
%F
pattern (which is the same as used by themod-log-firstbyte
module for HTTPD).
Answered By - rince
Answer Checked By - Terry (JavaFixing Volunteer)