Skip to main content

AWS CloudFormation


For a much easier and more efficient way to collect and send metrics, consider using the telemetry collector.

This CloudFormation template allows shipping AWS Logs and Metrics to

It will deploy the following projects:


To deploy this integrion, click the button that matches the region you wish to deploy your Stack to:

us-east-1Deploy to AWS
us-east-2Deploy to AWS
us-west-1Deploy to AWS
us-west-2Deploy to AWS
eu-central-1Deploy to AWS
eu-north-1Deploy to AWS
eu-west-1Deploy to AWS
eu-west-2Deploy to AWS
eu-west-3Deploy to AWS
sa-east-1Deploy to AWS
ap-northeast-1Deploy to AWS
ap-northeast-2Deploy to AWS
ap-northeast-3Deploy to AWS
ap-south-1Deploy to AWS
ap-southeast-1Deploy to AWS
ap-southeast-2Deploy to AWS
ca-central-1Deploy to AWS
logzioLogsTokenReplace <<SHIPPING-TOKEN>> with the token of the account you want to ship to.Required
logzioListenerThe listener URL for your region. (For more details, see the regions page. For example -
logzioMetricsTokenYour metrics shipping token.Required
awsNamespacesComma-separated list of the AWS namespaces you want to monitor. See [this list](( of namespaces. If you want to automatically add all namespaces, use value all-namespaces.Required
logzioMetricsDestinationYour destination URL.Required
logzioLogsTypeThe log type you'll use with this Lambda. This can be a built-in log type, or a custom log type. You should create a new Lambda for each log type you use.Default: logzio_cloudwatch_lambda
logzioLogsFormatjson or text. If json, the Lambda function will attempt to parse the message field as JSON and populate the event data with the parsed fields.Default: text
logzioLogsCompressSet to true to compress logs before sending them. Set to false to send uncompressed logs.Default: true
logzioLogsEnrichEnrich CloudWatch events with custom properties, formatted as key1=value1;key2=value2.-
shipperLambdaTimeoutThe number of seconds that Lambda allows a function to run before stopping it, for the shipper function.Default: 60
shipperLambdaMemoryShipper function's allocated CPU proportional to the memory configured, in MB.Default: 512
servicesA comma-seperated list of services you want to collect logs from. Supported options are: apigateway, rds, cloudhsm, cloudtrail, codebuild, connect, elasticbeanstalk, ecs, eks, aws-glue, aws-iot, lambda, macie, amazon-mq.-
customLogGroupsA comma-seperated list of custom log groups you want to collect logs from-
triggerLambdaTimeoutThe amount of seconds that Lambda allows a function to run before stopping it, for the trigger function.Default: 60
triggerLambdaMemoryTrigger function's allocated CPU proportional to the memory configured, in MB.Default: 512
triggerLambdaLogLevelLog level for the Lambda function. Can be one of: debug, info, warn, error, fatal, panicDefault: info
httpEndpointDestinationIntervalInSecondsThe length of time, in seconds, that Kinesis Data Firehose buffers incoming data before delivering it to the destination.Default: 60
httpEndpointDestinationSizeInMBsThe size of the buffer, in MBs, that Kinesis Data Firehose uses for incoming data before delivering it to the destination.Default: 5

AWS limits every log group to have up to 2 subscription filters. If your chosen log group already has 2 subscription filters, the trigger function won't be able to add another one.


If you've used the services field, you'll have to wait 6 minutes before creating new log groups for your chosen services. This is due to cold start and custom resource invocation, that can cause the cause Lambda to behave unexpectedly.

Check for your metrics

Give your data some time to get from your system to ours, then log in to your Metrics account, and open the Metrics tab.