Warum finde ich meine DataSync-Aufgabenprotokolle nicht in der CloudWatch-Protokollgruppe?

Lesedauer: 3 Minute
0

Ich habe eine AWS DataSync-Aufgabe ausgeführt, aber ich kann die Protokolle in der entsprechenden Amazon CloudWatch-Protokollgruppe nicht finden. Wie kann ich das Problem beheben?

Behebung

Vergewissern Sie sich, dass CloudWatch Logs über eine Ressourcenrichtlinie verfügt, die es DataSync ermöglicht, Protokolle hochzuladen. Überprüfen Sie die CloudWatch Logs-Ressourcenrichtlinien in der AWS-Region Ihres DataSync-Agenten wie folgt:

**Hinweis:**Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten,stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.

1.Führen Sie den Befehl describe-resource-policies über die AWS-Befehlszeilenschnittstelle (AWS CLI) aus:

aws logs describe-resource-policies --region us-east-1

Hinweis: Für jedes AWS-Konto sind bis zu 10 Ressourcenrichtlinien pro Region für CloudWatch Logs zulässig. Wenn Sie dieses Limit überschreiten, erhalten Sie beim Erstellen Ihrer Ressourcenrichtlinie eine Fehlermeldung.

2.Überprüfen Sie die Ausgabe des Befehls. Wenn keine Ressourcenrichtlinie eingerichtet ist, sieht die Ausgabe wie folgt aus:

{
  "resourcePolicies": []
}

**Wichtig:**Vergewissern Sie sich, dass die Ressourcenrichtlinie für DataSync in der richtigen AWS-Region aktiviert ist. Die Richtlinie muss sich in derselben Region wie der von Ihnen verwendete DataSync-Agent befinden.

Gehen Sie wie folgt vor, um eine Ressourcenrichtlinie zu erstellen, die DataSync-Berechtigungen für das Hochladen von Protokollen gewährt:

1.Erstellen Sie eine JSON-Datei, die DataSync die Mindestberechtigungen für das Hochladen von Protokollen gewährt:

{
  "Statement": [
    {
      "Sid": "DataSyncLogsToCloudWatchLogs",
      "Effect": "Allow",
      "Action": [
        "logs:PutLogEvents",
        "logs:CreateLogStream"
      ],
      "Principal": {
        "Service": "datasync.amazonaws.com"
      },
      "Resource": "*"
    }
  ],
  "Version": "2012-10-17"
}

Sie können die Datei ** ** policy.json benennen.

2.Führen Sie den ](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/put-resource-policy.html)Befehl[ put-resource-policy mit der AWS-CLI aus, um mithilfe der JSON-Datei eine Ressourcenrichtlinie zu erstellen:

aws logs put-resource-policy --policy-name trustDataSync --policy-document file://policy.json --region <Region>

**Wichtig:**Legen Sie die AWS-Region Ihres DataSync-Agenten als Wert für --region fest.

3.Führen Sie den ](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/describe-resource-policies.html)Befehl[ describe-resource-policies aus, um zu bestätigen, dass die Ressourcenrichtlinie erstellt wurde:

aws logs describe-resource-policies --region <Region>

Hinweis: Für jedes AWS-Konto sind bis zu 10 Ressourcenrichtlinien pro Region für CloudWatch Logs zulässig. Wenn Sie dieses Limit überschreiten, erhalten Sie beim Erstellen Ihrer Ressourcenrichtlinie eine Fehlermeldung. Verwenden Sie den ](https://docs.aws.amazon.com/cli/latest/reference/logs/put-resource-policy.html)Befehl[ put-resource-policy, um zu überprüfen, ob Sie das Limit erreicht haben.

4.Nachdem Sie die Ressourcenrichtlinie erstellt haben, sieht die Befehlsausgabe wie folgt aus:

{
  "resourcePolicies": [
    {
      "policyName": "trustDataSync",
      "policyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"DataSyncLogsToCloudWatchLogs\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"datasync.amazonaws.com\"},\"Action\":[\"logs:PutLogEvents\",\"logs:CreateLogStream\"],\"Resource\":\"*\"}]}",
      "lastUpdatedTime": 1577448776606
    }
  ]
}

5.Führen Sie eine DataSync-Aufgabe aus, um die Ressourcenrichtlinie zu testen. Vergewissern Sie sich einige Minuten nach Ausführung der Aufgabe, dass Sie den Log-Stream der entsprechenden CloudWatch-Protokollgruppe sehen.


Ähnliche Informationen

Überblick über die Verwaltung von Zugriffsberechtigungen auf Ihre CloudWatch Logs-Ressourcen

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren