CloudTrail logs are not integrated with CloudWatch Logs
- Severity
- Medium
- Service
- CloudTrail
- Check ID
- CLOUDTRAIL_NOT_INTEGRATED_WITH_CWL
What this check finds
No CloudTrail trail is configured to deliver events to a CloudWatch Logs log group. Without this integration you cannot create metric filters or alarms on API activity, making real-time detection of suspicious behaviour impossible. CIS v1.4 §3.7.
Passing looks like: CloudTrail integrated with CloudWatch Logs.
How to fix it
Configure a CloudTrail trail to send logs to CloudWatch Logs.
AWS CLI
aws cloudtrail update-trail --name TRAIL_NAME --cloud-watch-logs-log-group-arn LOG_GROUP_ARN --cloud-watch-logs-role-arn ROLE_ARN
Names in capitals are placeholders for your own resource. Review a command before you run it.
AWS console
CloudTrail → select the trail → CloudWatch Logs → Configure → select or create a log group.
Compliance controls it is evidence for
A failing result counts against these controls in KloudLytics; a passing one is evidence towards them. How compliance mapping works
| Framework | Controls |
|---|---|
| NIST SP 800-53 Rev5 (Moderate) |
|
| NIST Cybersecurity Framework 2.0 |
|
| ISO/IEC 27001:2022 Annex A |
|
Checked on every scan
KloudLytics runs this check each time it scans a connected AWS account, through a read-only role, and lists every affected resource with its region. On Pro and Business a fix is written for the specific resource rather than the general case above. The exact access it needs
More CloudTrail checks
- CriticalS3 bucket used for CloudTrail logs is publicly accessible
- HighCloudTrail trail does not log all management events (Read + Write)
- MediumCloudTrail is not logging S3 data events
- MediumCloudTrail logs are not encrypted with KMS
- LowCloudTrail Insights is not enabled on the trail
- LowCloudTrail is not enabled
- LowCloudTrail log file validation is not enabled
- LowCloudTrail S3 bucket does not have server-access logging enabled