0.0.11 • Published 1 year ago

vaughntech-nodejs-powertools-lambdalayer v0.0.11

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
1 year ago

Description

This repo packages together a suite of utilities for AWS Lambda functions running on the Node.js runtime, to ease adopting best practices such as tracing, structured logging, custom metrics.'

CDK Backup Plan

Build Release

Provides an easy to use reusable CDK construct to create Backup Plans using AWS Backups. It allows to indicate how frequently and what resources to backup.

NOTE: More details on all the available arguments can be found here

Install

NPM install:

npm install cdk-backup-plan

PyPi install:

pip install cdk-backup-plan

Usage

// ...
import { Runtime, Tracing } from 'aws-cdk-lib/aws-lambda';
import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
import { ToolsLayer } from 'vaughntech-nodejs-powertools-lambdalayer';

// ...
const hello_world_lambda =  new NodejsFunction(this, 'helloworldLambda', {
    description: `Hello World Lambda`,
    label: 'HelloFnc',
    runtime: Runtime.NODEJS_16_X,
    memorySize = 128,
    timeout: Duration.seconds(10),
    logRetention = 30,
    tracing: Tracing.ACTIVE,
    entry: path.join(__dirname, '../../src/lambda/hello/index.ts'),
    functionProps: {
    timeout: 5,
    layers: [
        toolsLayer,
    ]
});
// ...

Python usage:

# ...
from cdk_backup_plan import Backup

# ...
vpc = ec2.Vpc(self, "TestVPC")
engine = rds.DatabaseInstanceEngine.postgres(
    version=rds.PostgresEngineVersion.VER_12_3,
)
db = rds.DatabaseInstance(self, "TestInstance",
    engine=engine,
    vpc=vpc,
    credentials=rds.Credentials.from_generated_secret("postgres"),
)
Backup(self, "TestBk",
    backup_plan_name="TestPkPlan",
    backup_rate_hour=3,
    backup_completion_window=Duration.hours(2),
    resources=[bk.BackupResource.from_rds_database_instance(db)],
)
# ...

NOTE: Tagging and/or ARN can be used to reference resources not directly available in the static methods section.