The future tls_key_log directive supports most access_log features but
should not inherit deprecated configuration styles, multi-directive
support complications, and legacy top-level configuration parsing code.
The shared/reusable bits were extracted from CustomLog and cache_cf.cc
functions into the new FormattedLog class. Some of them were polished.
All existing access_log/etc. directives continue to use CustomLog, so
nothing in the code justifies FormattedLog existence right now.
Fixed at least these old bugs:
* access_log config dumps were missing the destination parameter
* "access_log none" config dump included a bogus "logformat=none" option
* "access_log buffer-size=..." config dump were missing size units
* built-in logformat re-definition check missed the "icap_squid" format
* "access_log rotate=N" accepted (but then ignored) negative N values
* "access_log rotate=N" was stored as short but dumped as full integer
Admin-visible changes:
* access_log key=value strings are now case sensitive. This change
improves consistency with squid.conf directives that are all case
sensitive and most other directive options. The logformat name was
already case sensitive. I see no good reason to keep this undocumented
exception.