2017-02-03 81 views
0

所以我試圖找到一個奇怪的bug的來源,這會導致一個特定的lambda函數的異常調用峯值。到目前爲止,我已經將日誌記錄功能添加到lambda表單並重新部署,以收集關於觸發lambda表達式的上下文和事件對象的更多信息。亞馬遜SNS,如何找到事件的來源?

因此,我想知道這些事件是從哪裏來的,並從上述記錄的事件對象中找到了罪魁禍首的TopicArn,但我該如何去尋找這種關係中有罪的發佈者?任何想法或我忽略的東西?

回答

4

您是否已啓用CloudTrail?您應該可以使用CloudTrail至log all the calls to your SNS topics

+0

如果執行這些循環調用尖峯的實體是「AssumedRole」類型,該怎麼辦?我已經啓用了CloudTrail。 –

+0

「AssumeRole」事件也記錄在CloudTrail中。 –

+0

想通了。感謝Mark的幫助 –

1

根據您的記錄情況,您可能也希望將SQS隊列附加到該主題。這會給你完整的數據包。我可以在我的一個發現有這樣的:

{ 
    "version": "0", 
    "id": "7f47b81a-10cc-4b28-be35-123456789", 
    "detail-type": "Scheduled Event", 
    "source": "aws.events", 
    "account": "123456789", 
    "time": "2017-02-03T18:28:52Z", 
    "region": "us-east-1", 
    "resources": [ 
    "arn:aws:events:us-east-1:123456789:rule\/5_min_scheduler" 
    ], 
    "detail": { 

    } 
} 

這是很明顯,從預定的CloudWatch事件,但它確實有一個來源。我不確定你的將會如何,但除了Lambda之外,還可以輕鬆地將主題推送到隊列以協助調試。