====== 15.1 Purpose of Logging ====== [[fxdemo:05-part:start | Go To Top ]] [[fxdemo:05-part:15-logging-and-observability:start | Return to Logging and Observability ]] Logging should make Phase 0 behavior understandable and reviewable. A developer, tester, reviewer, or demonstration operator should be able to inspect logs and determine what the system attempted to do, what succeeded, what failed, and where to look next. Phase 0 logging should support: - Repository setup. - Prerequisite validation. - Environment initialization. - [[dido:99_annexes:annex-b-terms-and-definitions:d:dds|DDS]]/[[dido:99_annexes:annex-b-terms-and-definitions:i:idl|IDL]] type generation. - Container builds. - [[dido:99_annexes:annex-b-terms-and-definitions:n:node|Node]] startup. - Node [[dido:99_annexes:annex-b-terms-and-definitions:l:lifecycle|Lifecycle]] changes. - [[dido:99_annexes:annex-b-terms-and-definitions:c:control_plane|Control Plane]] status reporting. - Control Plane command handling. - Data Plane publication or subscription behavior, where applicable. - Controlled shutdown. - Error diagnosis. - Acceptance [[dido:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]]. Logs should explain behavior without overwhelming the reader. The team should log significant events, decisions, warnings, failures, and Lifecycle transitions. The team should avoid noisy logs that obscure important Evidence. Logging should not expose secrets, credentials, private keys, access tokens, passwords, sensitive local paths, or confidential data. If a value may be sensitive, the implementation should mask, omit, or summarize it. ---- © 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.