So stoppen Sie die AWS Lambda-Funktion, um sich bei CloudWatch anzumelden

ie Anmeldung von @AWS Lambda bei CloudWatch kann zu einem riesigen versteckten Kostenfaktor werden, wenn Sie viele davon haben, da AWS nicht angewiesen werden kann, die Anmeldung auf der CloudWatch-Plattform zu beenden. Die einzige Möglichkeit, die ich gefunden habe, besteht darin, eine benutzerdefinierte IAM-Richtlinie (die mit jedem Lambda verknüpft ist) zu verwalten und den Zugriff auf das @ explizit zu verweigerlogs: ... Aktionen

{
        "Sid": "DisableAllLogs",
        "Resource": "*",
        "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
        ],
        "Effect": "Deny"
}

Jetzt versuche ich, die Richtlinie zu verfeinern, damit nur etwas Lambda protokolliert wird. Dazu benutze ich dasBedingun Parameter der Richtlinie:

{
        "Sid": "EnableLogsForWantedLambdaTriggers",
        "Resource": "*",
        "Condition": {
            "ArnEquals": {
                "aws:SourceArn": "arn:aws:lambda:REGION:ACCOUNT-ID:function:FUNCTION-NAME"
            }
        },
        "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
        ],
        "Effect": "Allow"
}

, aber auf diese Weise wird kein Protokoll an CloudWatch gesendet. Ich denke, dass der Quell-ARN falsch ist, aber ich kann nicht herausfinden, um den richtigen zu finden.

Irgendwelche Hinweise

Antworten auf die Frage(2)

Ihre Antwort auf die Frage