

Die AWS SDK für JavaScript Version 2 ist erreicht end-of-support. Wir empfehlen Ihnen, auf [AWS SDK für JavaScript Version 3](https://docs.aws.amazon.com//sdk-for-javascript/v3/developer-guide/) zu migrieren. Weitere Einzelheiten und Informationen zur Migration finden Sie in dieser [Ankündigung](https://aws.amazon.com/blogs//developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/).

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.

# Abonnementfilter in Amazon CloudWatch Logs verwenden
<a name="cloudwatch-examples-subscriptions"></a>

![\[JavaScript code example that applies to Node.js execution\]](http://docs.aws.amazon.com/de_de/sdk-for-javascript/v2/developer-guide/images/nodeicon.png)

**Dieses Node.js-Codebeispiel zeigt:**
+ So erstellen und löschen Sie Filter für Protokollereignisse in CloudWatch Logs.

## Das Szenario
<a name="cloudwatch-examples-subscriptions-scenario"></a>

Abonnements bieten Zugriff auf einen Echtzeit-Feed mit Protokollereignissen aus CloudWatch Logs und leiten diesen Feed an andere Dienste weiter, z. B. an einen Amazon Kinesis Kinesis-Stream oder AWS Lambda zur benutzerdefinierten Verarbeitung, Analyse oder zum Laden in andere Systeme. Ein Abonnementfilter definiert das Muster, nach dem gefiltert wird, welche Protokollereignisse an Ihre AWS Ressource übermittelt werden.

In diesem Beispiel werden eine Reihe von Modulen von Node.js verwendet, um einen Abonnementfilter in CloudWatch Logs aufzulisten, zu erstellen und zu löschen. Das Ziel für die Protokollereignisse ist eine Lambda-Funktion. Die Module von Node.js verwenden das SDK JavaScript zur Verwaltung von Abonnementfiltern mithilfe der folgenden Methoden der `CloudWatchLogs` Client-Klasse:
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatchLogs.html#putSubscriptionFilters-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatchLogs.html#putSubscriptionFilters-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatchLogs.html#describeSubscriptionFilters-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatchLogs.html#describeSubscriptionFilters-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatchLogs.html#deleteSubscriptionFilter-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CloudWatchLogs.html#deleteSubscriptionFilter-property)

Weitere Informationen zu CloudWatch Logs-Abonnements finden Sie unter [Echtzeitverarbeitung von Protokolldaten mit Abonnements](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions.html) im *Amazon CloudWatch Logs-Benutzerhandbuch*.

## Erforderliche Aufgaben
<a name="cloudwatch-examples-subscriptions-prerequisites"></a>

Zum Einrichten und Ausführen dieses Beispiels müssen Sie zunächst diese Aufgaben abschließen:
+ Installieren Sie Node.js. Weitere Informationen über die Installation von Node.js finden Sie auf der [Node.js-Website](https://nodejs.org).
+ Erstellen Sie eine freigegebene Konfigurationsdatei mit Ihren Anmeldeinformationen. Weitere Informationen zum Bereitstellen einer Datei mit gemeinsam genutzten Anmeldeinformationen finden Sie unter [Laden der Anmeldeinformationen in Node.js aus der freigegebenen Anmeldeinformationsdatei](loading-node-credentials-shared.md).
+ Erstellen Sie eine Lambda-Funktion als Ziel für Protokollereignisse. Dazu benötigen Sie den ARN dieser Funktion. Weitere Informationen zur Einrichtung einer Lambda-Funktion finden Sie unter [Abonnementfilter mit AWS Lambda](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/SubscriptionFilters.html#LambdaFunctionExample) im *Amazon CloudWatch Logs-Benutzerhandbuch*.
+ Erstellen Sie eine IAM-Rolle, deren Richtlinie die Berechtigung zum Aufrufen der von Ihnen erstellten Lambda-Funktion und vollen Zugriff auf CloudWatch Logs gewährt, oder wenden Sie die folgende Richtlinie auf die Ausführungsrolle an, die Sie für die Lambda-Funktion erstellen. *Weitere Informationen zum Erstellen einer IAM-Rolle finden Sie unter [Creating a Role to Delegate Permissions to an AWS Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) im IAM-Benutzerhandbuch.*

Verwenden Sie die folgende Rollenrichtlinie beim Erstellen der IAM-Rolle.

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Effect": "Allow",
         "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
         ],
         "Resource": "arn:aws:logs:*:*:*"
      },
      {
         "Effect": "Allow",
         "Action": [
            "lambda:InvokeFunction"
         ],
         "Resource": [
            "*"
         ]
      }
   ]
}
```

------

## Beschreiben von bestehenden Abonnementfiltern
<a name="cloudwatch-examples-subscriptions-describing"></a>

Erstellen Sie ein Node.js-Modul mit dem Dateinamen `cwl_describesubscriptionfilters.js`. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren. Um auf CloudWatch Protokolle zuzugreifen, erstellen Sie ein `AWS.CloudWatchLogs` Serviceobjekt. Erstellen Sie ein JSON-Objekt mit den erforderlichen Parametern für die Beschreibung Ihrer bestehenden Filter, einschließlich der Namen der Protokollgruppe sowie der maximalen Anzahl der Filter, die Sie beschreiben möchten. Rufen Sie die `describeSubscriptionFilters`-Methode auf.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create the CloudWatchLogs service object
var cwl = new AWS.CloudWatchLogs({ apiVersion: "2014-03-28" });

var params = {
  logGroupName: "GROUP_NAME",
  limit: 5,
};

cwl.describeSubscriptionFilters(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data.subscriptionFilters);
  }
});
```

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

```
node cwl_describesubscriptionfilters.js
```

Diesen Beispielcode finden Sie [hier auf GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascript/example_code/cloudwatch-logs/cwl_describesubscriptionfilters.js).

## Erstellen eines Abonnementfilters
<a name="cloudwatch-examples-subscriptions-creating"></a>

Erstellen Sie ein Node.js-Modul mit dem Dateinamen `cwl_putsubscriptionfilter.js`. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren. Um auf CloudWatch Logs zuzugreifen, erstellen Sie ein `AWS.CloudWatchLogs` Serviceobjekt. Erstellen Sie ein JSON-Objekt, das die Parameter enthält, die zum Erstellen eines Filters erforderlich sind, einschließlich des ARN der Ziel-Lambda-Funktion, des Namens des Filters, des Zeichenkettenmusters für die Filterung und des Namens der Protokollgruppe. Rufen Sie die `putSubscriptionFilters`-Methode auf.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create the CloudWatchLogs service object
var cwl = new AWS.CloudWatchLogs({ apiVersion: "2014-03-28" });

var params = {
  destinationArn: "LAMBDA_FUNCTION_ARN",
  filterName: "FILTER_NAME",
  filterPattern: "ERROR",
  logGroupName: "LOG_GROUP",
};

cwl.putSubscriptionFilter(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
});
```

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

```
node cwl_putsubscriptionfilter.js
```

Diesen Beispielcode finden Sie [hier auf GitHub.](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascript/example_code/cloudwatch-logs/cwl_putsubscriptionfilter.js)

## Löschen eines Abonnementfilters
<a name="cloudwatch-examples-subscriptions-deleting"></a>

Erstellen Sie ein Node.js-Modul mit dem Dateinamen `cwl_deletesubscriptionfilters.js`. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren. Um auf CloudWatch Logs zuzugreifen, erstellen Sie ein `AWS.CloudWatchLogs` Serviceobjekt. Erstellen Sie ein JSON-Objekt mit den erforderlichen Parametern für das Löschen eines Filters, einschließlich des Filternamens und des Namens der Protokollgruppe. Rufen Sie die `deleteSubscriptionFilters`-Methode auf.

```
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });

// Create the CloudWatchLogs service object
var cwl = new AWS.CloudWatchLogs({ apiVersion: "2014-03-28" });

var params = {
  filterName: "FILTER",
  logGroupName: "LOG_GROUP",
};

cwl.deleteSubscriptionFilter(params, function (err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
});
```

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

```
node cwl_deletesubscriptionfilter.js
```

Diesen Beispielcode finden Sie [hier auf GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascript/example_code/cloudwatch-logs/cwl_deletesubscriptionfilter.js).