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
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
Themen
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
undDETAILED
. Die Standardeinstellung istDETAILED
; das heißt, alle Metriken werden an gesendet CloudWatch. Die BerichtsstufeNONE
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 (
Operation
ShardId
, undWorkerIdentifier
) standardmäßig aktiviert. Außerdem kann dieOperation
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 aktiviertOperation
ShardId
StreamId
, wenn KCL sie für die Verarbeitung mehrerer Datenströme konfiguriert ist. Außerdem können die Dimensionen und dieStreamId
Dimensionen in KCL 2.x nicht deaktiviert werden, wenn sie für dieOperation
Verarbeitung mehrerer Datenströme konfiguriert KCL ist.StreamId
Die Dimension ist nur für die Metriken pro Shard verfügbar.In KCL 1.x sind standardmäßig nur die
ShardId
DimensionenOperation
und die Dimension aktiviert, und dieWorkerIdentifier
Dimension ist deaktiviert. In KCL 1.x kann dieOperation
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 neuenWorkerIdentifier
Dimensionswerten an CloudWatch gesendet. Wenn Sie möchten, dass derWorkerIdentifier
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 Operation
ShardId
, 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.
Themen
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 Metrikstufe: Detailed Einheiten: Anzahl |
KinesisDataFetcher. getIterator. Zeit |
Zeit, die pro 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 Metrikstufe: Summary Einheiten: Anzahl |
Zeit |
Die Zeit (in Millisekunden), die 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 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.
Themen
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 Metrikstufe: Summary Einheiten: Anzahl |
Zeit |
Zeitbedarf für die 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 Metrikstufe: Detailed Einheiten: Anzahl |
KinesisDataFetcher. getRecords. Zeit |
Zeitbedarf für die 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 Metrikstufe: Summary Einheiten: Byte |
RecordsProcessed |
Anzahl der bei jedem Metrikstufe: Summary Einheiten: Anzahl |
ExpiredIterator |
Nummer der beim Anruf ExpiredIteratorException 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 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 |