RealtimeLogConfig
Source:
src/AWS/CloudFront/RealtimeLogConfig.ts
A CloudFront real-time log configuration.
Real-time logs deliver per-request records to a Kinesis data stream within
seconds. Attach the configuration to a distribution’s cache behavior via
Distribution (realtimeLogConfigArn).
Creating Real-Time Log Configs
Section titled “Creating Real-Time Log Configs”const stream = yield* Kinesis.Stream("EdgeLogs", {});
const role = yield* IAM.Role("EdgeLogsRole", { assumeRolePolicyDocument: { Version: "2012-10-17", Statement: [ { Effect: "Allow", Principal: { Service: "cloudfront.amazonaws.com" }, Action: "sts:AssumeRole", }, ], }, inlinePolicies: { kinesis: { Version: "2012-10-17", Statement: [ { Effect: "Allow", Action: [ "kinesis:DescribeStreamSummary", "kinesis:DescribeStream", "kinesis:PutRecord", "kinesis:PutRecords", ], Resource: stream.streamArn, }, ], }, },});
const logConfig = yield* RealtimeLogConfig("EdgeLogConfig", { samplingRate: 100, fields: ["timestamp", "c-ip", "cs-uri-stem", "sc-status"], endpoints: [{ streamArn: stream.streamArn, roleArn: role.roleArn }],});