github.com/mweagle/Sparta@v1.15.0/doc_cloudwatchlogs_test.go (about) 1 package sparta 2 3 import ( 4 "context" 5 6 "github.com/aws/aws-lambda-go/lambdacontext" 7 "github.com/sirupsen/logrus" 8 ) 9 10 func cloudWatchLogsProcessor(ctx context.Context, 11 props map[string]interface{}) error { 12 lambdaCtx, _ := lambdacontext.FromContext(ctx) 13 Logger().WithFields(logrus.Fields{ 14 "RequestID": lambdaCtx.AwsRequestID, 15 }).Info("CloudWatch log event") 16 Logger().Info("CloudWatch Log event received") 17 return nil 18 } 19 20 func ExampleCloudWatchLogsPermission() { 21 var lambdaFunctions []*LambdaAWSInfo 22 23 cloudWatchLogsLambda, _ := NewAWSLambda(LambdaName(cloudWatchLogsProcessor), 24 cloudWatchLogsProcessor, 25 IAMRoleDefinition{}) 26 27 cloudWatchLogsPermission := CloudWatchLogsPermission{} 28 cloudWatchLogsPermission.Filters = make(map[string]CloudWatchLogsSubscriptionFilter, 1) 29 cloudWatchLogsPermission.Filters["MyFilter"] = CloudWatchLogsSubscriptionFilter{ 30 LogGroupName: "/aws/lambda/*", 31 } 32 cloudWatchLogsLambda.Permissions = append(cloudWatchLogsLambda.Permissions, cloudWatchLogsPermission) 33 34 lambdaFunctions = append(lambdaFunctions, cloudWatchLogsLambda) 35 Main("CloudWatchLogs", "Registers for CloudWatch Logs", lambdaFunctions, nil, nil) 36 }