private void CreateLogGroups() { if (CdkOptions == null || CdkOptions.LogGroups?.Any() != true) { return; } foreach (var logGroupOption in CdkOptions.LogGroups) { GetLogGroupResouces(logGroupOption, out var lambdaFunctionName, out var retentionTime); var logGroup = AwsCdkHandler.CreateLogGroup($"{lambdaFunctionName}-log-group", lambdaFunctionName, retentionTime); StackResources.LogGroups.Add(logGroupOption.Id, logGroup); if (logGroupOption.SubscribedLambdaIds?.Any() == true) { foreach (var subscribedLambdaId in logGroupOption.SubscribedLambdaIds) { var lambdaFunction = LocateLambda(subscribedLambdaId, $"The lambda function id {logGroupOption.FunctionId} in the log group {logGroupOption.Id} was not found", $"The lambda function id in the log group {logGroupOption.Id} cannot be empty"); AwsCdkHandler.AddLogGroupTriggerToLambda($"{subscribedLambdaId}LogTrigger", lambdaFunction, logGroup); } } } }