CloudWatch Auto Retention is a construct that creates a Lambda with a cronjob that checks whether CloudWatch loggroups are set to never-expire. If so, the construct sets it to one month.
Project description
Cloudwatch Auto Retention
Cloudwatch Auto Retention is an AWS CDK construct library that will check once a month if you have any Cloudwatch Log Groups in the region it is deployed with a never-expire retention and auto-fix this to one month. This is a cost-optimization as Cloudwatch Logs have a very high storage cost. If you need Cloudwatch logs for longer you should set an automated S3 export (cloudwatch-logs-s3-export is in the works 😚).
Getting started
TypeScript
Installation
NPM
npm install --save cloudwatch-auto-retention
yarn
yarn add cloudwatch-auto-retention
Usage
# Example automatically generated from non-compiling source. May contain errors.
import * as cdk from '@aws-cdk/core';
import { CloudwatchAutoRetention } from 'cloudwatch-auto-retention';
import { RetentionDays } from 'aws-cdk-lib/aws-logs';
import { Schedule } from 'aws-cdk-lib/aws-events';
const mockApp = new cdk.App();
const stack = new cdk.Stack(mockApp, '<your-stack-name>');
new CloudwatchAutoRetention(stack, 'cloudwatch-auto-retention');
// With retention set
new CloudwatchAutoRetention(stack, 'cloudwatch-auto-retention', {
retention: RetentionDays.ONE_MONTH
});
// With schedule for the Lambda function set
new CloudwatchAutoRetention(stack, 'cloudwatch-auto-retention', {
schedule: Schedule.cron({ minute: '0', hour: '1', day: '1' })
});
Python
Installation
$ pip install cloudwatch-auto-retention
Usage
import aws_cdk.core as cdk
from cdk_cloudwatch_auto_retention import CloudwatchAutoRetention
app = cdk.App()
stack = cdk.Stack(app, "<your-stack-name>")
CdkCloudwatchAutoRetention(stack, "cloudwatch-auto-retention")
Overview
A Cloudwatch cron rule will trigger a Lambda that will go over all Cloudwatch Log Groups and check if the retention is never-expire. If so, it will change it to one month default or whatever you set as retention
.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for cloudwatch-auto-retention-0.0.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b656023b9b7504420323043a90afaca7c7296e8348a17a757ef49cc3e45c0a9 |
|
MD5 | 512dd7c8da4ae9a713b1f79f475aa7b1 |
|
BLAKE2b-256 | 0a7f1d3ad71e19921bb06ad961d9f6837f9ca466906a7b808c1105dfd8adfbc5 |
Hashes for cloudwatch_auto_retention-0.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49b4614aec9b62ddac4c2ede8372a18dc2754d1e709f0c5debfba8f5059326a5 |
|
MD5 | 45704aff9bcc1a83ab414b727ec3d10c |
|
BLAKE2b-256 | 96904455c246c91a09663d6f43e2da14029719432569a4a53309e1db552fa264 |