san*_*osh 6 python amazon-web-services amazon-cloudwatch aws-lambda
我有一个用python编写的AWS Lambda函数,我只需要在CloudWatch Logs中记录的消息。我已经尝试了watch望塔中给出的示例,但是仍然无法正常工作。
START RequestId: d0ba05dc-8506-11e8-82ab-afe2adba36e5 Version: $LATEST
(randomiser) Hello from Lambda
END RequestId: d0ba05dc-8506-11e8-82ab-afe2adba36e5
REPORT RequestId: d0ba05dc-8506-11e8-82ab-afe2adba36e5
Duration: 0.44 ms Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 21 MB*
Run Code Online (Sandbox Code Playgroud)
从上面的内容中,我只需要(randomiser) Hello from Lambda
登录CloudWatch,没有START
,END
和REPORT
行。
如果您启用了日志,您将始终获得默认日志。您无法禁用它们。
但是,在某些情况下,您可能希望某个特定的 Lambda 函数根本不发送日志。您可以通过专门为该 Lambda 函数创建一个新角色来解决这个问题,并且没有那里的日志记录权限。
FWIW,如果您需要在日志记录和不记录之间频繁切换,您可以拥有如下的策略文件。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
}
]
}
并在需要记录时将“拒绝”更改为“允许”。
小智 -1
没有直接的方法来禁用这些日志。不过,一个简单的解决方法是从 Lambda 执行角色中删除 CloudWatch Logs 权限。Lambda 函数使用此角色访问其他 AWS 服务,如果您删除 CloudWatch 权限,它将无法将日志推送到 CloudWatch。
注意:如果您这样做,您将无法将任何日志从 lambda 推送到 CloudWatch
归档时间: |
|
查看次数: |
1049 次 |
最近记录: |