如何在python

时间:2018-07-11 12:46:01

标签: python amazon-web-services aws-lambda amazon-cloudwatch

我有一个用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*

从上面开始,我只需要(randomiser) Hello from Lambda即可登录CloudWatch,而没有STARTENDREPORT行。

2 个答案:

答案 0 :(得分:0)

没有直接的方法来禁用这些日志。 但是,一个简单的解决方法是从Lambda执行角色中删除CloudWatch Logs权限。 Lambda函数使用此角色来访问其他AWS服务,如果您删除CloudWatch权限,它将无法将日志推送到CloudWatch。

注意:如果执行此操作,则无法将任何日志从lambda推送到CloudWatch

答案 1 :(得分:0)

如果启用了日志,则总是会获取默认日志。您无法禁用它们。

但是,在某些情况下,您可能希望某个特定的Lambda函数完全不发送日志。您可以通过专门为该Lambda函数创建一个新角色来解决此问题,而在那里没有日志记录权限。

FWIW,如果需要经常在日志记录和不进行日志记录之间切换,则可以使用以下策略文件。

int[][] mat = new int[][]{new int[]{2,4,6}, new int[]{8,9,12}}; int oddInAll = Arrays.stream(mat).filter(i -> i%2 != 0).findFirst().getAsInt();

并在需要登录时将“拒绝”更改为“允许”。