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.
Transformationsprozessoren
Transformationsprozessoren ändern die Struktur von Protokollereignissen, indem sie Felder hinzufügen, kopieren, verschieben oder entfernen.
Prozessor „add_entries“
Fügt statische Schlüssel-Wert-Paare zu Protokollereignissen hinzu. Einer Pipeline kann add_entries maximal ein Prozessor hinzugefügt werden.
Konfiguration
Konfigurieren Sie den add_entries-Prozessor mit den folgenden Parametern:
processor: - add_entries: entries: - key: "environment" value: "production" overwrite_if_key_exists: false
Parameters
entries(Erforderlich)-
Array von Schlüssel-Wert-Paaren, die zu jedem Protokollereignis hinzugefügt werden sollen.
entries[].key(Erforderlich)-
Der Feldname, der dem Protokollereignis hinzugefügt werden soll. Unterstützt verschachtelte Felder in Punktschreibweise.
entries[].value(Erforderlich)-
Der statische Wert, der dem Schlüssel zugewiesen werden soll.
entries[].overwrite_if_key_exists(optional)-
Boolesches Flag, das das Verhalten bestimmt, wenn der Schlüssel bereits existiert. Standardwert "false".
when(optional)-
Processor-level bedingter Ausdruck. Wenn angegeben, wird der gesamte Prozessor übersprungen, wenn der Ausdruck als falsch ausgewertet wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
entries[].when(optional)-
Entry-level bedingter Ausdruck. Wenn angegeben, wird nur dieser Eintrag übersprungen, wenn der Ausdruck als falsch ausgewertet wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
entries[].when_else(optional)-
Fallback-Eintrag, der nur ausgeführt wird, wenn keine der anderen
whenBedingungen im selben Prozessor zutrifft. Der Ausdruckswert gibt an, welchewhenBedingungen zu berücksichtigen sind. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
Prozessor „copy_values“
Kopiert Werte von einem Feld in ein anderes. Einer Pipeline kann höchstens ein copy_values Prozessor hinzugefügt werden.
Konfiguration
Konfigurieren Sie den Copy_Values-Prozessor mit den folgenden Parametern:
processor: - copy_values: entries: - from_key: "user_id" to_key: "backup_user" overwrite_if_to_key_exists: false
Parameters
entries(Erforderlich)-
Reihe von Kopiervorgängen, die bei jedem Protokollereignis ausgeführt werden sollen.
entries[].from_key(Erforderlich)-
Der Feldname, aus dem der Wert kopiert werden soll. Verwendet die Punktnotation für verschachtelte Felder.
entries[].to_key(Erforderlich)-
Der Feldname, in den der Wert kopiert werden soll. Erzeugt verschachtelte Strukturen, wenn die Punktnotation verwendet wird.
entries[].overwrite_if_to_key_exists(optional)-
Boolesches Flag, das das Verhalten steuert, wenn das Zielfeld bereits existiert. Standardwert "false".
when(optional)-
Processor-level bedingter Ausdruck. Wenn angegeben, wird der gesamte Prozessor übersprungen, wenn der Ausdruck als falsch ausgewertet wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
entries[].when(optional)-
Entry-level bedingter Ausdruck. Wenn angegeben, wird nur dieser Eintrag übersprungen, wenn der Ausdruck als falsch ausgewertet wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
entries[].when_else(optional)-
Fallback-Eintrag, der nur ausgeführt wird, wenn keine der anderen
whenBedingungen im selben Prozessor zutrifft. Der Ausdruckswert gibt an, welchewhenBedingungen zu berücksichtigen sind. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
Prozessor „delete_entries“
Entfernt angegebene Felder aus Protokollereignissen.
Konfiguration
Konfigurieren Sie den Prozessor delete_entries mit den folgenden Parametern:
processor: - delete_entries: with_keys: ["temp_field", "debug_info"]
Parameters
with_keys(Erforderlich)-
Array von Feldnamen, die aus jedem Protokollereignis entfernt werden sollen. Unterstützt das Löschen verschachtelter Felder mithilfe der Punktnotation.
when(optional)-
Bedingter Ausdruck, der bestimmt, ob dieser Prozessor ausgeführt wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
move_keys-Prozessor
Verschiebt Felder von einem Ort zum anderen.
Konfiguration
Konfigurieren Sie den move_keys-Prozessor mit den folgenden Parametern:
processor: - move_keys: entries: - from_key: "old_field" to_key: "new_field" overwrite_if_to_key_exists: true
Parameters
entries(Erforderlich)-
Reihe von Verschiebungsvorgängen. Maximal 5 Einträge.
entries[].from_key(Erforderlich)-
Name des Quellfeldes. Maximal 128 Zeichen.
entries[].to_key(Erforderlich)-
Name des Zielfeldes. Maximal 128 Zeichen.
entries[].overwrite_if_to_key_exists(optional)-
Ob das vorhandene Zielfeld überschrieben werden soll.
when(optional)-
Processor-level bedingter Ausdruck. Wenn angegeben, wird der gesamte Prozessor übersprungen, wenn der Ausdruck als falsch ausgewertet wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
entries[].when(optional)-
Entry-level bedingter Ausdruck. Wenn angegeben, wird nur dieser Eintrag übersprungen, wenn der Ausdruck als falsch ausgewertet wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
entries[].when_else(optional)-
Fallback-Eintrag, der nur ausgeführt wird, wenn keine der anderen
whenBedingungen im selben Prozessor zutrifft. Der Ausdruckswert gibt an, welchewhenBedingungen zu berücksichtigen sind. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
Prozessor abflachen
Glättet verschachtelte Objektstrukturen ab.
Konfiguration
Konfigurieren Sie den Flatten-Prozessor mit den folgenden Parametern:
processor: - flatten: source: "metadata" target: "flattened" remove_processed_fields: true exclude_keys: ["sensitive_data"]
Parameters
source(Erforderlich)-
Feld, das ein verschachteltes Objekt enthält, das geglättet werden soll.
target(Erforderlich)-
Zielfeldpräfix für abgeflachte Schlüssel.
remove_processed_fields(optional)-
Ob das ursprüngliche verschachtelte Feld nach dem Reduzieren entfernt werden soll.
exclude_keys(optional)-
Reihe von Schlüsseln, die vom Reduzieren ausgeschlossen werden sollen. Maximal 20 Schlüssel mit jeweils bis zu 128 Zeichen.
when(optional)-
Bedingter Ausdruck, der bestimmt, ob dieser Prozessor ausgeführt wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
Lookup-Prozessor
Reichert Protokollereignisse mit Daten aus einer CloudWatch Logs-Suchtabelle an. Der Prozessor gleicht Felder in Ihren Protokollereignissen mit Feldern in der Nachschlagetabelle ab und fügt bestimmte Felder an Ihre Protokollereignisse an. Verwenden Sie diesen Prozessor für Szenarien zur Datenanreicherung, z. B. für die Zuordnung von Benutzer-IDs zu Benutzerdetails, Produktcodes zu Produktinformationen oder Fehlercodes zu Fehlerbeschreibungen. Einer Pipeline kann maximal ein lookup Prozessor hinzugefügt werden.
Anmerkung
Wenn eine Lookup-Tabelle in einer Pipeline verwendet wird, müssen Sie eine Ausführungsrolle mit logs:GetLookupTable Berechtigungen für die Tabelle angeben. Weitere Informationen finden Sie unter CloudWatch Pipelines IAM-Richtlinien und -Berechtigungen.
Konfiguration
Konfigurieren Sie den Lookup-Prozessor mit den folgenden Parametern:
processor: - lookup: lookup_table: "arn:aws:logs:us-east-1:123456789012:lookup-table:my_lookup_table" match_keys: - log_key: "src_ip" lookup_key: "ip_address" entries: - source: "hostname" target: "src_hostname" overwrite_if_exists: true
Parameters
lookup_table(Erforderlich)-
Der ARN der CloudWatch Logs-Lookup-Tabelle, der für die Anreicherung verwendet werden soll. Die maximale Länge beträgt 2048 Zeichen.
match_keys(Erforderlich)-
Eine Reihe von Schlüsselpaaren, die definieren, wie Protokollereignisfelder den Feldern der Lookup-Tabelle zugeordnet werden. Mindestens 1, maximal 5 Übereinstimmungsschlüssel. Wenn mehrere Übereinstimmungsschlüssel angegeben werden, muss eine Zeile in der Nachschlagetabelle mit allen Schlüsseln übereinstimmen, um ein Ergebnis zu erhalten (UND-Logik).
match_keys[].log_key(Erforderlich)-
Der Feldname im Protokollereignis, mit dem verglichen werden soll. Maximal 128 Zeichen.
match_keys[].lookup_key(Erforderlich)-
Der Spaltenname in der Nachschlagetabelle, mit dem abgeglichen werden soll. Maximal 128 Zeichen.
entries(Erforderlich)-
Reihe von Feldern, die dem Protokollereignis aus der entsprechenden Zeile der Lookup-Tabelle hinzugefügt werden sollen. Mindestens 1, maximal 10 Einträge.
entries[].source(Erforderlich)-
Der Spaltenname in der Nachschlagetabelle, aus der der Wert abgerufen werden soll. Maximal 128 Zeichen.
entries[].target(optional)-
Der Feldname, der dem Protokollereignis hinzugefügt werden soll. Wenn nicht angegeben, wird der
sourceSpaltenname als Feldname verwendet. Maximal 128 Zeichen. entries[].overwrite_if_exists(optional)-
Boolesches Flag, das das Verhalten bestimmt, wenn das Zielfeld im Protokollereignis bereits vorhanden ist. Standardwert "false".
when(optional)-
Bedingter Ausdruck, der bestimmt, ob dieser Prozessor ausgeführt wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
Beispiel
Stellen Sie sich eine Nachschlagetabelle vor, die network_assets mit den folgenden Zeilen benannt ist:
| ip_address | hostname | owner | location |
|---|---|---|---|
| 10.0.1.12 | Webserver-01 | Team-Alpha | us-east-1 |
| 10.0.2.45 | db-Server-03 | Team-Beta | us-west-2 |
| 10.0.3.78 | Cache-Knoten-07 | Team-Alpha | eu-west-1 |
Angesichts des folgenden Protokollereignisses:
{ "timestamp": "2026-05-04T12:00:00Z", "src_ip": "10.0.2.45", "action": "connection_opened", "bytes": 2048 }
Und die folgende Prozessorkonfiguration:
processor: - lookup: lookup_table: "arn:aws:logs:us-east-1:123456789012:lookup-table:network_assets" match_keys: - log_key: "src_ip" lookup_key: "ip_address" entries: - source: "hostname" target: "src_hostname" - source: "owner" - source: "location" target: "src_region" overwrite_if_exists: false
Der Prozessor erzeugt das folgende erweiterte Protokollereignis:
{ "timestamp": "2026-05-04T12:00:00Z", "src_ip": "10.0.2.45", "action": "connection_opened", "bytes": 2048, "src_hostname": "db-server-03", "owner": "team-beta", "src_region": "us-west-2" }
IAM-Berechtigungen
Wenn eine Pipeline den Lookup-Prozessor verwendet, muss die Ausführungsrolle der Pipeline die logs:GetLookupTable Berechtigung für die referenzierte Tabelle beinhalten. Das folgende Beispiel für eine Richtlinienanweisung gewährt diese Berechtigung:
{ "Effect": "Allow", "Action": "logs:GetLookupTable", "Resource": "arn:aws:logs:<region>:<account-id>:lookup-table:<table-name>" }
GeoIP-Prozessor
Der GeoIP-Prozessor reichert Protokollereignisse mit geographischen Standortdaten auf der Grundlage von IP-Adressen an. Der Prozessor verwendet MaxMind Datenbanken, um IP-Adressen in geografische Informationen wie Stadt, Land, Kontinent, Koordinaten und Angaben zur autonomen Systemnummer (ASN) aufzulösen. Verwenden Sie diesen Prozessor für die Analyse des Netzwerkverkehrs, zur Erweiterung des Benutzerstandorts und für Szenarien zur Sicherheitsuntersuchung.
Konfiguration
Konfigurieren Sie den GeoIP-Prozessor mit den folgenden Parametern:
processor: - geoip: entries: - source: "client_ip" target: "client_geo" include_fields: - "city_name" - "country_name" - "country_iso_code" - "continent_name" - "latitude" - "longitude" when: '.client_ip != "127.0.0.1"'
Parameters
entries(Erforderlich)-
Array von Eingabeobjekten, die definieren, welche IP-Felder mit geographischen Daten angereichert werden sollen. Mindestens 1, maximal 10 Einträge.
entries[].source(Erforderlich)-
Der Feldname im Protokollereignis, der die IP-Adresse enthält, nach der gesucht werden soll. Muss auf eine gültige IPv4- oder IPv6-Adresse verweisen. Maximal 128 Zeichen.
entries[].target(Erforderlich)-
Der Feldname, in den der Prozessor geografische Anreicherungsdaten im Protokollereignis schreibt. Maximal 128 Zeichen.
entries[].include_fields(Erforderlich)-
Reihe geografischer Felder, die in das Anreicherungsergebnis aufgenommen werden sollen. Mindestens 1, maximal 12 Felder. Die folgenden Felder sind verfügbar:
continent_code— Two-letter Kontinentcode (zum Beispiel „NA“).continent_name— Name des Kontinents (zum Beispiel „Nordamerika“).country_name— Name des Landes (z. B. „Vereinigte Staaten“).country_iso_code— ISO 3166-1 Alpha-2-Ländercode (zum Beispiel „US“).city_name— Name der Stadt (zum Beispiel „Seattle“).postal_code— Postleitzahl, die dem Standort der IP-Adresse zugeordnet ist.time_zone— IANA-Zeitzonenname (z. B. "America/Los_Angeles“).latitude— Breitengradkoordinate des Standorts der IP-Adresse.longitude— Längenkoordinate des Standorts der IP-Adresse.network— CIDR-Notation des Netzwerks, das der IP-Adresse zugeordnet ist.asn— Autonome Systemnummer, die der IP-Adresse zugeordnet ist.asn_organization— Name der Organisation, die der Nummer des autonomen Systems zugeordnet ist.
entries[].when(optional)-
Bedingter Ausdruck, der bestimmt, ob dieser Eintrag ausgeführt wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
when(optional)-
Top-level bedingter Ausdruck, der bestimmt, ob dieser Prozessor ausgeführt wird. Die maximale Länge beträgt 256 Zeichen. Siehe Ausdruckssyntax für die bedingte Verarbeitung.
Beispiel
Das folgende Beispiel zeigt ein Beispiel für ein Protokollereignis mit IP-Adressfeldern:
{ "timestamp": "2026-05-04T12:00:00Z", "src_ip": "203.0.113.50", "dst_ip": "198.51.100.25", "action": "ALLOW", "bytes": 4096 }
Die folgende Prozessorkonfiguration ordnet sowohl Quell- als auch Ziel-IP-Felder geografischen Anreicherungszielen zu:
processor: - geoip: entries: - source: "src_ip" target: "src_geo" include_fields: - "city_name" - "country_name" - "country_iso_code" - "latitude" - "longitude" - "asn" - "asn_organization" - source: "dst_ip" target: "dst_geo" include_fields: - "country_name" - "country_iso_code"
Der Prozessor erzeugt das folgende erweiterte Protokollereignis:
{ "timestamp": "2026-05-04T12:00:00Z", "src_ip": "203.0.113.50", "dst_ip": "198.51.100.25", "action": "ALLOW", "bytes": 4096, "src_geo": { "city_name": "Seattle", "country_name": "United States", "country_iso_code": "US", "latitude": 47.6062, "longitude": -122.3321, "asn": 16509, "asn_organization": "Amazon.com, Inc." }, "dst_geo": { "country_name": "Germany", "country_iso_code": "DE" } }