要解决“AWS Lambda日志组在删除后未重新创建”的问题,您可以使用以下代码示例:
import boto3
def create_lambda_log_group(lambda_function_name, log_group_name):
client = boto3.client('logs')
try:
response = client.create_log_group(logGroupName=log_group_name)
print("Log group '{}' created successfully.".format(log_group_name))
except client.exceptions.ResourceAlreadyExistsException:
print("Log group '{}' already exists.".format(log_group_name))
try:
response = client.put_retention_policy(
logGroupName=log_group_name,
retentionInDays=30
)
print("Retention policy set for log group '{}'.".format(log_group_name))
except Exception as e:
print("Error setting retention policy for log group '{}': {}".format(log_group_name, str(e)))
try:
response = client.put_subscription_filter(
logGroupName=log_group_name,
filterName='LambdaFilter',
filterPattern='',
destinationArn='arn:aws:lambda:us-west-2:123456789012:function:MyLambdaFunction'
)
print("Subscription filter created for log group '{}'.".format(log_group_name))
except Exception as e:
print("Error creating subscription filter for log group '{}': {}".format(log_group_name, str(e)))
使用上述代码示例,您可以调用create_lambda_log_group
函数来创建日志组并设置保留策略和订阅过滤器。请确保将lambda_function_name
替换为您的Lambda函数的名称,并将log_group_name
替换为您想要创建的日志组的名称。
请注意,这只是一个示例代码,您可能需要根据您的需求进行修改。另外,确保您已经配置了正确的AWS凭证,以便具有足够的权限来执行这些操作。
上一篇:AWS Lambda日志输出问题