]> git.ipfire.org Git - thirdparty/squid.git/commit - src/cf.data.pre
%busy_time: Time spent in transaction-related code (#1216)
authorAlex Rousskov <rousskov@measurement-factory.com>
Tue, 3 Jan 2023 12:20:27 +0000 (12:20 +0000)
committerSquid Anubis <squid-anubis@squid-cache.org>
Wed, 4 Jan 2023 13:56:48 +0000 (13:56 +0000)
commit0cd2a1b69b4766388258755975e98b486054385b
tree39a8ad77b4fadd525b7df03e52cb1db5d0c87fcf
parentc18dbaf92ba1740117d9bb90b4ad882471ac9e2c
%busy_time: Time spent in transaction-related code (#1216)

Configuration tuning, problems triage, and performance optimization
often benefit from knowing how much time Squid spent on a particular
transaction (or a typical transaction in a category like "cache hits").

We already log total transaction response time (%tr), but that time
includes transaction queuing time (i.e. the time when Squid could
advance our transaction but was advancing other transactions) and
various waiting periods (e.g., waiting for a helper response). The new
measurement focuses on time periods when Squid was actively working on
(as in "was blocked on") our transaction.

CodeContext coverage problems do affect this measurement, but the
existing coverage is already good enough for usable measurements in some
cases, and it is getting better. It will take us a long time to cover
all cases; we should not wait for that to happen (as long as we warn
admins about these problems).
src/base/CodeContext.cc
src/base/CodeContext.h
src/base/Makefile.am
src/base/Stopwatch.cc [new file with mode: 0644]
src/base/Stopwatch.h [new file with mode: 0644]
src/base/forward.h
src/cf.data.pre
src/format/ByteCode.h
src/format/Format.cc
src/format/Token.cc