Überwachen Sie die Kinesis-Clientbibliothek mit Amazon CloudWatch - Amazon-Kinesis-Data-Streams

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.

Überwachen Sie die Kinesis-Clientbibliothek mit Amazon CloudWatch

Die Kinesis Client Library (KCL) für Amazon Kinesis Data Streams veröffentlicht in Ihrem Namen benutzerdefinierte CloudWatch Amazon-Metriken, wobei der Name Ihrer KCL Anwendung als Namespace verwendet wird. Sie können diese Metriken anzeigen, indem Sie zur CloudWatch Konsole navigieren und Benutzerdefinierte Metriken auswählen. Weitere Informationen zu benutzerdefinierten Metriken finden Sie unter Veröffentlichen benutzerdefinierter Metriken im CloudWatch Amazon-Benutzerhandbuch.

Für die CloudWatch von der hochgeladenen Metriken fällt eine geringe Gebühr an. Insbesondere KCL fallen Gebühren für Amazon CloudWatch Custom Metrics und Amazon CloudWatch API Requests an. Weitere Informationen finden Sie unter CloudWatch Amazon-Preise.

Metriken und Namespace

Der Namespace, der zum Hochladen von Metriken verwendet wird, ist der Anwendungsname, den Sie beim Starten von angeben. KCL

Metrische Ebenen und Dimensionen

Es gibt zwei Optionen, um zu steuern, in welche Metriken hochgeladen werden CloudWatch:

Metrikstufen

Jeder Metrik ist eine individuelle Stufe zugewiesen. Wenn Sie eine Berichtsebene für Kennzahlen festlegen, werden Metriken, deren individuelle Ebene unter der Berichtsebene liegt, nicht an diese gesendet CloudWatch. Die Stufen sind: NONE, SUMMARY und DETAILED. Die Standardeinstellung istDETAILED; das heißt, alle Metriken werden an gesendet CloudWatch. Die Berichtsstufe NONE bedeutet, dass keine Kennzahlen gesendet werden. Informationen dazu, welchen Metriken welche Stufen zugewiesen werden, finden Sie unter Liste der Metriken.

aktivierte Dimensionen

Jeder KCL Metrik sind Dimensionen zugeordnet, an die auch gesendet werden CloudWatch. Wenn in KCL 2.x für die Verarbeitung eines einzelnen Datenstroms konfiguriert KCL ist, sind alle Metrikdimensionen (OperationShardId, undWorkerIdentifier) standardmäßig aktiviert. Außerdem kann die Operation Dimension in KCL 2.x nicht deaktiviert werden, wenn sie für die Verarbeitung eines einzelnen Datenstroms konfiguriert KCL ist. In KCL 2.x sind alle Metrikdimensionen (,, undWorkerIdentifier) standardmäßig aktiviert Operation ShardIdStreamId, wenn KCL sie für die Verarbeitung mehrerer Datenströme konfiguriert ist. Außerdem können die Dimensionen und die StreamId Dimensionen in KCL 2.x nicht deaktiviert werden, wenn sie für die Operation Verarbeitung mehrerer Datenströme konfiguriert KCL ist. StreamIdDie Dimension ist nur für die Metriken pro Shard verfügbar.

In KCL 1.x sind standardmäßig nur die ShardId Dimensionen Operation und die Dimension aktiviert, und die WorkerIdentifier Dimension ist deaktiviert. In KCL 1.x kann die Operation Dimension nicht deaktiviert werden.

Weitere Informationen zu CloudWatch metrischen Dimensionen finden Sie im Abschnitt Dimensionen des Themas Amazon CloudWatch Concepts im CloudWatch Amazon-Benutzerhandbuch.

Wenn die WorkerIdentifier Dimension aktiviert ist und bei jedem Neustart eines bestimmten Workers ein anderer Wert für die KCL Worker-ID-Eigenschaft verwendet wird, werden neue Messwerte mit neuen WorkerIdentifier Dimensionswerten an CloudWatch gesendet. Wenn Sie möchten, dass der WorkerIdentifier Dimensionswert bei bestimmten KCL Worker-Neustarts identisch ist, müssen Sie bei der Initialisierung für jeden Worker explizit denselben Worker-ID-Wert angeben. Beachten Sie, dass der Worker-ID-Wert für jeden aktiven KCL Worker für alle KCL Worker eindeutig sein muss.

Metrische Konfiguration

Metrikebenen und aktivierte Dimensionen können mithilfe der KinesisClientLibConfiguration Instanz konfiguriert werden, die beim Starten der KCL Anwendung an Worker übergeben wird. In MultiLangDaemon diesem Fall können die metricsEnabledDimensions Eigenschaften metricsLevel und in der Datei .properties angegeben werden, die zum Starten der MultiLangDaemon KCL Anwendung verwendet wird.

Metrischen Ebenen kann einer von drei Werten zugewiesen werden: NONESUMMARY, oderDETAILED. Bei aktivierten Dimensionswerten muss es sich um kommagetrennte Zeichenketten mit der Liste der Dimensionen handeln, die für die CloudWatch Metriken zulässig sind. Die von der KCL Anwendung verwendeten Dimensionen sind OperationShardId, und. WorkerIdentifier

Liste der Metriken

In den folgenden Tabellen sind die KCL Metriken nach Umfang und Funktionsweise gruppiert aufgeführt.

Metriken KCL pro Anwendung

Diese Metriken werden für alle KCL Mitarbeiter innerhalb des Anwendungsbereichs aggregiert, wie im CloudWatch Amazon-Namespace definiert.

InitializeTask

Der InitializeTask Vorgang ist für die Initialisierung des Datensatzprozessors für die Anwendung verantwortlich. KCL Zur Logik dieser Operation gehört der Abruf eines Shard-Iterators von Kinesis Data Streams und die Initialisierung des Datensatzprozessors.

Metrik Beschreibung
KinesisDataFetcher. getIterator. Erfolg

Anzahl erfolgreicher GetShardIterator Operationen pro KCL Anwendung.

Metrikstufe: Detailed

Einheiten: Anzahl

KinesisDataFetcher. getIterator. Zeit

Zeit, die pro GetShardIterator Vorgang für die jeweilige KCL Anwendung benötigt wird.

Metrikstufe: Detailed

Einheiten: Millisekunden

RecordProcessor.initialize.TIME

Zeitbedarf für die Initialisierungsmethode des Datensatzprozessors.

Metrikstufe: Summary

Einheiten: Millisekunden

Herzlichen Glückwunsch

Anzahl der erfolgreichen Initialisierungen des Datensatzprozessors.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Zeit, die der KCL Worker für die Initialisierung des Datensatzprozessors benötigt hat.

Metrikstufe: Summary

Einheiten: Millisekunden

ShutdownTask

Die - ShutdownTask Operation initiiert die Abschaltsequenz für die Shard-Verarbeitung. Dies kann auftreten, da ein Shard geteilt oder zusammengeführt ist, oder wenn das Shard-Lease vom Worker verloren ging. In beiden Fällen wird die Datensatzprozessorfunktion shutdown() aufgerufen. Neue Shards werden auch erkannt, wenn ein Shard geteilt oder zusammengeführt wurde, was zur Erstellung von einem oder zwei neuen Shards führt.

Metrik Beschreibung
CreateLease. Erfolg

Häufigkeit, mit der neue untergeordnete Shards nach dem Herunterfahren der übergeordneten Shard erfolgreich zur DynamoDB-Tabelle der KCL Anwendung hinzugefügt wurden.

Metrikstufe: Detailed

Einheiten: Anzahl

CreateLease.Zeit

Zeitaufwand für das Hinzufügen neuer untergeordneter Shard-Informationen zur KCL DynamoDB-Tabelle der Anwendung.

Metrikstufe: Detailed

Einheiten: Millisekunden

UpdateLease. Erfolg

Anzahl der erfolgreichen endgültigen Checkpoints während des Schließens des Datensatzprozessors.

Metrikstufe: Detailed

Einheiten: Anzahl

UpdateLease.Zeit

Zeitbedarf für die Checkpoint-Operation während des Schließens des Datensatzprozessors.

Metrikstufe: Detailed

Einheiten: Millisekunden

RecordProcessor.Herunterfahren.Zeit

Zeitbedarf für die Schließungsmethode des Datensatzprozessors.

Metrikstufe: Summary

Einheiten: Millisekunden

Herzlichen Glückwunsch

Anzahl der erfolgreichen Schließungsvorgänge.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Zeit, die der KCL Worker für die Shutdown-Aufgabe benötigt hat.

Metrikstufe: Summary

Einheiten: Millisekunden

ShardSyncTask

Bei ShardSyncTask diesem Vorgang werden Änderungen an den Shard-Informationen für den Kinesis-Datenstrom erkannt, sodass neue Shards von der Anwendung verarbeitet werden können. KCL

Metrik Beschreibung
CreateLease. Erfolg

Anzahl der erfolgreichen Versuche, der DynamoDB-Tabelle der KCL Anwendung neue Shard-Informationen hinzuzufügen.

Metrikstufe: Detailed

Einheiten: Anzahl

CreateLease. Zeit

Zeit, die für das Hinzufügen neuer Shard-Informationen zur DynamoDB-Tabelle der KCL Anwendung benötigt wurde.

Metrikstufe: Detailed

Einheiten: Millisekunden

Herzlichen Glückwunsch

Anzahl der erfolgreichen Shard Synchronisierungsoperationen.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Zeitbedarf für die Shard-Synchronisierungsoperation.

Metrikstufe: Summary

Einheiten: Millisekunden

BlockOnParentTask

Wenn der Shard geteilt oder mit anderen Shards zusammengeführt wird, werden neue untergeordnete Shards erstellt. Durch diesen BlockOnParentTask Vorgang wird sichergestellt, dass die Datensatzverarbeitung für die neuen Shards erst beginnt, wenn die übergeordneten Shards vollständig von der verarbeitet wurden. KCL

Metrik Beschreibung
Herzlichen Glückwunsch

Anzahl der erfolgreichen Prüfungen für den Abschluss der übergeordneten Shards.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Zeitbedarf für den Abschluss der übergeordneten Shards.

Metrikstufe: Summary

Einheit: Millisekunden

PeriodicShardSyncManager

Der PeriodicShardSyncManager ist dafür verantwortlich, die Datenströme zu untersuchen, die von der KCL Verbraucheranwendung verarbeitet werden, Datenströme zu identifizieren, die teilweise ausgeliehen wurden, und sie zur Synchronisation weiterzuleiten.

Die folgenden Metriken sind verfügbar, wenn sie für die Verarbeitung eines einzelnen Datenstroms konfiguriert KCL NumStreamsWithPartialLeases ist (dann wird der Wert von NumStreamsToSync und auf 1 gesetzt) und auch, wenn sie für die Verarbeitung mehrerer Datenströme konfiguriert KCL ist.

Metrik Beschreibung
NumStreamsToSync

Die Anzahl der Datenströme (pro AWS Konto), die von der Verbraucheranwendung verarbeitet werden und teilweise Leases enthalten und zur Synchronisation weitergeleitet werden müssen.

Metrikstufe: Summary

Einheiten: Anzahl

NumStreamsWithPartialLeases

Die Anzahl der Datenströme (pro AWS Konto), die die Verbraucheranwendung verarbeitet und die Teilleasingverträge enthalten.

Metrikstufe: Summary

Einheiten: Anzahl

Herzlichen Glückwunsch

Die Anzahl der Male, in denen PeriodicShardSyncManager erfolgreich Teil-Leases in den Datenströmen identifizieren konnte, die die Verbraucheranwendung verarbeitet.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Die Zeit (in Millisekunden), die PeriodicShardSyncManager benötigt wird, um die Datenströme zu untersuchen, die von der Verbraucheranwendung verarbeitet werden, um festzustellen, welche Datenströme eine Shard-Synchronisierung erfordern.

Metrikstufe: Summary

Einheiten: Millisekunden

MultistreamTracker

Die MultistreamTracker Schnittstelle ermöglicht es Ihnen, KCL Verbraucheranwendungen zu erstellen, die mehrere Datenströme gleichzeitig verarbeiten können.

Metrik Beschreibung
DeletedStreams. Zählen

Die Anzahl der in diesem Zeitraum gelöschten Datenströme.

Metrikstufe: Summary

Einheiten: Anzahl

ActiveStreams. Zählen

Die Anzahl der aktiven Datenströme, die verarbeitet werden.

Metrikstufe: Summary

Einheiten: Anzahl

StreamsPendingDeletion. Zählen

Die Anzahl der Datenströme, die aufgrund von FormerStreamsLeasesDeletionStrategy zur Löschung anstehen.

Metrikstufe: Summary

Einheiten: Anzahl

Kennzahlen pro Mitarbeiter

Diese Metriken werden für alle Datensatzprozessoren aggregiert, die Daten aus einem Kinesis-Datenstream, z. B. einer EC2 Amazon-Instance, verbrauchen.

RenewAllLeases

Die Operation RenewAllLeases erneuert periodisch alle Shard-Leases, die zu einer bestimmten Worker-Instance gehören.

Metrik Beschreibung
RenewLease. Erfolg

Anzahl der erfolgreichen Lease-Erneuerungen durch den Worker.

Metrikstufe: Detailed

Einheiten: Anzahl

RenewLease.Zeit

Zeitbedarf für die Operation der Lease-Erneuerung.

Metrikstufe: Detailed

Einheiten: Millisekunden

CurrentLeases

Anzahl der Shard-Leases, die einem Worker nach der Erneuerung aller Leases gehören.

Metrikstufe: Summary

Einheiten: Anzahl

LostLeases

Anzahl der Shard-Leases, die nach einem Versuch zur Erneuerung aller Leases eines Workers verloren gingen.

Metrikstufe: Summary

Einheiten: Anzahl

Herzlichen Glückwunsch

Häufigkeit erfolgreicher Lease-Erneuerungsoperationen für den Worker.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Zeitbedarf für die Erneuerung aller Leases für den Worker.

Metrikstufe: Summary

Einheiten: Millisekunden

TakeLeases

Bei diesem TakeLeases Vorgang wird die Verarbeitung von Datensätzen zwischen allen KCL Mitarbeitern ausgeglichen. Wenn der aktuelle KCL Mitarbeiter weniger Shard-Leasingverträge als erforderlich hat, nimmt er Shard-Leasingverträge von einem anderen Mitarbeiter an, der überlastet ist.

Metrik Beschreibung
ListLeases. Erfolg

Häufigkeit, mit der alle Shard-Leases erfolgreich aus der DynamoDB-Tabelle der KCL Anwendung abgerufen wurden.

Metrikstufe: Detailed

Einheiten: Anzahl

ListLeases. Zeit

Zeit, die benötigt wurde, um alle Shard-Leases aus der DynamoDB-Tabelle der KCL Anwendung abzurufen.

Metrikstufe: Detailed

Einheiten: Millisekunden

TakeLease. Erfolg

Häufigkeit, mit der der Arbeiter erfolgreich Shard-Leasingverträge von anderen Mitarbeitern angenommen hat. KCL

Metrikstufe: Detailed

Einheiten: Anzahl

TakeLease. Zeit

Zeitbedarf für die Aktualisierung der Lease-.Tabelle mit Leases des Workers.

Metrikstufe: Detailed

Einheiten: Millisekunden

NumWorkers

Gesamtzahl der Worker, wie von einem spezifischen Worker definiert.

Metrikstufe: Summary

Einheiten: Anzahl

NeededLeases

Anzahl der Shard-Leases, die der aktuelle Worker für eine ausgeglichene Shard-Verarbeitungslast benötigt.

Metrikstufe: Detailed

Einheiten: Anzahl

LeasesToTake

Anzahl der Leases, die der Worker zu übernehmen versuchen wird.

Metrikstufe: Detailed

Einheiten: Anzahl

TakenLeases

Anzahl der von dem Worker erfolgreich übernommenen Leases.

Metrikstufe: Summary

Einheiten: Anzahl

TotalLeases

Gesamtzahl der Shards, die die KCL Anwendung verarbeitet.

Metrikstufe: Detailed

Einheiten: Anzahl

ExpiredLeases

Gesamtzahl der Shards, die nicht von einem Worker verarbeitet werden, wie von einem spezifischen Worker identifiziert.

Metrikstufe: Summary

Einheiten: Anzahl

Herzlichen Glückwunsch

Häufigkeit des erfolgreichen Abschlusses der TakeLeases-Operation.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Zeitbedarf für die TakeLeases-Operation für einen Worker.

Metrikstufe: Summary

Einheiten: Millisekunden

Metriken pro Shard

Diese Metriken werden über einen einzigen Datensatzprozessor aggregiert.

ProcessTask

Die ProcessTask Operation ruft GetRecordsmit der aktuellen Iteratorposition auf, um Datensätze aus dem Stream abzurufen, und ruft die Datensatzprozessorfunktion auf. processRecords

Metrik Beschreibung
KinesisDataFetcher. getRecords. Erfolg

Anzahl der erfolgreichen GetRecords-Operationen pro Kinesis-Datenstrom-Shard.

Metrikstufe: Detailed

Einheiten: Anzahl

KinesisDataFetcher. getRecords. Zeit

Zeitbedarf für die GetRecords-Operation für den Kinesis-Datenstrom-Shard.

Metrikstufe: Detailed

Einheiten: Millisekunden

UpdateLease.Erfolg

Anzahl der erfolgreichen Checkpoints durch den Datensatzprozessor für einen bestimmten Shard.

Metrikstufe: Detailed

Einheiten: Anzahl

UpdateLease.Zeit

Zeitbedarf für jede Checkpoint-Operation eines bestimmten Shards.

Metrikstufe: Detailed

Einheiten: Millisekunden

DataBytesProcessed

Gesamtgröße der verarbeiteten Datensätze in Byte bei jedem ProcessTask-Aufruf.

Metrikstufe: Summary

Einheiten: Byte

RecordsProcessed

Anzahl der bei jedem ProcessTask-Aufruf verarbeiteten Datensätze.

Metrikstufe: Summary

Einheiten: Anzahl

ExpiredIterator

Nummer der beim Anruf ExpiredIteratorException GetRecords empfangenen Personen.

Metrikstufe: Summary

Einheiten: Anzahl

MillisBehindLatest Zeitraum, um den der aktuelle Iterator seit dem letzten Datensatz (Tip) in dem Shard verspätet ist. Dieser Wert ist kleiner oder gleich der Zeitdifferenz zwischen dem letzten Datensatz in einer Antwort und dem aktuellen Zeitpunkt. Dies ist eine genauere Angabe dafür, wie weit ein Shard vom Tip entfernt ist, als durch den Vergleich der Zeitstempel im letzten Antwortdatensatz möglich ist. Dieser Wert gilt für den letzten Datensatzstapel und ist kein Durchschnittswert aller Zeitstempel in den Datensätzen.

Metrikstufe: Summary

Einheiten: Millisekunden

RecordProcessor. processRecords. Zeit

Zeitbedarf für die processRecords-Methode des Datensatzprozessors.

Metrikstufe: Summary

Einheiten: Millisekunden

Herzlichen Glückwunsch

Anzahl der erfolgreichen Verarbeitungsaufgabenoperationen.

Metrikstufe: Summary

Einheiten: Anzahl

Zeit

Zeitbedarf für die Verarbeitungsaufgabenoperation.

Metrikstufe: Summary

Einheiten: Millisekunden