~/ ~/documents ~/software ~/pictures github (opens in new tab)

Toxic Logs

Logs contain sensitive data about system behavior, user actions, and internal application state. Treat logs as toxic asset material: define an explicit rationale for every log event, offload them securely over encrypted channels, and ensure they are automatically redacted and destroyed after a defined retention period.

This principle applies across all environments and all data flows, including secondary system services such as ingress proxies, sidecars, daemon sets, and CI/CD pipelines.

A common engineering mistake is treating log statements as zero-cost diagnostics, leading to unrestricted dumping of runtime state. If log ingestion lacks explicit data hygiene:

Having a log ingestion pipeline does not excuse sloppy data handling. If a field isn’t strictly required for debugging or auditing, it shouldn’t be captured.

To treat logs as toxic material safely, enforce three mandatory pipeline requirements:

If you want to know how secure a platform actually is, don’t look at its database encryption: look at its logs. The database shows what you intended to protect; the logs show what you accidentally exposed.