CloudFormation でデプロイした Lambda が作る LogGroup を消したい

スタックを消すとLambda は消えるけど、Lambda が勝手に作った LogGroup が残り続ける。鬱陶しい。

[【小ネタ】AWS SAMでLambda関数を作成する場合はCloudWatch LogsのLog Groupも同時に作った方がいいという話](https://dev.classmethod.jp/cloud/aws/should-create-cloudwatch-logs-log-group-when-creating-lambda-with-aws-sam/) に乗ってる方法で解決したと思ったら、まれに LogGroup の残骸があってなんだこりゃ。

どうも CloudFormation が LogGroup を消した直後に Lambda が起動してしまうとこうなってしまうようだ？

なら Lambda の Role から `logs:CreateLogGroup` をはく奪してしまえばいいのでは。

こんなかんじ？

```json
{
    "AWSTemplateFormatVersion" : "2010-09-09",
    "Resources"                : {
        "MyLambdaRole" : {
            "Type" : "AWS::IAM::Role",
            "Properties" : {
                "AssumeRolePolicyDocument" : {
                    "Statement" : [
                        {
                            "Effect" : "Allow",
                            "Principal" : {
                                "Service" : "lambda.amazonaws.com"
                            },
                            "Action"    : "sts:AssumeRole"
                        }
                    ]
                },
                "Policies"                 : [
                    {
                        "PolicyName" : "lambdalogpolicy",
                        "PolicyDocument" : {
                            "Version" : "2012-10-17",
                            "Statement" : [
                                {
                                    "Effect" : "Allow",
                                    "Action" : [
                                        "logs:CreateLogStream",
                                        "logs:PutLogEvents"
                                    ],
                                    "Resource" : "arn:aws:logs:*:*:*"
                                }
                            ]
                        }
                    }
                ]
            }
        },
        "MyLambdaLogGroup" : {
            "Type" : "AWS::Logs::LogGroup",
            "Properties" : {
                "LogGroupName" : {
                    "Fn::Join" : [
                        "",
                        [
                            "/aws/lambda/",
                            {
                                "Ref" : "MyLambda"
                            }
                        ]
                    ]
                }
            }
        },
        "MyLambda"         : {
            "Type" : "AWS::Lambda::Function",
            "Properties" : {
                "Handler" : "index.handler",
                "Role"    : {
                    "Fn::GetAtt" : [
                        "MyLambdaRole",
                        "Arn"
                    ]
                },
                "Runtime" : "python3.6",
                "Code"    : {
                    "ZipFile" : {
                        "Fn::Join" : [
                            "\n",
                            [
                                "def handler(event, context):",
                                "   print(\"hoge\")"
                            ]
                        ]
                    }
                }
            }
        }
    }
}
```

もし Lambda に `logs:CreateLogGroup` が必要なら、LogGroup の RetentionInDays を設定してそのうち消えるようにしておくとか、Lambda と LogGroup の依存関係を逆転させるとか？