modem-dev / rustfs-logging-governance
Add or review RustFS `tracing` events with the repository field shape, level policy, privacy boundaries, and guardrails. Use when a change adds or edits a tracing macro/instrumentation site or the logging guardrail script.
RustFS Logging Governance
Apply this skill only to changed logging sites; do not turn a local log edit into
a broad logging cleanup.
Workflow
Read the changed function/module context and classify the site as lifecycle,
request/hot path, fallback, external fetch, or summary.Match neighboring structured events and reuse existing
EVENT_*,LOG_COMPONENT_*, andLOG_SUBSYSTEM_*constants.Put stable fields first (
event,component,subsystem,state/result,
then context) and a short label last.Select the level by operational meaning:
error: behavior/security-affecting failure;warn: degraded/fallback/operator-actionable state;info: low-frequency lifecycle/mode change;debug: targeted diagnostics;trace: repetitive request/object/shard success paths.
Never log secrets, tokens, auth headers, credential payloads, raw
attacker-controlled bodies, or merged config dumps. Error strings andDebugoutput are log surfaces too.- Prefer one aggregate summary over inventories or startup banners.
Run
./scripts/check_logging_guardrails.shand the checks selected by rootAGENTS.md.
Read [logging-governance.md](references/logging-governance.md) only for a broad
logging audit, event-model migration, or guardrail expansion. Ordinary single-
site edits do not require the full workspace scope map.