# Audit Logging

Record: `arch:audit-logging`
Kind: mechanism
Layer: [Observability](https://banes-lab.com/records/layer/observability.md)
Severity: mandatory for sensitive systems
Scope: security, compliance, data mutation
Canonical: https://banes-lab.com/ontology#arch-audit-logging

## Repair

- Refactored by: Add Audit Event, Protect Audit Store
- Detected by: missing audit instrumentation
- Violated by: sensitive operation without immutable record
- Measured by: audit coverage
- Enforced by: [policy-as-code](https://banes-lab.com/records/arch/policy-as-code.md), [tests](https://banes-lab.com/records/lex/tests.md)

## requires

- [Actor](https://banes-lab.com/records/lex/actor.md)
- [Action](https://banes-lab.com/records/lex/action.md)
- [Timestamp](https://banes-lab.com/records/lex/timestamp.md)
- [Target](https://banes-lab.com/records/lex/target.md)

## reinforces

- [Auditability](https://banes-lab.com/records/arch/auditability.md)
- [Traceability](https://banes-lab.com/records/arch/traceability.md)

## enables

- [Forensics](https://banes-lab.com/records/lex/forensics.md)

## conflicts-with

- [Untracked Mutation](https://banes-lab.com/records/lex/untracked-mutation.md)

## tensions-with

- [Privacy](https://banes-lab.com/records/lex/privacy.md)

## tensions

- [Audit Logging Privacy](https://banes-lab.com/records/tension/audit-logging-privacy.md)

## referenced-by

- [Auditability](https://banes-lab.com/records/arch/auditability.md)
