Skip to content

Commit 1525a6b

Browse files
committed
Clean up CW logs on stack deletion
1 parent 861ba7a commit 1525a6b

File tree

3 files changed

+21
-0
lines changed

3 files changed

+21
-0
lines changed

e2e_tests/setup/integ-test-authentication.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ Resources:
8282
- Effect: Allow
8383
Action:
8484
- "lambda:*"
85+
- "logs:*"
8586
Resource: "*"
8687
Condition:
8788
"ForAnyValue:StringEquals":

examples/servers/time/cdk_stack.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@
22
App,
33
DockerVolume,
44
Environment,
5+
RemovalPolicy,
56
Stack,
67
aws_iam as iam,
78
aws_lambda as lambda_,
89
aws_lambda_python_alpha as lambda_python,
10+
aws_logs as logs,
911
)
1012
from constructs import Construct
1113
import jsii
@@ -39,11 +41,20 @@ def __init__(
3941
) -> None:
4042
super().__init__(scope, construct_id, **kwargs)
4143

44+
log_group = logs.LogGroup(
45+
self,
46+
"ServerFunctionLogGroup",
47+
log_group_name=f"mcp-server-time{stack_name_suffix}",
48+
retention=logs.RetentionDays.ONE_DAY,
49+
removal_policy=RemovalPolicy.DESTROY,
50+
)
51+
4252
lambda_python.PythonFunction(
4353
self,
4454
"ServerFunction",
4555
function_name="mcp-server-time" + stack_name_suffix,
4656
role=iam.Role.from_role_name(self, "Role", "mcp-lambda-example-servers"),
57+
log_group=log_group,
4758
runtime=lambda_.Runtime.PYTHON_3_13,
4859
entry="function",
4960
memory_size=2048,

examples/servers/weather-alerts/lib/weather-alerts-mcp-server.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import * as cdk from "aws-cdk-lib";
22
import { Construct } from "constructs";
33
import { NodejsFunction } from "aws-cdk-lib/aws-lambda-nodejs";
44
import { Code, LayerVersion, Runtime } from "aws-cdk-lib/aws-lambda";
5+
import { LogGroup, RetentionDays } from "aws-cdk-lib/aws-logs";
56
import { Role } from "aws-cdk-lib/aws-iam";
67
import * as path from "path";
78

@@ -30,11 +31,19 @@ export class WeatherAlertsMcpServer extends cdk.Stack {
3031
},
3132
}),
3233
compatibleRuntimes: [Runtime.NODEJS_22_X],
34+
removalPolicy: cdk.RemovalPolicy.DESTROY,
35+
});
36+
37+
const logGroup = new LogGroup(this, "LogGroup", {
38+
logGroupName: "mcp-server-weather-alerts" + stackNameSuffix,
39+
retention: RetentionDays.ONE_DAY,
40+
removalPolicy: cdk.RemovalPolicy.DESTROY,
3341
});
3442

3543
new NodejsFunction(this, "function", {
3644
functionName: "mcp-server-weather-alerts" + stackNameSuffix,
3745
role: Role.fromRoleName(this, "role", "mcp-lambda-example-servers"),
46+
logGroup,
3847
memorySize: 2048,
3948
runtime: Runtime.NODEJS_22_X,
4049
environment: {

0 commit comments

Comments
 (0)