What auditors actually look at
SOC 2 Type 2 auditors sample log entries during the audit. They will pick a small set of dates / users / events and ask you to produce the audit log for the corresponding time window. The audit log must contain (1) sufficient detail to reconstruct the event, (2) timestamp accuracy (synchronized clock — NTP-backed), (3) immutability evidence (the log entry cannot be edited or deleted post-hoc by application users), (4) access controls (only authorized roles can read the log; access is itself audited).
Common findings: (a) log entries missing key fields — auditor asks 'how do you know what data classification was processed?' and the answer is 'we don't log that'. Mitigation: include data_classification + purpose_code in every entry. (b) Logs editable / deletable by application users — auditor flags as access control gap. Mitigation: write-only access for the application user; admin / SRE roles can read but not edit existing entries; deletion only via lifecycle policy. (c) Insufficient retention — auditor asks for entries from the start of the observation window and you don't have them. Mitigation: retention longer than the observation window plus buffer.
AI-specific findings in 2026 audits: (a) no record of which model was used — auditor asks 'how do you know GPT-5 was used vs GPT-3.5?' for the sampled event. Mitigation: log the specific model ID. (b) No DLP evidence — auditor asks 'how do you know minimum-necessary was applied?' Mitigation: log dlp_detected_entity_types + dlp_action_taken. (c) Vendor / endpoint mismatch — auditor asks 'this entry says Bedrock but the BAA scope is Azure OpenAI — explain'. Mitigation: vendor inventory must match what the logs show.
Pro tip: provide the auditor with a 5-10 row sample of the audit log early in the audit. They will tell you what additional fields they want to see, and you can extend the schema before the formal observation starts.