From bcdf2c75be52edd55854eba9e54bb62874808da8 Mon Sep 17 00:00:00 2001 From: ssmithx Date: Tue, 1 Sep 2026 12:27:33 +0000 Subject: [PATCH] fix(cuprate): file log level should be info, not cuprated's debug default MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The previous commit on this branch copied cuprated's raw --generate-config defaults (stdout=info, file=debug, max_log_files=7) verbatim. Turns out that's the wrong reference: compared against ssmithx@archy-dev-pa:/home/ssmithx/cuprate/Cuprated.toml — the actual dev config this app was built and tested against — file logging is meant to run at "info" with 14 rotated files, not the binary's raw "debug"/7. Confirmed live on amishparadise: podman logs (stdout) was already clean at info, but the on-disk file log (.local/share/cuprate/logs/) was flooding with per-peer DEBUG gossip (~400KB in 2 minutes) because it inherited the binary default instead of the intended one. Left the resource-tuning knobs in the reference config (8GB target_max_memory, tokio/rayon thread counts, P2P connection counts, explicit reader_threads) out of this file — those were sized for ssmithx's dev box and don't apply here; this manifest's target_max_memory already stays deliberately under the container's 4Gi memory_limit. Regenerated releases/app-catalog.json (still unsigned). Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01Ga6N8Jk1YdCTMMX1LjDpAr --- apps/cuprate/manifest.yml | 27 +++++++++++++++------------ releases/app-catalog.json | 2 +- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/apps/cuprate/manifest.yml b/apps/cuprate/manifest.yml index 991d41fd..3ddbd0a6 100644 --- a/apps/cuprate/manifest.yml +++ b/apps/cuprate/manifest.yml @@ -125,16 +125,19 @@ app: # uses for its own RPC port (-rpcbind=0.0.0.0:8332 internally, gate # restricts it externally) — not a new risk, the same one already # reviewed and accepted for Bitcoin's RPC. - # - tracing.stdout.level / tracing.file.{level,max_log_files}: values - # are identical to `cuprated --generate-config`'s own defaults (info / - # debug / 7) — nothing about the logging behaviour changes. They're - # spelled out explicitly anyway so an operator reading - # Cuprated.toml on disk can see and tune the log level directly, - # instead of the file silently omitting the whole [tracing] table - # and the actual level only being discoverable by running - # `cuprated --generate-config` and diffing it against this file - # (verified live on amishparadise 2026-09-01: the deployed file had - # no [tracing] section at all). + # - tracing.stdout.level / tracing.file.{level,max_log_files}: an + # operator reading Cuprated.toml on disk should be able to see and + # tune the log level directly instead of the file silently omitting + # the whole [tracing] table (verified live on amishparadise + # 2026-09-01: the deployed file had no [tracing] section at all, and + # the level was only discoverable by running `cuprated + # --generate-config` and diffing). file.level is set to "info", NOT + # cuprated's own raw default of "debug" — matches the reference dev + # config this app was built and tested against + # (ssmithx@archy-dev-pa:/home/ssmithx/cuprate/Cuprated.toml, + # verified 2026-09-01), which deliberately runs file logging quieter + # than the binary default. max_log_files similarly follows that + # reference (14, not the binary default of 7). files: - path: /var/lib/archipelago/cuprate/Cuprated.toml content: | @@ -148,8 +151,8 @@ app: level = "info" [tracing.file] - level = "debug" - max_log_files = 7 + level = "info" + max_log_files = 14 overwrite: false health_check: diff --git a/releases/app-catalog.json b/releases/app-catalog.json index 96a0f58d..02c438ec 100644 --- a/releases/app-catalog.json +++ b/releases/app-catalog.json @@ -1367,7 +1367,7 @@ "files": [ { "path": "/var/lib/archipelago/cuprate/Cuprated.toml", - "content": "network = \"Mainnet\"\ntarget_max_memory = 3000000000\n\n[rpc.restricted]\nenable = true\n\n[tracing.stdout]\nlevel = \"info\"\n\n[tracing.file]\nlevel = \"debug\"\nmax_log_files = 7\n", + "content": "network = \"Mainnet\"\ntarget_max_memory = 3000000000\n\n[rpc.restricted]\nenable = true\n\n[tracing.stdout]\nlevel = \"info\"\n\n[tracing.file]\nlevel = \"info\"\nmax_log_files = 14\n", "overwrite": false } ],