

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.

# Veröffentlichen CloudWatch benutzerdefinierter Amazon-Metriken für eine Umgebung
<a name="health-enhanced-cloudwatch"></a>

Sie können die im Rahmen der AWS Elastic Beanstalk erweiterten Gesundheitsberichterstattung gesammelten Daten CloudWatch als benutzerdefinierte Metriken an Amazon veröffentlichen. Durch die Veröffentlichung von Metriken CloudWatch können Sie Veränderungen der Anwendungsleistung im Laufe der Zeit überwachen und potenzielle Probleme identifizieren, indem Sie verfolgen, wie die Ressourcennutzung und die Latenz von Anfragen mit der Auslastung skalieren.

Indem Sie Metriken veröffentlichen CloudWatch, stellen Sie sie auch für die Verwendung in [Überwachungsdiagrammen](environment-health-console.md#environment-health-console-graphs) und [Alarmen](using-features.alarms.md) zur Verfügung. Eine kostenlose Metrik, *EnvironmentHealth*, wird automatisch aktiviert, wenn Sie die erweiterte Statusberichterstattung verwenden. Für andere benutzerdefinierte Messwerte *EnvironmentHealth*fallen keine [CloudWatch Standardgebühren](https://aws.amazon.com/cloudwatch/pricing/) an. 

Um CloudWatch benutzerdefinierte Metriken für eine Umgebung zu veröffentlichen, müssen Sie zunächst die erweiterte Zustandsberichterstattung für die Umgebung aktivieren. Detaillierte Anweisungen finden Sie unter [Aktivieren der erweiterten Elastic-Beanstalk-Integritätsberichte](health-enhanced-enable.md).

**Topics**
+ [Metriken der erweiterten Zustandsberichte](#health-enhanced-cloudwatch-metrics)
+ [Konfiguration von CloudWatch Metriken mit der Elastic Beanstalk Beanstalk-Konsole](#health-enhanced-cloudwatch-console)
+ [Konfiguration CloudWatch benutzerdefinierter Metriken mit der EB-CLI](#health-enhanced-cloudwatch-ebcli)
+ [Bereitstellen von benutzerdefinierten Metrikkonfigurations-Dokumenten](#health-enhanced-cloudwatch-configdocument)

## Metriken der erweiterten Zustandsberichte
<a name="health-enhanced-cloudwatch-metrics"></a>

Wenn Sie die erweiterte Zustandsberichterstattung in Ihrer Umgebung aktivieren, veröffentlicht das erweiterte Zustandsberichtssystem automatisch eine [CloudWatch benutzerdefinierte Metrik](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/publishingMetrics.html), *EnvironmentHealth*. [Um zusätzliche Metriken zu veröffentlichen CloudWatch, konfigurieren Sie Ihre Umgebung mit diesen Metriken, indem Sie die [Elastic Beanstalk Beanstalk-Konsole](#health-enhanced-cloudwatch-console), [EB CLI](#health-enhanced-cloudwatch-ebcli) oder .ebextensions verwenden.](command-options.md)

Sie können die folgenden erweiterten Integritätsmetriken aus Ihrer Umgebung in veröffentlichen. CloudWatchVerfügbare Metriken – alle Plattformen

`EnvironmentHealth`  
*Nur Umgebung. * Dies ist die einzige CloudWatch Metrik, die das erweiterte Zustandsberichtssystem veröffentlicht, sofern Sie keine zusätzlichen Messwerte konfigurieren. Der Umgebungszustand wird durch einen von sieben [Status](health-enhanced-status.md) dargestellt. In der CloudWatch Konsole werden diese Status den folgenden Werten zugeordnet:  
+ 0 – OK
+ 1 – Info
+ 5 – Unknown
+ 10 – No data
+ 15 – Warning
+ 20 – Degraded
+ 25 – Severe

`InstancesSevere``InstancesDegraded``InstancesWarning``InstancesInfo``InstancesOk``InstancesPending``InstancesUnknown``InstancesNoData`  
*Nur Umgebung. * Diese Metriken geben die Anzahl der Instances in der Umgebung mit dem jeweiligen Zustand an. `InstancesNoData` gibt die Anzahl der Instances an, für die keine Daten empfangen wurden.

`ApplicationRequestsTotal``ApplicationRequests5xx``ApplicationRequests4xx``ApplicationRequests3xx``ApplicationRequests2xx`  
*Instance und Umgebung. * Gibt die Gesamtanzahl der Anforderungen an, die von der Instance oder Umgebung abgeschlossen wurden, und die Anzahl der Anfragen, die mit jeder Statuscodekategorie abgeschlossen wurde.

`ApplicationLatencyP10``ApplicationLatencyP50``ApplicationLatencyP75``ApplicationLatencyP85``ApplicationLatencyP90``ApplicationLatencyP95``ApplicationLatencyP99``ApplicationLatencyP99.9`  
*Instance und Umgebung. * Gibt die durchschnittliche Zeit in Sekunden an, die es dauert, bis die schnellsten *x* Prozent der Anfragen abgeschlossen wurden.

`InstanceHealth`  
*Nur Instance.* Gibt den aktuellen Zustand der Instance an. Der Instance-Zustand wird durch einen von sieben [Status](health-enhanced-status.md) dargestellt. In der CloudWatch Konsole werden diese Status den folgenden Werten zugeordnet:  
+ 0 – OK
+ 1 – Info
+ 5 – Unknown
+ 10 – No data
+ 15 – Warning
+ 20 – Degraded
+ 25 – SevereVerfügbaren Metriken – Linux

`CPUIrq``CPUIdle``CPUUser``CPUSystem``CPUSoftirq``CPUIowait``CPUNice`  
*Nur Instance.* Gibt eine Prozentangabe des Zeitraums an, den die CPU in der letzten Minute im jeweiligen Status gewesen ist.

`LoadAverage1min`  
*Nur Instance.* Die durchschnittliche CPU-Auslastung der Instance innerhalb der letzten Minute.

`RootFilesystemUtil`  
*Nur Instance.* Gibt den prozentualen Anteil des verwendeten Speicherplatzes an.Verfügbaren Metriken – Windows

`CPUIdle``CPUUser``CPUPrivileged`  
Nur Instance. Gibt eine Prozentangabe des Zeitraums an, den die CPU in der letzten Minute im jeweiligen Status gewesen ist.

## Konfiguration von CloudWatch Metriken mit der Elastic Beanstalk Beanstalk-Konsole
<a name="health-enhanced-cloudwatch-console"></a>

Sie können die Elastic Beanstalk Beanstalk-Konsole verwenden, um Ihre Umgebung so zu konfigurieren, dass erweiterte Gesundheitsberichtsmetriken veröffentlicht CloudWatch und für die Verwendung mit Überwachungsdiagrammen und Alarmen verfügbar gemacht werden.

**So konfigurieren Sie CloudWatch benutzerdefinierte Metriken in der Elastic Beanstalk Beanstalk-Konsole**

1. Öffnen Sie die [Elastic Beanstalk Beanstalk-Konsole](https://console.aws.amazon.com/elasticbeanstalk) und wählen Sie in der Liste **Regionen** Ihre aus. AWS-Region

1. Wählen Sie im Navigationsbereich **Environments (Umgebungen)** aus und wählen Sie dann in der Liste den Namen Ihrer Umgebung aus.

1. Wählen Sie im Navigationsbereich **Configuration (Konfiguration)** aus.

1. Wählen Sie in der Konfigurationskategorie **Monitoring (Überwachung)** die Option **Edit (Bearbeiten)**.

1. Wählen Sie unter **Health reporting (Zustandsberichte)** die Instance-und Umgebungsmetriken aus, die Sie in CloudWatch veröffentlichen möchten. Zur Auswahl mehrerer Metriken drücken Sie die **Strg**-Taste während der Auswahl.

1. Wählen Sie unten auf der Seite die Option **Apply** (Anwenden) aus, um die Änderungen zu speichern.

Wenn Sie CloudWatch benutzerdefinierte Metriken aktivieren, werden sie der Liste der auf der [**Monitoring-Seite**](environment-health-console.md) verfügbaren Metriken hinzugefügt.

## Konfiguration CloudWatch benutzerdefinierter Metriken mit der EB-CLI
<a name="health-enhanced-cloudwatch-ebcli"></a>

Sie können mit der EB-CLI benutzerdefinierte Metriken konfigurieren, indem Sie die Konfiguration Ihrer Umgebung lokal speichern, einen Eintrag hinzufügen, der die Metriken für die Veröffentlichung definiert, und die Konfiguration dann in Elastic Beanstalk hochladen. Sie können die gespeicherte Konfiguration zu einer Umgebung während oder nach der Erstellung hinzufügen.

**So konfigurieren Sie CloudWatch benutzerdefinierte Metriken mit der EB-CLI und gespeicherten Konfigurationen**

1. Initialisieren Sie Ihren Projektordner mit [**eb init**](eb-cli3-configuration.md).

1. Erstellen Sie eine Umgebung, indem Sie den **eb create**-Befehl ausführen.

1. Speichern Sie eine Konfigurationsvorlage lokal, indem Sie den **eb config save**-Befehl ausführen. Im folgenden Beispiel wird die `--cfg`-Option verwendet, um den Namen der Konfiguration anzugeben.

   ```
   $ eb config save --cfg {{01-base-state}}
   Configuration saved at: ~/project/.elasticbeanstalk/saved_configs/01-base-state.cfg.yml
   ```

1. Öffnen Sie die gespeicherte Konfigurationsdatei in einem Texteditor.

1. Fügen Sie unter `OptionSettings` > einen `ConfigDocument` Schlüssel hinzu`aws:elasticbeanstalk:healthreporting:system:`, um jede der gewünschten CloudWatch Metriken zu aktivieren. Wenn beispielsweise der folgende `ConfigDocument` `ApplicationRequests5xx`- und `ApplicationRequests4xx` -Metriken auf Umgebungsebene und `ApplicationRequestsTotal`-Metriken auf Instance-Ebene veröffentlicht.

   ```
   OptionSettings:
     ...
     aws:elasticbeanstalk:healthreporting:system:
       ConfigDocument:
         CloudWatchMetrics:
           Environment:
             ApplicationRequests5xx: 60
             ApplicationRequests4xx: 60
           Instance:
             ApplicationRequestsTotal: 60
         Version: 1
       SystemType: enhanced
   ...
   ```

   Im Beispiel gibt 60 die Anzahl der Sekunden zwischen Messungen an. Derzeit ist dies der einzige unterstützte Wert.
**Anmerkung**  
Sie können `CloudWatchMetrics` und `Rules` in derselben `ConfigDocument`-Optionseinstellung kombinieren. `Rules` sind in [Konfigurieren von Regeln für den erweiterten Zustand einer Umgebung](health-enhanced-rules.md) beschrieben.  
Wenn Sie zuvor `Rules` verwendet haben, um Regeln für den erweiterten Zustand zu konfigurieren, hat die Konfigurationsdatei, die Sie mit dem Befehl **eb config save** abrufen, bereits einen `ConfigDocument`-Schlüssel mit einem `Rules`-Abschnitt. *Löschen Sie ihn nicht* – fügen Sie einen `CloudWatchMetrics`-Abschnitt in denselben `ConfigDocument`-Optionswert ein.

1. Speichern Sie die Konfigurationsdatei und schließen Sie den Text-Editor. Bei diesem Beispiel wird die aktualisierte Konfigurationsdatei mit einem Namen (`02-cloudwatch-enabled.cfg.yml`) gespeichert, der sich von dem der heruntergeladenen Konfigurationsdatei unterscheidet. Dadurch wird eine separat gespeicherte Konfiguration erstellt, wenn die Datei hochgeladen wird. Sie können demselben Namen wie die heruntergeladene Datei verwenden, um die vorhandene Konfiguration zu überschreiben, ohne dass Sie eine neue erstellen müssen.

1. Verwenden Sie zum Hochladen der aktualisierten Konfigurationsdatei in Elastic Beanstalk den Befehl **eb config put**.

   ```
   $ eb config put {{02-cloudwatch-enabled}}
   ```

   Schließen Sie die Dateierweiterung bei Verwendung der Befehle **eb config** `get` und `put` mit gespeicherten Konfigurationen nicht mit ein.

1. Wenden Sie die gespeicherte Konfiguration auf Ihre laufende Umgebung an.

   ```
   $ eb config --cfg {{02-cloudwatch-enabled}}
   ```

   Die `--cfg`-Option gibt eine benannte Konfigurationsdatei an, die auf die Umgebung angewendet wird. Sie können die Konfigurationsdatei lokal oder in Elastic Beanstalk speichern. Wenn eine Konfigurationsdatei mit dem angegebenen Namen in beiden Speicherorten vorhanden ist, verwendet die EB-CLI die lokale Datei.

## Bereitstellen von benutzerdefinierten Metrikkonfigurations-Dokumenten
<a name="health-enhanced-cloudwatch-configdocument"></a>

Das Konfigurationsdokument (Config) für CloudWatch benutzerdefinierte Amazon-Metriken ist ein JSON-Dokument, das die zu veröffentlichenden Metriken auf Umgebungs- und Instanzebene auflistet. Das folgende Beispiel zeigt ein Konfigurationsdokument, das alle verfügbaren benutzerdefinierten Metriken aktiviert.

```
{
  "CloudWatchMetrics": {
    "Environment": {
      "ApplicationLatencyP99.9": 60,
      "InstancesSevere": 60,
      "ApplicationLatencyP90": 60,
      "ApplicationLatencyP99": 60,
      "ApplicationLatencyP95": 60,
      "InstancesUnknown": 60,
      "ApplicationLatencyP85": 60,
      "InstancesInfo": 60,
      "ApplicationRequests2xx": 60,
      "InstancesDegraded": 60,
      "InstancesWarning": 60,
      "ApplicationLatencyP50": 60,
      "ApplicationRequestsTotal": 60,
      "InstancesNoData": 60,
      "InstancesPending": 60,
      "ApplicationLatencyP10": 60,
      "ApplicationRequests5xx": 60,
      "ApplicationLatencyP75": 60,
      "InstancesOk": 60,
      "ApplicationRequests3xx": 60,
      "ApplicationRequests4xx": 60
    },
    "Instance": {
      "ApplicationLatencyP99.9": 60,
      "ApplicationLatencyP90": 60,
      "ApplicationLatencyP99": 60,
      "ApplicationLatencyP95": 60,
      "ApplicationLatencyP85": 60,
      "CPUUser": 60,
      "ApplicationRequests2xx": 60,
      "CPUIdle": 60,
      "ApplicationLatencyP50": 60,
      "ApplicationRequestsTotal": 60,
      "RootFilesystemUtil": 60,
      "LoadAverage1min": 60,
      "CPUIrq": 60,
      "CPUNice": 60,
      "CPUIowait": 60,
      "ApplicationLatencyP10": 60,
      "LoadAverage5min": 60,
      "ApplicationRequests5xx": 60,
      "ApplicationLatencyP75": 60,
      "CPUSystem": 60,
      "ApplicationRequests3xx": 60,
      "ApplicationRequests4xx": 60,
      "InstanceHealth": 60,
      "CPUSoftirq": 60
    }
  },
  "Version": 1
}
```

Für das AWS CLIübergeben Sie das Dokument als Wert für den `Value` Schlüssel in einem Optionseinstellungsargument, das selbst ein JSON-Objekt ist. In diesem Fall müssen Anführungszeichen im eingebetteten Dokument durch Escape-Zeichen geschützt werden.

```
$ aws elasticbeanstalk validate-configuration-settings --application-name my-app --environment-name my-env --option-settings '[
    {
        "Namespace": "aws:elasticbeanstalk:healthreporting:system",
        "OptionName": "ConfigDocument",
        "Value": "{\"CloudWatchMetrics\": {\"Environment\": {\"ApplicationLatencyP99.9\": 60,\"InstancesSevere\": 60,\"ApplicationLatencyP90\": 60,\"ApplicationLatencyP99\": 60,\"ApplicationLatencyP95\": 60,\"InstancesUnknown\": 60,\"ApplicationLatencyP85\": 60,\"InstancesInfo\": 60,\"ApplicationRequests2xx\": 60,\"InstancesDegraded\": 60,\"InstancesWarning\": 60,\"ApplicationLatencyP50\": 60,\"ApplicationRequestsTotal\": 60,\"InstancesNoData\": 60,\"InstancesPending\": 60,\"ApplicationLatencyP10\": 60,\"ApplicationRequests5xx\": 60,\"ApplicationLatencyP75\": 60,\"InstancesOk\": 60,\"ApplicationRequests3xx\": 60,\"ApplicationRequests4xx\": 60},\"Instance\": {\"ApplicationLatencyP99.9\": 60,\"ApplicationLatencyP90\": 60,\"ApplicationLatencyP99\": 60,\"ApplicationLatencyP95\": 60,\"ApplicationLatencyP85\": 60,\"CPUUser\": 60,\"ApplicationRequests2xx\": 60,\"CPUIdle\": 60,\"ApplicationLatencyP50\": 60,\"ApplicationRequestsTotal\": 60,\"RootFilesystemUtil\": 60,\"LoadAverage1min\": 60,\"CPUIrq\": 60,\"CPUNice\": 60,\"CPUIowait\": 60,\"ApplicationLatencyP10\": 60,\"LoadAverage5min\": 60,\"ApplicationRequests5xx\": 60,\"ApplicationLatencyP75\": 60,\"CPUSystem\": 60,\"ApplicationRequests3xx\": 60,\"ApplicationRequests4xx\": 60,\"InstanceHealth\": 60,\"CPUSoftirq\": 60}},\"Version\": 1}"
    }
]'
```

Für eine `.ebextensions`-Konfigurationsdatei in YAML können Sie das JSON-Dokument unverändert bereitstellen.

```
  option_settings:
    - namespace: aws:elasticbeanstalk:healthreporting:system
      option_name: ConfigDocument
      value: {
  "CloudWatchMetrics": {
    "Environment": {
      "ApplicationLatencyP99.9": 60,
      "InstancesSevere": 60,
      "ApplicationLatencyP90": 60,
      "ApplicationLatencyP99": 60,
      "ApplicationLatencyP95": 60,
      "InstancesUnknown": 60,
      "ApplicationLatencyP85": 60,
      "InstancesInfo": 60,
      "ApplicationRequests2xx": 60,
      "InstancesDegraded": 60,
      "InstancesWarning": 60,
      "ApplicationLatencyP50": 60,
      "ApplicationRequestsTotal": 60,
      "InstancesNoData": 60,
      "InstancesPending": 60,
      "ApplicationLatencyP10": 60,
      "ApplicationRequests5xx": 60,
      "ApplicationLatencyP75": 60,
      "InstancesOk": 60,
      "ApplicationRequests3xx": 60,
      "ApplicationRequests4xx": 60
    },
    "Instance": {
      "ApplicationLatencyP99.9": 60,
      "ApplicationLatencyP90": 60,
      "ApplicationLatencyP99": 60,
      "ApplicationLatencyP95": 60,
      "ApplicationLatencyP85": 60,
      "CPUUser": 60,
      "ApplicationRequests2xx": 60,
      "CPUIdle": 60,
      "ApplicationLatencyP50": 60,
      "ApplicationRequestsTotal": 60,
      "RootFilesystemUtil": 60,
      "LoadAverage1min": 60,
      "CPUIrq": 60,
      "CPUNice": 60,
      "CPUIowait": 60,
      "ApplicationLatencyP10": 60,
      "LoadAverage5min": 60,
      "ApplicationRequests5xx": 60,
      "ApplicationLatencyP75": 60,
      "CPUSystem": 60,
      "ApplicationRequests3xx": 60,
      "ApplicationRequests4xx": 60,
      "InstanceHealth": 60,
      "CPUSoftirq": 60
    }
  },
  "Version": 1
}
```