`log-flow-control(yes/no)` global option
log-flow-control(yes/no) global option
This option allows enabling flow control for all log paths. When set to yes,
flow control is globally enabled, but it can still be selectively disabled
within individual log paths using the no-flow-control flag.
WARNING: Enabling global flow control can cause the system() source to block.
As a result, if messages accumulate at the destination, applications that log
through the system may become completely stalled, potentially halting their
operation. We don't recommend enabling flow control in log paths that
include the system() source.
For example,
options {
log-flow-control(yes);
};
log {
source { system(); };
destination { network("server" port(5555)); };
flags(no-flow-control);
};
log { ... };
This Pull Request introduces config grammar changes
axoflow/a200500c108d2213a35f42a63eacfcb26e8da411 -> MrAnno/global-flow-control
--- a/options
+++ b/options
global-options(
+ log-flow-control(<yesno>)
)
@bazsi I believe I fixed it, now it works with all sorts of multiplexers and embedded paths.
I can't fix the CI yet:
urllib3 CVE is fixed in 2.5.0, but the S3 destination on alma8 says:
botocore 1.38.39 depends on urllib3<1.27 and >=1.25.4; python_version < "3.10"
But:
By default, requests and botocore users are not affected.
Merging in spite of the CI being red, as it is not caused by this PR.