

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Überwachung von Bereitstellungen in CodeDeploy
<a name="monitoring"></a>

Die Überwachung ist ein wichtiger Bestandteil der Aufrechterhaltung der Zuverlässigkeit, Verfügbarkeit und Leistung Ihrer CodeDeploy AWS Lösungen. Sie sollten Überwachungsdaten aus allen Teilen Ihrer AWS Lösung sammeln, damit Sie einen etwaigen Ausfall an mehreren Stellen leichter debuggen können. Bevor Sie mit der Überwachung beginnen CodeDeploy, sollten Sie jedoch einen Überwachungsplan erstellen, der Antworten auf die folgenden Fragen enthält:
+ Was sind Ihre Ziele bei der Überwachung?
+ Welche Ressourcen werden überwacht?
+ Wie oft werden diese Ressourcen überwacht?
+ Welche Überwachungstools werden verwendet?
+ Wer soll die Überwachungsaufgaben ausführen?
+ Wer soll benachrichtigt werden, wenn Fehler auftreten?

Der nächste Schritt besteht darin, eine Ausgangsbasis für die normale CodeDeploy Leistung in Ihrer Umgebung festzulegen, indem Sie die Leistung zu verschiedenen Zeiten und unter verschiedenen Lastbedingungen messen. Speichern Sie bei der Überwachung historische Überwachungsdaten CodeDeploy, damit Sie sie mit aktuellen Leistungsdaten vergleichen, normale Leistungsmuster und Leistungsanomalien identifizieren und Methoden zur Behebung von Problemen entwickeln können.

Wenn Sie beispielsweise verwenden CodeDeploy, können Sie den Status von Bereitstellungen und Zielinstanzen überwachen. Wenn Bereitstellungen oder Instanzen fehlschlagen, müssen Sie möglicherweise eine Anwendungsspezifikationsdatei neu konfigurieren, den CodeDeploy Agenten neu installieren oder aktualisieren, Einstellungen in einer Anwendung oder Bereitstellungsgruppe aktualisieren oder Änderungen an den Instanzeinstellungen oder einer Datei vornehmen. AppSpec 

Zur Festlegung eines Grundwertes sollten Sie mindestens die folgenden Elemente überwachen:
+ Bereitstellungsereignisse und -status
+ Instance-Ereignisse und -status

## Automatisierte Überwachungstools
<a name="monitoring_automated_tools"></a>

AWS stellt verschiedene Tools bereit, die Sie zur Überwachung verwenden können. CodeDeploy Sie können einige dieser Tools so konfigurieren, dass diese die Überwachung für Sie übernehmen, während bei anderen Tools ein manuelles Eingreifen nötig ist. Wir empfehlen, dass Sie die Überwachungsaufgaben möglichst automatisieren.

Sie können die folgenden automatisierten Überwachungstools verwenden, um zu beobachten CodeDeploy und zu melden, wenn etwas nicht stimmt:
+ **Amazon CloudWatch Alarms** — Überwachen Sie eine einzelne Metrik über einen von Ihnen angegebenen Zeitraum und führen Sie eine oder mehrere Aktionen aus, die auf dem Wert der Metrik im Verhältnis zu einem bestimmten Schwellenwert über mehrere Zeiträume basieren. Die Aktion ist eine Benachrichtigung, die an ein Amazon Simple Notification Service (Amazon SNS) -Thema oder eine Amazon EC2 Auto Scaling Scaling-Richtlinie gesendet wird. CloudWatch Alarme lösen keine Aktionen aus, nur weil sie sich in einem bestimmten Status befinden. Der Status muss sich geändert haben und für eine bestimmte Anzahl von Zeiträumen beibehalten worden sein. Weitere Informationen finden Sie unter [Überwachung von Bereitstellungen mit Amazon-Tools CloudWatch](monitoring-cloudwatch.md).

  Weitere Informationen zur Aktualisierung Ihrer Servicerolle für die CloudWatch -Alarmüberwachung finden Sie unter [Gewähren CloudWatch Sie einer CodeDeploy Servicerolle Berechtigungen](monitoring-create-alarms-grant-permissions.md). Hinweise zum Hinzufügen von CloudWatch Alarmüberwachung zu Ihren CodeDeploy Vorgängen finden Sie unter [Erstellen Sie eine Anwendung mit CodeDeploy](applications-create.md)[Erstellen Sie eine Bereitstellungsgruppe mit CodeDeploy](deployment-groups-create.md), oder[Ändern Sie die Einstellungen der Bereitstellungsgruppe mit CodeDeploy](deployment-groups-edit.md).

  
+ **Amazon CloudWatch Logs** — Überwachen, speichern und greifen Sie auf Ihre Protokolldateien aus AWS CloudTrail oder anderen Quellen zu. Weitere Informationen finden Sie unter [Überwachung von Protokolldateien](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatchLogs.html) im * CloudWatch Amazon-Benutzerhandbuch*.

  Informationen zur Verwendung der CloudWatch Konsole zum Anzeigen von CodeDeploy Protokollen finden Sie unter [ CodeDeploy CloudWatch Protokolle in der Protokollkonsole anzeigen](https://aws.amazon.com/blogs/devops/view-aws-codedeploy-logs-in-amazon-cloudwatch-console/).
+ **Amazon CloudWatch Events** — Ordnen Sie Ereignisse zu und leiten Sie sie an eine oder mehrere Zielfunktionen oder Streams weiter, um Änderungen vorzunehmen, Statusinformationen zu erfassen und Korrekturmaßnahmen zu ergreifen. Weitere Informationen finden Sie unter [Was ist Amazon CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatchEvents.html) im * CloudWatch Amazon-Benutzerhandbuch*.

  Informationen zur Verwendung von CloudWatch Events in Ihrem CodeDeploy Betrieb finden Sie unter[Überwachung von Bereitstellungen mit Amazon Events CloudWatch](monitoring-cloudwatch-events.md).
+ **AWS CloudTrail Protokollüberwachung** — Teilen Sie Protokolldateien zwischen Konten, überwachen CloudTrail Sie Protokolldateien in Echtzeit, indem Sie sie an CloudWatch Logs senden, schreiben Sie Anwendungen zur Protokollverarbeitung in Java und stellen Sie sicher, dass sich Ihre Protokolldateien nach der Lieferung von nicht geändert haben CloudTrail. Weitere Informationen finden Sie unter [Arbeiten mit CloudTrail Protokolldateien](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-working-with-log-files.html) im *AWS CloudTrail Benutzerhandbuch*. 

  Informationen zur Verwendung von CloudTrail mit CodeDeploy finden Sie unter[Überwachung von Bereitstellungen mit AWS CloudTrail](monitoring-cloudtrail.md).
+ **Amazon Simple Notification Service** — Konfigurieren Sie ereignisgesteuerte Auslöser, um SMS- oder E-Mail-Benachrichtigungen über Bereitstellungs- und Instance-Ereignisse wie Erfolg oder Misserfolg zu erhalten. Weitere Informationen finden Sie unter [Thema erstellen](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) und [Was ist Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/welcome.html).

  Informationen zum Einrichten von Amazon SNS SNS-Benachrichtigungen für finden Sie CodeDeploy unter[Überwachung von Bereitstellungen mit Amazon SNS SNS-Ereignisbenachrichtigungen](monitoring-sns-event-notifications.md).

## Manuelle Überwachungstools
<a name="monitoring_manual_tools"></a>

Ein weiterer wichtiger Teil der Überwachung CodeDeploy umfasst die manuelle Überwachung der Elemente, die von den CloudWatch Alarmen nicht abgedeckt werden. Die Konsolen-Dashboards CodeDeploy CloudWatch, und andere AWS Konsolen-Dashboards bieten einen at-a-glance Überblick über den Zustand Ihrer AWS Umgebung. Wir empfehlen, dass Sie auch die Protokolldateien der CodeDeploy Bereitstellungen überprüfen.
+ CodeDeploy Die Konsole zeigt:
  + Status von Bereitstellungen
  + Das Datum und die Uhrzeit der zuletzt versuchten und letzten erfolgreichen Bereitstellung einer Revision
  + Die Anzahl der Instances, die in einer Bereitstellung erfolgreich war, fehlgeschlagen ist, übersprungen wurde oder in Bearbeitung ist
  + Der Status lokaler Instances
  + Das Datum und die Uhrzeit, wann lokale Instances registriert oder abgemeldet wurden
+ CloudWatch Die Startseite zeigt:
  + Aktuelle Alarme und Status
  + Diagramme mit Alarmen und Ressourcen
  + Servicestatus

  Darüber hinaus können CloudWatch Sie Folgendes verwenden: 
  + Erstellen [angepasster Dashboards](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/CloudWatch_Dashboards.html) zur Überwachung der gewünschten Services.
  + Aufzeichnen von Metrikdaten, um Probleme zu beheben und Trends zu erkennen
  + Suchen und durchsuchen Sie alle Ihre AWS Ressourcenmetriken
  + Erstellen und Bearbeiten von Alarmen, um über Probleme benachrichtigt zu werden

**Topics**
+ [Monitoring Deployments with Amazon CloudWatch Tools](monitoring-cloudwatch.md)
+ [Monitoring Deployments](monitoring-cloudtrail.md)
+ [Monitoring Deployments with Amazon SNS Event Notifications](monitoring-sns-event-notifications.md)

# Überwachung von Bereitstellungen mit Amazon-Tools CloudWatch
<a name="monitoring-cloudwatch"></a>

Sie können CodeDeploy Bereitstellungen mit den folgenden CloudWatch Tools überwachen: Amazon CloudWatch Events, CloudWatch Alarme und Amazon CloudWatch Logs. 

Die Überprüfung der vom CodeDeploy Agenten erstellten Protokolle und der Bereitstellungen kann Ihnen dabei helfen, die Ursachen von Bereitstellungsfehlern zu beheben. Als Alternative zur Überprüfung der CodeDeploy Protokolle für jeweils eine Instanz können Sie CloudWatch Logs verwenden, um alle Protokolle an einem zentralen Ort zu überwachen.

Informationen zur Verwendung von CloudWatch Alarmen und CloudWatch Ereignissen zur Überwachung Ihrer CodeDeploy Bereitstellungen finden Sie in den folgenden Themen. 

**Topics**
+ [Überwachung von Bereitstellungen mit CloudWatch Alarmen in CodeDeploy](monitoring-create-alarms.md)
+ [Überwachung von Bereitstellungen mit Amazon Events CloudWatch](monitoring-cloudwatch-events.md)

# Überwachung von Bereitstellungen mit CloudWatch Alarmen in CodeDeploy
<a name="monitoring-create-alarms"></a>

Sie können einen CloudWatch Alarm für eine Instance oder Amazon EC2 Auto Scaling Scaling-Gruppe erstellen, die Sie in Ihren CodeDeploy Vorgängen verwenden. Ein Alarm überwacht eine einzelne Metrik über einen von Ihnen angegebenen Zeitraum und führt eine oder mehrere Aktionen aus, die auf dem Wert der Metrik im Verhältnis zu einem bestimmten Schwellenwert über mehrere Zeiträume basieren. CloudWatch Alarme rufen Aktionen aus, wenn sich ihr Status ändert (z. B. von `OK` zu`ALARM`).

Mithilfe der systemeigenen CloudWatch Alarmfunktion können Sie alle Aktionen angeben, die unterstützt werden, CloudWatch wenn eine Instance, die Sie in einer Bereitstellung verwenden, ausfällt, z. B. das Senden einer Amazon SNS SNS-Benachrichtigung oder das Stoppen, Beenden, Neustarten oder Wiederherstellen einer Instance. Für Ihren CodeDeploy Betrieb können Sie eine Bereitstellungsgruppe so konfigurieren, dass eine Bereitstellung immer dann gestoppt wird, wenn ein CloudWatch Alarm, den Sie der Bereitstellungsgruppe zuordnen, aktiviert wird. 

Sie können einer CodeDeploy Bereitstellungsgruppe bis zu zehn CloudWatch Alarme zuordnen. Wenn einer der angegebenen Alarme aktiviert wird, stoppt die Bereitstellung und der Status wird auf Stopped aktualisiert. Um diese Option verwenden zu können, müssen Sie Ihrer CodeDeploy Servicerolle CloudWatch Berechtigungen erteilen.

Informationen zum Einrichten von CloudWatch Alarmen in der CloudWatch Konsole finden Sie unter [ CloudWatch Amazon-Alarme erstellen](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/AlarmThatSendsEmail.html) im * CloudWatch Amazon-Benutzerhandbuch*.

Informationen zum Zuordnen eines CloudWatch Alarms zu einer Bereitstellungsgruppe in CodeDeploy finden Sie unter [Erstellen Sie eine Bereitstellungsgruppe mit CodeDeploy](deployment-groups-create.md) und[Ändern Sie die Einstellungen der Bereitstellungsgruppe mit CodeDeploy](deployment-groups-edit.md).

**Topics**
+ [Gewähren CloudWatch Sie einer CodeDeploy Servicerolle Berechtigungen](monitoring-create-alarms-grant-permissions.md)

# Gewähren CloudWatch Sie einer CodeDeploy Servicerolle Berechtigungen
<a name="monitoring-create-alarms-grant-permissions"></a>

Bevor Sie die CloudWatch Alarmüberwachung in Ihren Bereitstellungen verwenden können, muss der Servicerolle, die Sie in Ihrem CodeDeploy Betrieb verwenden, die Berechtigung zum Zugriff auf die CloudWatch Ressourcen erteilt werden. 

**Um einer Servicerolle CloudWatch Berechtigungen zu erteilen**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die IAM-Konsole unter [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. **Wählen Sie in der IAM-Konsole im Navigationsbereich die Option Rollen aus.**

1. Wählen Sie den Namen der Servicerolle, die Sie in Ihren AWS CodeDeploy Vorgängen verwenden.

1. Klicken Sie auf der Registerkarte **Permissions** im Bereich **Inline Policies** auf **Create Role Policy**.

   –oder–

   Wenn die Schaltfläche **Create Role Policy** nicht verfügbar ist, erweitern Sie den Bereich **Inline Policies** und wählen Sie dann **click here** aus.

1. Wählen Sie auf der Seite **Set Permissions** die Option **Custom Policy** und dann **Select** aus.

1. Geben Sie auf der **Review Policy** im Feld **Policy Name** einen Namen zur Identifizierung dieser Richtlinie ein (z. B. `CWAlarms`).

1. Kopieren Sie das Folgende in das Feld **Policy Document:** 

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "cloudwatch:DescribeAlarms",
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Klicken Sie auf **Apply Policy** (Richtlinie anwenden).

# Überwachung von Bereitstellungen mit Amazon Events CloudWatch
<a name="monitoring-cloudwatch-events"></a>

Sie können Amazon CloudWatch Events verwenden, um Änderungen im Status einer Instance oder einer Bereitstellung (ein „Ereignis“) in Ihrem CodeDeploy Betrieb zu erkennen und darauf zu reagieren. Auf der Grundlage der von Ihnen erstellten Regeln ruft CloudWatch Events dann eine oder mehrere Zielaktionen auf, wenn eine Bereitstellung oder Instance in den Status übergeht, den Sie in einer Regel angeben. Abhängig von der Statusänderung können Sie Benachrichtigungen versenden, Statusinformationen erfassen, Korrekturmaßnahmen ausführen, Ereignisse auslösen oder andere Aktionen ausführen. Sie können die folgenden Zieltypen auswählen, wenn Sie CloudWatch Ereignisse als Teil Ihrer CodeDeploy Operationen verwenden:
+ AWS Lambda Funktionen
+  Kinesis-Streams
+ Amazon SQS-Warteschlangen
+ Integrierte Ziele (`EC2 CreateSnapshot API call``EC2 RebootInstances API call`,`EC2 StopInstances API call`, und`EC2 TerminateInstances API call`)
+ Amazon SNS-Themen

Nachfolgend finden Sie einige Anwendungsfälle:
+ Verwenden Sie eine Lambda-Funktion, um eine Benachrichtigung an einen Slack-Kanal zu senden, wenn eine Bereitstellung fehlschlägt.
+ Push-Daten über Bereitstellungen oder Instances in einem Kinesis Stream unterstützen die umfassende Echtzeit-Statusüberwachung.
+ Verwenden Sie CloudWatch Alarmaktionen, um EC2 Amazon-Instances automatisch zu stoppen, zu beenden, neu zu starten oder wiederherzustellen, wenn ein von Ihnen festgelegtes Bereitstellungs- oder Instance-Ereignis eintritt.

Im Rest dieses Themas wird das grundlegende Verfahren zum Erstellen einer CloudWatch Ereignisregel für beschrieben CodeDeploy. Bevor Sie jedoch Ereignisregeln für die Verwendung in Ihren CodeDeploy Vorgängen erstellen, sollten Sie Folgendes tun:
+ Erfüllen Sie die Voraussetzungen für CloudWatch Ereignisse. Weitere Informationen finden Sie unter [Voraussetzungen für Amazon CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CWE_Prerequisites.html).
+ Machen Sie sich unter Ereignisse mit Ereignissen, Regeln und Zielen vertraut. CloudWatch Weitere Informationen finden Sie unter [Was ist Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) und [Neue CloudWatch Ereignisse — Verfolgen Sie Änderungen an Ihren AWS Ressourcen und reagieren](https://aws.amazon.com/blogs/aws/new-cloudwatch-events-track-and-respond-to-changes-to-your-aws-resources/) Sie darauf.
+ Erstellen Sie das Ziel oder die Ziele für die Ereignisregeln. 

**So erstellen Sie eine CloudWatch Ereignisregel für CodeDeploy:**

1. Öffnen Sie die CloudWatch Konsole unter [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Wählen Sie im Navigationsbereich die Option **Events**.

1. Wählen Sie **Create rule (Regel erstellen)** und dann unter **Event selector (Ereignisauswahl)** die Option **AWS CodeDeploy**.

1. Geben Sie einen Detailtyp an:
   + Um eine Regel zu erstellen, die für alle Statusänderungen von Instances und Bereitstellungen gilt, wählen Sie **Any detail type (Beliebiger Detailtyp)**, und führen Sie anschließend Schritt 6 aus.
   + Um eine Regel zu erstellen, die nur für Instances gilt, wählen Sie **Spezifischer Detailtyp** und anschließend **Benachrichtigung zur Änderung des CodeDeploy Instanzstatus** aus.
   + Um eine Regel zu erstellen, die nur für Bereitstellungen gilt, wählen Sie **Spezifischer Detailtyp** und anschließend Benachrichtigung zur Änderung des **CodeDeploy Bereitstellungsstatus aus.**

1. Geben Sie die Änderungen an, für die die Regel gilt:
   + Um eine Regel zu erstellen, die für alle Statusänderungen gilt, wählen Sie **Any state (Beliebiger Status)**.
   + Um eine Regel zu erstellen, die nur für einige Statusänderungen gilt, klicken Sie auf **Specific state(s) (Beliebige(r) Status)**, und wählen Sie dann mindestens einen Statuswert aus der Liste aus. Die folgenden Tabelle enthält die wählbaren Statuswerte:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/codedeploy/latest/userguide/monitoring-cloudwatch-events.html)

1. Geben Sie an, für welche CodeDeploy Anwendungen die Regel gilt:
   + Um eine Regel zu erstellen, die für alle Anwendungen gilt, wählen Sie **Any application (Beliebige Anwendung)**, und führen Sie anschließend Schritt 8 aus.
   + Um eine Regel zu erstellen, die nur für eine Anwendung gilt, wählen Sie **Specific application (Spezifische Anwendung)** und dann den Namen der Anwendung aus der Liste.

1. Geben Sie an, für welche Bereitstellungsgruppen die Regel gilt:
   + Um eine Regel zu erstellen, die für alle Bereitstellungsgruppen im Zusammenhang mit der ausgewählten Anwendung gilt, wählen Sie **Any deployment group (Beliebige Bereitstellungsgruppe)**.
   + Um eine Regel zu erstellen, die nur für eine der Bereitstellungsgruppen im Zusammenhang mit der ausgewählten Anwendung gilt, wählen Sie **Specific deployment group(s) (Spezifische Bereitstellungsgruppe(n))** und dann den Namen der Bereitstellungsgruppe aus der Liste.

1. Überprüfen Sie die eingerichteten Regeln, um sicherzustellen, dass sie den Anforderungen Ihrer Ereignisüberwachung entsprechen.

1. Wählen Sie im Bereich **Targets** die Option **Add target\$1**.

1. Wählen Sie in der Liste **Select target type (Zieltyp auswählen)** den Zieltyp aus, den Sie für die Verwendung mit dieser Regel vorbereitet haben, und konfigurieren Sie dann weitere für diesen Typ erforderliche Optionen. 

1. Wählen Sie **Details konfigurieren**.

1. Geben Sie auf der Seite **Configure rule details (Regeldetails konfigurieren)** einen Namen und eine Beschreibung für die Regel ein, und wählen Sie dann das Feld **State (Status)**, um die Regel sofort zu aktivieren.

1. Wenn Sie mit der Regel zufrieden sind, klicken Sie auf **Create rule (Regel erstellen)**.

# Überwachung von Bereitstellungen mit AWS CloudTrail
<a name="monitoring-cloudtrail"></a>

CodeDeploy ist CodeDeploy in einen Service integriert CloudTrail, der API-Aufrufe erfasst, die von oder im Namen Ihres AWS Kontos getätigt wurden, und die Protokolldateien an einen von Ihnen angegebenen Amazon S3 S3-Bucket übermittelt. CloudTrailerfasst API-Aufrufe von der CodeDeploy Konsole, von CodeDeploy Befehlen über die AWS CLI oder CodeDeploy APIs direkt von. Anhand der von gesammelten Informationen können Sie feststellen CloudTrail, an welche Adresse die Anfrage gestellt wurde CodeDeploy, von welcher Quell-IP-Adresse aus die Anfrage gestellt wurde, wer die Anfrage gestellt hat, wann sie gestellt wurde usw. Weitere Informationen darüber CloudTrail, einschließlich der Konfiguration und Aktivierung, finden Sie im [AWS CloudTrail Benutzerhandbuch](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/).

## CodeDeploy Informationen in CloudTrail
<a name="service-name-info-in-cloudtrail"></a>

Wenn die CloudTrail Protokollierung in Ihrem AWS Konto aktiviert ist, werden API-Aufrufe von CodeDeploy Aktionen in Protokolldateien nachverfolgt. CodeDeploy Aufzeichnungen werden zusammen mit anderen AWS Serviceaufzeichnungen in einer Protokolldatei geschrieben. CloudTrail bestimmt anhand eines Zeitraums und der Dateigröße, wann eine neue Datei erstellt und in diese geschrieben werden soll.

Alle CodeDeploy Aktionen werden in der [AWS CodeDeploy Befehlszeilenreferenz und der [AWS CodeDeploy API-Referenz](https://docs.aws.amazon.com/codedeploy/latest/APIReference/)](https://docs.aws.amazon.com/cli/latest/reference/deploy/index.html) protokolliert und dokumentiert. Beispielsweise generieren Aufrufe zum Erstellen von Bereitstellungen, zum Löschen von Anwendungen und zum Registrieren von Anwendungsrevisionen Einträge in CloudTrail Protokolldateien. 

Jeder Protokolleintrag enthält Informationen über den Ersteller der Anforderung. Anhand der Benutzeridentitätsinformationen im Protokoll können Sie feststellen, ob die Anfrage mit Root- oder Benutzeranmeldedaten, mit temporären Sicherheitsanmeldedaten für eine Rolle oder einen Verbundbenutzer oder von einem anderen Dienst gestellt wurde. AWS Weitere Informationen finden Sie im Feld **userIdentity** in der [CloudTrail -Ereignisreferenz](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/event_reference_top_level.html).

Sie können Ihre Protokolldateien beliebig lange im Bucket speichern. Sie können aber auch Amazon S3-Lebenszyklusregeln aufstellen, anhand derer die Protokolldateien automatisch archiviert oder gelöscht werden. Standardmäßig wird die serverseitige Verschlüsselung (SSE) von Amazon S3 verwendet, um Ihre Protokolldateien zu verschlüsseln.

Sie können Amazon SNS SNS-Benachrichtigungen CloudTrail veröffentlichen lassen, wenn neue Protokolldateien geliefert werden. Weitere Informationen finden Sie unter [Konfigurieren von Amazon SNS-Benachrichtigungen für CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html).

Sie können auch CodeDeploy Protokolldateien aus mehreren AWS Regionen und mehreren AWS Konten in einem einzigen Amazon S3 S3-Bucket zusammenfassen. Weitere Informationen finden Sie unter [Empfangen von CloudTrail Protokolldateien aus mehreren Regionen](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/aggregating_logs_top_level.html).

## Grundlegendes zu CodeDeploy Protokolldateieinträgen
<a name="understanding-service-name-entries"></a>

CloudTrail Protokolldateien können einen oder mehrere Protokolleinträge enthalten, wobei jeder Eintrag aus mehreren Ereignissen im JSON-Format besteht. Ein Protokolleintrag stellt eine einzelne Anforderung aus einer beliebigen Quelle dar und enthält unter anderem Informationen über die angeforderte Aktion, etwaige Parameter und das Datum und die Uhrzeit der Aktion. Die Protokolleinträge sind nicht zwangsläufig in einer bestimmten Reihenfolge aufgeführt. Sie sind also kein geordnetes Stacktrace der öffentlichen API-Aufrufe.

Das folgende Beispiel zeigt einen CloudTrail Protokolleintrag, der die Aktion „Bereitstellungsgruppe CodeDeploy erstellen“ veranschaulicht:

```
{
	"Records": [{
		"eventVersion": "1.02",
		"userIdentity": {
			"type": "AssumedRole",
			"principalId": "AKIAI44QH8DHBEXAMPLE:203.0.113.11",
			"arn": "arn:aws:sts::123456789012:assumed-role/example-role/203.0.113.11",
			"accountId": "123456789012",
			"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
			"sessionContext": {
				"attributes": {
					"mfaAuthenticated": "false",
					"creationDate": "2014-11-27T03:57:36Z"
				},
				"sessionIssuer": {
					"type": "Role",
					"principalId": "AKIAI44QH8DHBEXAMPLE",
					"arn": "arn:aws:iam::123456789012:role/example-role",
					"accountId": "123456789012",
					"userName": "example-role"
				}
			}
		},
		"eventTime": "2014-11-27T03:57:36Z",
		"eventSource": "codedeploy.amazonaws.com",
		"eventName": "CreateDeploymentGroup",
		"awsRegion": "us-west-2",
		"sourceIPAddress": "203.0.113.11",
		"userAgent": "example-user-agent-string",
		"requestParameters": {
			"applicationName": "ExampleApplication",
			"serviceRoleArn": "arn:aws:iam::123456789012:role/example-instance-group-role",
			"deploymentGroupName": "ExampleDeploymentGroup",
			"ec2TagFilters": [{
                "value": "CodeDeployDemo",
				"type": "KEY_AND_VALUE",
				"key": "Name"
            }],
            "deploymentConfigName": "CodeDeployDefault.HalfAtATime"
		},
		"responseElements": {
			"deploymentGroupId": "7d64e680-e6f4-4c07-b10a-9e117EXAMPLE"
		},
		"requestID": "86168559-75e9-11e4-8cf8-75d18EXAMPLE",
		"eventID": "832b82d5-d474-44e8-a51d-093ccEXAMPLE",
		"eventType": "AwsApiCall",
		"recipientAccountId": "123456789012"
	},
    ... additional entries ...
    ]
}
```

# Überwachung von Bereitstellungen mit Amazon SNS SNS-Ereignisbenachrichtigungen
<a name="monitoring-sns-event-notifications"></a>

Sie können einer CodeDeploy Bereitstellungsgruppe Auslöser hinzufügen, um Benachrichtigungen über Ereignisse im Zusammenhang mit Bereitstellungen oder Instances in dieser Bereitstellungsgruppe zu erhalten. Diese Benachrichtigungen werden an Empfänger gesendet, die ein Amazon SNS SNS-Thema abonniert haben, das Sie in die Aktion des Auslösers aufgenommen haben. 

Sie können Benachrichtigungen für CodeDeploy Ereignisse in SMS-Nachrichten oder E-Mail-Nachrichten erhalten. Sie können die JSON-Daten, die beim Eintreten eines bestimmten Ereignisses erstellt werden, auch auf andere Weise verwenden, z. B. beim Senden von Nachrichten an Amazon SQS SQS-Warteschlangen oder beim Aufrufen einer Funktion in. AWS Lambda Für einen Blick auf die Struktur der JSON-Daten für Bereitstellungs- und Instance-Auslöser finden Sie unter [JSON-Datenformate für Trigger CodeDeploy](monitoring-sns-event-notifications-json-format.md).

Sie können einen Auslöser zum Empfangen von Benachrichtigungen in folgenden Fällen verwenden:
+ Sie sind ein Entwickler und möchten wissen, wenn eine Bereitstellung fehlschlägt oder angehalten wird, um das Problem zu beheben.
+ Sie sind ein Systemadministrator, der wissen muss, wie viele Instances ausfallen, um den Zustand Ihrer Amazon EC2 EC2-Flotte zu überwachen.
+ Sie sind ein Manager, der die at-a-glance Anzahl der Bereitstellungs- und Instance-Ereignisse ermitteln möchte. Diese können Sie mithilfe von Filterregeln abrufen, die verschiedene Arten von Benachrichtigungen in Ordner in Ihrem Desktop-E-Mail-Client weiterleiten. 

Sie können für jede CodeDeploy Bereitstellungsgruppe bis zu 10 Auslöser für jeden der folgenden Ereignistypen erstellen.


| Bereitstellungsereignissen | Instance-Ereignisse | 
| --- | --- | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/codedeploy/latest/userguide/monitoring-sns-event-notifications.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/codedeploy/latest/userguide/monitoring-sns-event-notifications.html)  | 
| ¹ Gilt nur für blue/green Bereitstellungen. Gibt an, dass die neueste Anwendungsrevision auf Instances in einer Ersatzumgebung installiert wurde und der Datenverkehr von der ursprünglichen Umgebung jetzt hinter einem Load Balancer umgeleitet werden kann. Weitere Informationen finden Sie unter [Arbeiten mit Bereitstellungen in CodeDeploy](deployments.md). | 

**Topics**
+ [Gewähren Sie Amazon SNS SNS-Berechtigungen für eine Servicerolle](monitoring-sns-event-notifications-permisssions.md)
+ [Erstellen Sie einen Auslöser für ein CodeDeploy Ereignis](monitoring-sns-event-notifications-create-trigger.md)
+ [Bearbeiten Sie einen Auslöser in einer Bereitstellungsgruppe](monitoring-sns-event-notifications-edit-trigger.md)
+ [Löschen Sie einen Trigger aus einer Bereitstellungsgruppe](monitoring-sns-event-notifications-delete-trigger.md)
+ [JSON-Datenformate für Trigger](monitoring-sns-event-notifications-json-format.md)

# Gewähren Sie Amazon SNS SNS-Berechtigungen für eine CodeDeploy Servicerolle
<a name="monitoring-sns-event-notifications-permisssions"></a>

Bevor Ihre Auslöser Benachrichtigungen generieren können, muss der Servicerolle, die Sie in Ihren CodeDeploy Abläufen verwenden, die Berechtigung zum Zugriff auf die Amazon SNS SNS-Ressourcen erteilt werden. 

**So gewähren Sie Amazon SNS SNS-Berechtigungen für eine Servicerolle**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die IAM-Konsole unter. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. **Wählen Sie in der IAM-Konsole im Navigationsbereich die Option Rollen aus.**

1. Wählen Sie den Namen der Service-Rolle aus, die Sie in Ihren AWS CodeDeploy -Vorgängen verwenden.

1. Klicken Sie auf der Registerkarte **Permissions** im Bereich **Inline Policies** auf **Create Role Policy**.

   –oder–

   Wenn die Schaltfläche **Create Role Policy** nicht verfügbar ist, erweitern Sie den Bereich **Inline Policies** und wählen Sie dann **click here** aus.

1. Wählen Sie auf der Seite **Set Permissions** die Option **Custom Policy** und dann **Select** aus.

1. Geben Sie auf der Seite **Review Policy (Richtlinie überprüfen)** im Feld **Policy Name (Richtlinienname)** einen Namen zur Identifizierung dieser Richtlinie ein (z. B. `SNSPublish`).

1. Kopieren Sie das Folgende in das Feld **Policy Document:** 

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "sns:Publish",
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Klicken Sie auf **Apply Policy** (Richtlinie anwenden).

# Erstellen Sie einen Auslöser für ein Ereignis CodeDeploy
<a name="monitoring-sns-event-notifications-create-trigger"></a>

Sie können einen Auslöser erstellen, der ein Amazon Simple Notification Service (Amazon SNS) -Thema für ein AWS CodeDeploy Bereitstellungs- oder Instance-Ereignis veröffentlicht. Wenn dieses Ereignis eintritt, erhalten alle Abonnenten des zugehörigen Themas Benachrichtigungen über den im Thema angegebenen Endpunkt, z. B. eine SMS- oder E-Mail-Nachricht. Amazon SNS bietet mehrere Methoden zum Abonnieren von Themen.

Bevor Sie einen Trigger erstellen, müssen Sie das Amazon SNS SNS-Thema einrichten, auf das der Trigger verweisen soll. Weitere Informationen finden Sie unter [Thema erstellen](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html). Wenn Sie ein Thema erstellen, empfehlen wir Ihnen, ihm einen Namen zu geben, der seinen Zweck kennzeichnet, z. B. in Formaten wie `Topic-group-us-west-3-deploy-fail` oder`Topic-group-project-2-instance-stop`. 

Sie müssen einer CodeDeploy Servicerolle außerdem Amazon SNS SNS-Berechtigungen erteilen, bevor Benachrichtigungen für Ihren Auslöser gesendet werden können. Weitere Informationen finden Sie unter [Gewähren Sie Amazon SNS SNS-Berechtigungen für eine CodeDeploy Servicerolle](monitoring-sns-event-notifications-permisssions.md).

Nachdem Sie das Thema erstellt haben, können Sie Abonnenten hinzufügen. Informationen zum Erstellen, Verwalten und Abonnieren von Themen finden Sie unter [Was ist Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/welcome.html).



## Erstellen Sie einen Auslöser zum Senden von Benachrichtigungen für CodeDeploy Ereignisse (Konsole)
<a name="monitoring-sns-event-notifications-create-trigger-console"></a>

Sie können die CodeDeploy Konsole verwenden, um Auslöser für ein CodeDeploy Ereignis zu erstellen. Am Ende des Einrichtungsprozesses wird eine Testbenachrichtigung gesendet, um sicherzustellen, dass Berechtigungs- und Auslöserdetails korrekt konfiguriert sind.

**Um einen Auslöser für ein CodeDeploy Ereignis zu erstellen**

1. Öffnen Sie in der AWS-Managementkonsole die AWS CodeDeploy Konsole.

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die CodeDeploy Konsole unter [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).
**Anmerkung**  
Melden Sie sich mit demselben Benutzer an, den Sie eingerichtet haben. [Erste Schritte mit CodeDeploy](getting-started-codedeploy.md)

1. Erweitern Sie im Navigationsbereich die Option **Bereitstellen** und wählen Sie dann **Anwendungen** aus.

1. Wählen Sie auf der Seite **Applications (Anwendungen)** den Namen der Anwendung aus, die der Bereitstellungsgruppe zugeordnet ist, der Sie einen Auslöser hinzufügen möchten.

1. Wählen Sie auf der Seite **Application details (Anwendungsdetails)** die Bereitstellungsgruppe aus, in der Sie einen Auslöser hinzufügen möchten.

1.  Wählen Sie **Bearbeiten** aus. 

1.  Erweitern Sie **Advanced (Erweitert) - optional**. 

1.  Wählen Sie im Bereich **Triggers (Auslöser)** die Option **Create trigger (Auslöser erstellen)**. 

1. Gehen Sie im Bereich **Create deployment trigger (Bereitstellungsauslöser erstellen)** folgendermaßen vor:

   1. Geben Sie unter **Trigger name (Auslösername)** einen Namen für den Auslöser ein, an dem seine Funktion leicht zu erkennen ist. Wir empfehlen folgende Formate: `Trigger-group-us-west-3-deploy-fail` oder `Trigger-group-eu-central-instance-stop`.

   1. Wählen Sie **unter Ereignisse** den Ereignistyp oder die Ereignistypen aus, um das Amazon SNS SNS-Thema zum Senden von Benachrichtigungen auszulösen. 

   1. Wählen Sie **Amazon SNS SNS-Themen** den Namen des Themas aus, das Sie für das Senden von Benachrichtigungen für diesen Auslöser erstellt haben.

   1.  Wählen Sie **Trigger erstellen**. CodeDeploy sendet eine Testbenachrichtigung, um zu bestätigen, dass Sie den Zugriff zwischen CodeDeploy und dem Amazon SNS SNS-Thema korrekt konfiguriert haben. Abhängig vom Endpunkttyp, den Sie für das Thema ausgewählt haben, und ob Sie das Thema abonniert haben, erhalten Sie eine Bestätigung in einer SMS-Nachricht oder einer E-Mail-Nachricht. 

1.  Wählen Sie **Änderungen speichern ** aus. 

## Erstellen Sie einen Trigger zum Senden von Benachrichtigungen für CodeDeploy Ereignisse (CLI)
<a name="monitoring-sns-event-notifications-create-trigger-cli"></a>

Sie können die CLI verwenden, um beim Erstellen einer Bereitstellungsgruppe Auslöser hinzuzufügen, oder Sie können Auslöser einer bereits vorhandenen Bereitstellungsgruppe hinzufügen.

### So erstellen Sie einen Auslöser zum Senden von Benachrichtigungen für eine neue Bereitstellungsgruppe:
<a name="monitoring-sns-event-notifications-create-trigger-cli-new"></a>

Erstellen Sie eine JSON-Datei, um die Bereitstellungsgruppe zu konfigurieren, und führen Sie dann den [create-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)Befehl mit der `--cli-input-json` Option aus. 

Die einfachste Möglichkeit zum Erstellen der JSON-Datei ist es, die Option `--generate-cli-skeleton` zu verwenden, um eine Kopie der JSON-Formats zu erhalten. Stellen Sie dann die erforderlichen Werte in einem Nur-Text-Editor bereit.

1. Führen Sie den folgenden Befehl aus und kopieren Sie die Ergebnisse in einen Nur-Text-Editor.

   ```
   aws deploy create-deployment-group --generate-cli-skeleton
   ```

1. Fügen Sie der Ausgabe den Namen einer vorhandenen CodeDeploy Anwendung hinzu:

   ```
   {
       "applicationName": "TestApp-us-east-2",
       "deploymentGroupName": "",
       "deploymentConfigName": "",
       "ec2TagFilters": [
           {
               "Key": "",
               "Value": "",
               "Type": ""
           }
       ],
       "onPremisesInstanceTagFilters": [
           {
               "Key": "",
               "Value": "",
               "Type": ""
           }
       ],
       "autoScalingGroups": [
           ""
       ],
       "serviceRoleArn": "",
       "triggerConfigurations": [
           {
               "triggerName": "",
               "triggerTargetArn": "",
               "triggerEvents": [
                   ""
               ]
           }
       ]
   }
   ```

1. Geben Sie die Werte für die Parameter an, die Sie konfigurieren möchten.

   Wenn Sie den [create-deployment-group](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeploymentGroup.html)Befehl verwenden, müssen Sie mindestens Werte für die folgenden Parameter angeben:
   + `applicationName`: Der Name einer Anwendung, die bereits in Ihrem Konto bereits erstellt wurde. 
   + `deploymentGroupName`: Ein Name für die Bereitstellungsgruppe, die Sie erstellen.
   + `serviceRoleArn`: Der ARN einer vorhandenen Servicerolle, für die CodeDeploy in Ihrem Konto eingerichtet wurde. Weitere Informationen finden Sie unter [Schritt 2: Erstellen Sie eine Servicerolle für CodeDeploy](getting-started-create-service-role.md).

   Geben Sie im Abschnitt `triggerConfigurations` die Werte für die folgenden Parameter an: 
   + `triggerName`: Der gewünschte Name für den Auslöser, an dem Sie den Zweck einfach erkennen können. Wir empfehlen folgende Formate: `Trigger-group-us-west-3-deploy-fail` oder `Trigger-group-eu-central-instance-stop`.
   + `triggerTargetArn`: Der ARN des Amazon SNS SNS-Themas, das Sie erstellt haben, um es Ihrem Auslöser zuzuordnen, in diesem Format:`arn:aws:sns:us-east-2:444455556666:NewTestTopic`.
   + `triggerEvents`: Der Typ von Ereignissen, für die Sie Benachrichtigungen auslösen möchten. Sie können einen oder mehrere Ereignistypen definieren, indem Sie mehrere Ereignistypennamen mit einem Komma voneinander trennen (z. B. `"triggerEvents":["DeploymentSuccess","DeploymentFailure","InstanceFailure"]`). Wenn Sie mehr als einen Ereignistyp hinzufügen, werden die Benachrichtigungen für alle diese Typen zu dem Thema gesendet, das Sie festgelegt haben. Demnach werden für die einzelnen Ereignistypen keine Benachrichtigungen zu jeweils verschiedenen Themen gesendet. Sie können aus den folgenden Ereignistypen auswählen:
     + DeploymentStart
     + DeploymentSuccess
     + DeploymentFailure
     + DeploymentStop
     + DeploymentRollback
     + DeploymentReady (Gilt nur für Ersatz-Instances in einer blue/green Bereitstellung)
     + InstanceStart
     + InstanceSuccess
     + InstanceFailure
     + InstanceReady (Gilt nur für Ersatzinstanzen in einer blue/green Bereitstellung)

   Im folgenden Konfigurationsbeispiel werden die Bereitstellungsgruppe `dep-group-ghi-789-2` für eine Anwendung mit dem Namen `TestApp-us-east-2` sowie ein Auslöser erstellt, der das Senden von Benachrichtigungen auslöst, wenn eine Bereitstellung beginnt, erfolgreich ist oder fehlschlägt:

   ```
   {
       "applicationName": "TestApp-us-east-2",
       "deploymentConfigName": "CodeDeployDefault.OneAtATime",
       "deploymentGroupName": "dep-group-ghi-789-2",
       "ec2TagFilters": [
           {
               "Key": "Name",
               "Value": "Project-ABC",
               "Type": "KEY_AND_VALUE"
           }
       ],
       "serviceRoleArn": "arn:aws:iam::444455556666:role/AnyCompany-service-role",
       "triggerConfigurations": [
           {
               "triggerName": "Trigger-group-us-east-2",
               "triggerTargetArn": "arn:aws:sns:us-east-2:444455556666:us-east-deployments",
               "triggerEvents": [
                   "DeploymentStart",
                   "DeploymentSuccess",
                   "DeploymentFailure"
               ]
           }
       ]
   }
   ```

1. Speichern Sie Ihre Updates als JSON-Datei, und rufen Sie die Datei dann mit der Option `--cli-input-json` auf, wenn Sie den Befehl **create-deployment-group** ausführen:
**Wichtig**  
Achten Sie darauf, dass `file://` vor dem Dateinamen steht. Dies ist bei diesem Befehl erforderlich.

   ```
   aws deploy create-deployment-group --cli-input-json file://filename.json
   ```

   Am Ende des Erstellungsvorgangs erhalten Sie eine Testbenachrichtigung, um zu überprüfen, ob die Berechtigungs- und Auslöserdetails korrekt konfiguriert sind.

### So erstellen Sie einen Auslöser zum Senden von Benachrichtigungen für eine bestehende Bereitstellungsgruppe:
<a name="monitoring-sns-event-notifications-create-trigger-cli-existing"></a>

Um Trigger für CodeDeploy Ereignisse AWS CLI zu einer vorhandenen Bereitstellungsgruppe hinzuzufügen, erstellen Sie eine JSON-Datei, um die Bereitstellungsgruppe zu aktualisieren, und führen Sie dann den [update-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)Befehl mit der `--cli-input-json` Option aus. 

Die einfachste Möglichkeit zum Erstellen der JSON-Datei ist es, den Befehl **get-deployment-group** auszuführen und so eine Kopie der Bereitstellungsgruppenkonfiguration im JSON-Format zu generieren und dann die Parameterwerte in einem Nur-Text-Editor zu aktualisieren.

1.  Führen Sie den folgenden Befehl aus und kopieren Sie die Ergebnisse in einen Nur-Text-Editor.

   ```
   aws deploy get-deployment-group --application-name application --deployment-group-name deployment-group
   ```

1. Löschen Sie in der Ausgabe Folgendes:
   + Löschen Sie am Anfang der Ausgabe `{ "deploymentGroupInfo":`.
   + Löschen Sie am Ende der Ausgabe `}`. 
   + Löschen Sie die Zeile mit `deploymentGroupId`.
   + Löschen Sie die Zeile mit `deploymentGroupName`.

   Der Inhalt der Textdatei sollte jetzt wie folgt aussehen:

   ```
   {
       "applicationName": "TestApp-us-east-2",
       "deploymentConfigName": "CodeDeployDefault.OneAtATime",
       "autoScalingGroups": [],
       "ec2TagFilters": [
           {
               "Type": "KEY_AND_VALUE",
               "Value": "Project-ABC",
               "Key": "Name"
           }
       ],
       "triggerConfigurations": [],
       "serviceRoleArn": "arn:aws:iam::444455556666:role/AnyCompany-service-role",
       "onPremisesInstanceTagFilters": []
   }
   ```

1. Fügen Sie im Abschnitt `triggerConfigurations` Daten für die Parameter `triggerEvents`, `triggerTargetArn` und `triggerName` ein. Hinweise zu den Konfigurationsparametern von Triggern finden Sie unter [TriggerConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_TriggerConfig.html).

   Der Inhalt der Textdatei sollte jetzt wie folgt aussehen: Dieser Code löst das Senden von Benachrichtigungen aus, wenn eine Bereitstellung beginnt, erfolgreich ist oder fehlschlägt. 

   ```
   {
       "applicationName": "TestApp-us-east-2",
       "deploymentConfigName": "CodeDeployDefault.OneAtATime",
       "autoScalingGroups": [],
       "ec2TagFilters": [
           {
               "Type": "KEY_AND_VALUE",
               "Value": "Project-ABC",
               "Key": "Name"
           }
       ],
       "triggerConfigurations": [
           {
               "triggerEvents": [
                   "DeploymentStart",
                   "DeploymentSuccess",
                   "DeploymentFailure"
               ],
               "triggerTargetArn": "arn:aws:sns:us-east-2:444455556666:us-east-deployments",
               "triggerName": "Trigger-group-us-east-2"
           }
       ],
       "serviceRoleArn": "arn:aws:iam::444455556666:role/AnyCompany-service-role",
       "onPremisesInstanceTagFilters": []
   }
   ```

1. Speichern Sie Ihre Aktualisierungen als JSON-Datei und führen Sie dann den [update-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)Befehl mit der `--cli-input-json` Option aus. Stellen Sie sicher, dass Sie die `--current-deployment-group-name` Option angeben und den Namen Ihrer JSON-Datei durch Folgendes ersetzen*filename*: 
**Wichtig**  
Achten Sie darauf, dass `file://` vor dem Dateinamen steht. Dies ist bei diesem Befehl erforderlich.

   ```
   aws deploy update-deployment-group --current-deployment-group-name deployment-group-name --cli-input-json file://filename.json
   ```

   Am Ende des Erstellungsvorgangs erhalten Sie eine Testbenachrichtigung, um zu überprüfen, ob die Berechtigungs- und Auslöserdetails korrekt konfiguriert sind.

# Bearbeiten Sie einen Trigger in einer CodeDeploy Bereitstellungsgruppe
<a name="monitoring-sns-event-notifications-edit-trigger"></a>

Wenn sich Ihre Benachrichtigungsanforderungen ändern sollten, können Sie die Auslöser ändern, anstatt einen neuen zu erstellen.

## Einen CodeDeploy Trigger ändern (CLI)
<a name="monitoring-sns-event-notifications-edit-trigger-cli"></a>

 Um Triggerdetails für CodeDeploy Ereignisse AWS CLI zu ändern, wenn Sie eine Bereitstellungsgruppe aktualisieren, erstellen Sie eine JSON-Datei, um Änderungen an den Eigenschaften der Bereitstellungsgruppe zu definieren, und führen Sie dann den [update-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/update-deployment-group.html)Befehl mit der `--cli-input-json` Option aus. 

Die einfachste Möglichkeit zum Erstellen der JSON-Datei ist es, den Befehl **get-deployment-group** auszuführen, um die aktuellen Bereitstellungsgruppendetails im JSON-Format erhalten, und anschließend die erforderlichen Werte in einem Nur-Text-Editor zu bearbeiten.

1. Führen Sie den folgenden Befehl aus und ersetzen Sie dabei und durch die Namen Ihrer Anwendung und Bereitstellungsgruppe: *application* *deployment-group*

   ```
   aws deploy get-deployment-group --application-name application --deployment-group-name deployment-group
   ```

1. Kopieren Sie die Ergebnisse des Befehls in einen Nur-Text-Editor und löschen Sie dann Folgendes:
   + Löschen Sie am Anfang der Ausgabe `{ "deploymentGroupInfo":`. 
   + Löschen Sie am Ende der Ausgabe `}`. 
   + Löschen Sie die Zeile mit `deploymentGroupId`.
   + Löschen Sie die Zeile mit `deploymentGroupName`.

   Der Inhalt der Textdatei sollte jetzt wie folgt aussehen:

   ```
   {
       "applicationName": "TestApp-us-east-2",
       "deploymentConfigName": "CodeDeployDefault.OneAtATime",
       "autoScalingGroups": [],
       "ec2TagFilters": [
           {
               "Type": "KEY_AND_VALUE",
               "Value": "East-1-Instances",
               "Key": "Name"
           }
       ],
       "triggerConfigurations": [
           {
               "triggerEvents": [
                   "DeploymentStart",
                   "DeploymentSuccess",
                   "DeploymentFailure",
                   "DeploymentStop"
               ],
               "triggerTargetArn": "arn:aws:sns:us-east-2:111222333444:Trigger-group-us-east-2",
               "triggerName": "Trigger-group-us-east-2"
           }
       ],
       "serviceRoleArn": "arn:aws:iam::444455556666:role/AnyCompany-service-role",
       "onPremisesInstanceTagFilters": []
   }
   ```

1. Ändern Sie nach Bedarf die Parameter. Hinweise zu den Konfigurationsparametern von Triggern finden Sie unter. [TriggerConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_TriggerConfig.html)

1. Speichern Sie Ihre Aktualisierungen als JSON-Datei und führen Sie dann den [update-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/update-deployment-group.html)Befehl mit der `--cli-input-json` Option aus. Stellen Sie sicher, dass Sie die `--current-deployment-group-name` Option angeben und den Namen Ihrer JSON-Datei durch Folgendes ersetzen*filename*: 
**Wichtig**  
Achten Sie darauf, dass `file://` vor dem Dateinamen steht. Dies ist bei diesem Befehl erforderlich.

   ```
   aws deploy update-deployment-group --current-deployment-group-name deployment-group-name --cli-input-json file://filename.json
   ```

Am Ende des Erstellungsvorgangs erhalten Sie eine Testbenachrichtigung, um zu überprüfen, ob die Berechtigungs- und Auslöserdetails korrekt konfiguriert sind.

# Löschen Sie einen Trigger aus einer CodeDeploy Bereitstellungsgruppe
<a name="monitoring-sns-event-notifications-delete-trigger"></a>

Da pro Bereitstellungsgruppe maximal 10 Auslöser konfiguriert werden können, können Sie Auslöser, die nicht mehr verwendet werden, löschen. Dieser Löschvorgang kann nicht rückgängig gemacht werden, aber Sie können die Auslöser erneut erstellen.

## Löschen Sie einen Auslöser aus einer Bereitstellungsgruppe (Konsole)
<a name="monitoring-sns-event-notifications-delete-trigger-console"></a>

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die CodeDeploy Konsole unter [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).
**Anmerkung**  
Melden Sie sich mit demselben Benutzer an, den Sie eingerichtet haben. [Erste Schritte mit CodeDeploy](getting-started-codedeploy.md)

1. Erweitern Sie im Navigationsbereich die Option **Bereitstellen** und wählen Sie dann **Anwendungen** aus.

1. Wählen Sie auf der Seite **Applications (Anwendungen)** den Namen der Anwendung aus, die der Bereitstellungsgruppe zugeordnet ist, in der Sie einen Auslöser löschen möchten.

1. Wählen Sie auf der Seite **Application details (Anwendungsdetails)** die Bereitstellungsgruppe aus, in der Sie einen Auslöser löschen möchten.

1.  Wählen Sie **Bearbeiten** aus. 

1.  Erweitern Sie **Advanced (Erweitert) - optional**. 

1. Wählen Sie im Bereich **Trigger (Auslöser)** den zu löschenden Auslöser und danach **Delete trigger (Auslöser löschen)** aus. 

1.  Wählen Sie **Änderungen speichern ** aus. 

## Löschen eines Triggers aus einer Bereitstellungsgruppe (CLI)
<a name="monitoring-sns-event-notifications-delete-trigger-cli"></a>

Um über die Befehlszeilenschnittstelle (CLI) einen Auslöser zu löschen, rufen Sie den Befehl [update-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/update-deployment-group.html) mit leeren Auslöserkonfigurationsparametern auf und geben Sie dazu Folgendes an:
+ Der Name der Anwendung, die der Bereitstellungsgruppe zugeordnet ist. Rufen Sie den Befehl [list-applications auf, um eine Liste mit Anwendungsnamen](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-applications.html) anzuzeigen.
+ Der Name der Bereitstellungsgruppe, die der Anwendung zugeordnet ist. Um eine Liste der Bereitstellungsgruppennamen anzuzeigen, rufen Sie den Befehl [list-deployment-groups](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-deployment-groups.html) auf.

Beispiel:

```
aws deploy update-deployment-group --application-name application-name --current-deployment-group-name deployment-group-name --trigger-configurations
```

# JSON-Datenformate für Trigger CodeDeploy
<a name="monitoring-sns-event-notifications-json-format"></a>

Sie können die JSON-Ausgabe verwenden, die erstellt wird, wenn ein Trigger für eine Bereitstellung oder Instance aktiviert wird, in einem benutzerdefinierten Benachrichtigungs-Workflow, z. B. beim Senden von Nachrichten an Amazon SQS SQS-Warteschlangen oder beim Aufrufen einer Funktion in. AWS Lambda

**Anmerkung**  
In dieser Anleitung wird nicht behandelt, wie Benachrichtigungen mit JSON konfiguriert werden. Informationen zur Verwendung von Amazon SNS zum Senden von Nachrichten an Amazon SQS SQS-Warteschlangen finden Sie unter Amazon [SNS SNS-Nachrichten an Amazon SQS SQS-Warteschlangen senden](https://docs.aws.amazon.com/sns/latest/dg/SendMessageToSQS.html). Informationen zur Verwendung von Amazon SNS zum Aufrufen einer Lambda-Funktion finden Sie unter Aufrufen von [Lambda-Funktionen](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html) mithilfe von Amazon SNS SNS-Benachrichtigungen.

In den folgenden Beispielen wird die Struktur der JSON-Ausgabe bei CodeDeploy-Auslösern dargestellt.

**Beispiel-JSON-Ausgabe für Instance-basierte Auslöser**

```
{
    "region": "us-east-2",
    "accountId": "111222333444",
    "eventTriggerName": "trigger-group-us-east-instance-succeeded",
    "deploymentId": "d-75I7MBT7C",
    "instanceId": "arn:aws:ec2:us-east-2:444455556666:instance/i-496589f7",
    "lastUpdatedAt": "1446744207.564",
    "instanceStatus": "Succeeded",
    "lifecycleEvents": [
        {
            "LifecycleEvent": "ApplicationStop",
            "LifecycleEventStatus": "Succeeded",
            "StartTime": "1446744188.595",
            "EndTime": "1446744188.711"
        },
        {
            "LifecycleEvent": "BeforeInstall",
            "LifecycleEventStatus": "Succeeded",
            "StartTime": "1446744189.827",
            "EndTime": "1446744190.402"
        }
//More lifecycle events might be listed here
    ]
}
```

**Beispiel-JSON-Ausgabe für bereitstellungsbasierte Auslöser**

```
{
    "region": "us-west-1",
    "accountId": "111222333444",
    "eventTriggerName": "Trigger-group-us-west-3-deploy-failed",
    "applicationName": "ProductionApp-us-west-3",
    "deploymentId": "d-75I7MBT7C",
    "deploymentGroupName": "dep-group-def-456",
    "createTime": "1446744188.595",
    "completeTime": "1446744190.402",
    "deploymentOverview": {
        "Failed": "10",
        "InProgress": "0",
        "Pending": "0",
        "Skipped": "0",
        "Succeeded": "0"
    },
    "status": "Failed",
    "errorInformation": {
        "ErrorCode": "IAM_ROLE_MISSING",
        "ErrorMessage": "IAM Role is missing for deployment group: dep-group-def-456"
    }
}
```