Follow-up to #32604 (comment)
Problem: -logratelimit is currently registered as DEBUG_ONLY, so users who are not reading -help-debug are unlikely to discover the supported escape hatch when rate limiting interferes with diagnosis or log processing.
Fix: Expose the existing option in normal help while keeping rate limiting enabled by default.
Add argsman coverage to assert that -logratelimit is not DEBUG_ONLY and appears in the default help text.
Reproducer: you can check manually by grepping the help page or by adding a temporary unit test - before and after the change and see the difference.
<details><summary>bitcoind -help(-debug)</summary>
cmake -B build && cmake --build build -j -t bitcoind
build/bin/bitcoind -help-debug | grep -A2 logratelimit
build/bin/bitcoind -help | grep -A2 logratelimit
</details>
<details><summary>util_LogRateLimitHelp</summary>
diff --git a/src/test/argsman_tests.cpp b/src/test/argsman_tests.cpp
index da0d684050..0e918afd6b 100644
--- a/src/test/argsman_tests.cpp
+++ b/src/test/argsman_tests.cpp
@@ -3,6 +3,7 @@
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include <common/args.h>
+#include <init/common.h>
#include <sync.h>
#include <test/util/logging.h>
#include <test/util/setup_common.h>
@@ -710,6 +711,14 @@ BOOST_AUTO_TEST_CASE(util_AddCommand_clearargs_replaces_command_options)
BOOST_CHECK(details.empty());
}
+BOOST_AUTO_TEST_CASE(util_LogRateLimitHelp)
+{
+ ArgsManager args;
+ init::AddLoggingArgs(args);
+ BOOST_CHECK_EQUAL(*Assert(args.GetArgFlags("-logratelimit")) & ArgsManager::DEBUG_ONLY, 0U);
+ BOOST_CHECK(args.GetHelpMessage().find("-logratelimit") != std::string::npos);
+}
+
BOOST_AUTO_TEST_CASE(util_GetChainTypeString)
{
TestArgsManager test_args;
</details>