Specifica: Embedded Metric Format - Amazon CloudWatch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Specifica: Embedded Metric Format

Il formato metrico CloudWatch incorporato è una JSON specifica utilizzata per indicare ai CloudWatch log di estrarre automaticamente i valori metrici incorporati negli eventi di registro strutturati. È possibile utilizzarlo CloudWatch per rappresentare graficamente e creare allarmi sui valori metrici estratti. Questa sezione descrive le convenzioni relative alle specifiche del formato metrico incorporato e la struttura del documento in formato metrico incorporato.

Convenzioni specifiche di Embedded Metric Format

Le parole chiave «MUST», «MUSTNOT», «REQUIRED», «SHALL», «SHALLNOT», «SHOULD», «SHOULDNOT», «», «RECOMMENDED» e «MAYOPTIONAL» in questa specifica di formato devono essere interpretate come descritto in Parole chiave. RFC2119

I termini "JSON«," JSON text», "JSONvalue», «member», «element», «object», «array», «number», «string», «boolean», «true», «false» e «null» in questa specifica di formato devono essere interpretati come definito in JavaScript Object Notation RFC8259.

Nota

Se prevedi di creare allarmi su parametri creati utilizzando il formato dei parametri incorporati, consulta Impostazione degli allarmi sui parametri creati con il formato dei parametri incorporati per ottenere dei suggerimenti.

Struttura del documento in Embedded Metric Format

In questa sezione viene descritta la struttura di un documento in formato del parametro integrato. I documenti in formato metrico incorporato sono definiti in Object Notation. JavaScript RFC8259

Salvo diversa indicazione, gli oggetti definiti da questa specifica MUST NOT contengono eventuali membri aggiuntivi. I membri non riconosciuti da questa specifica vengono MUST ignorati. I membri definiti in questa specifica rispettano la distinzione tra maiuscole e minuscole.

Il formato metrico incorporato è soggetto agli stessi limiti degli eventi CloudWatch Logs standard e ha una dimensione massima di 256 KB.

Con il formato metrico incorporato, puoi monitorare l'elaborazione dei EMF log in base alle metriche pubblicate nel namespace del AWS/Logs tuo account. Questi possono essere utilizzati per tenere traccia della generazione non riuscita delle metriche da EMF e degli eventuali errori dovuti all'analisi o alla convalida. Per maggiori dettagli, consulta Monitoraggio con metriche. CloudWatch

Nodo radice

Il LogEvent messaggio MUST deve essere un JSON oggetto valido senza dati aggiuntivi all'inizio o alla fine della stringa del LogEvent messaggio. Per ulteriori informazioni sulla LogEvent struttura, vedere InputLogEvent.

I documenti in formato metrico incorporato MUST contengono il seguente membro di primo livello sul nodo radice. Questo è un oggetto Oggetto metadati.

{ "_aws": { "CloudWatchMetrics": [ ... ] } }

Il nodo radice MUST contiene tutti Membri di destinazione i membri definiti dai riferimenti in. MetricDirective oggetto

Il nodo radice MAY contiene tutti gli altri membri che non sono inclusi nei requisiti precedenti. I valori di questi membri MUST sono JSON tipi validi.

Oggetto metadati

Il _aws membro può essere utilizzato per rappresentare i metadati sul payload che informano i servizi a valle su come devono elaborare il. LogEvent Il valore è un MUST oggetto e MUST contiene i seguenti membri:

  • CloudWatchMetrics— Una matrice MetricDirective oggetto utilizzata per indicare di CloudWatch estrarre le metriche dal nodo radice di. LogEvent

    { "_aws": { "CloudWatchMetrics": [ ... ] } }
  • Time stamp Un numero che rappresenta la marca temporale usata per i parametri estratti dall'evento. I valori MUST devono essere espressi come numero di millisecondi dopo le 00:00:00 del 1° gennaio 1970. UTC

    { "_aws": { "Timestamp": 1559748430481 } }

MetricDirective oggetto

L' MetricDirective oggetto indica ai servizi a valle che LogEvent contengono le metriche su cui verranno estratte e pubblicate. CloudWatch MetricDirectives MUSTcontengono i seguenti membri:

  • Namespace: una stringa che rappresenta lo spazio dei CloudWatch nomi per la metrica.

  • Dimensioni Un DimensionSet matrice.

  • Parametri Una matrice di oggetti MetricDefinition. Questo array MUST NOT contiene più di 100 oggetti. MetricDefinition

DimensionSet matrice

A DimensionSet è una matrice di stringhe contenente le chiavi di dimensione che verranno applicate a tutte le metriche del documento. I valori all'interno di questo array MUST sono anche membri del nodo radice, denominato Membri di destinazione

A DimensionSet MUST NOT contiene più di 30 chiavi dimensionali. Un DimensionSet MAY essere vuoto.

Il membro di destinazione MUST ha un valore di stringa. Questo valore MUST NOT contiene più di 1024 caratteri. Il membro di destinazione definisce una dimensione che verrà pubblicata nell'identità del parametro. Ogni elemento DimensionSet utilizzato crea una nuova metrica in. CloudWatch Per ulteriori informazioni sulle dimensioni, consulta Dimensione e Dimensioni.

{ "_aws": { "CloudWatchMetrics": [ { "Dimensions": [ [ "functionVersion" ] ], ... } ] }, "functionVersion": "$LATEST" }
Nota

Fai attenzione durante la configurazione dell'estrazione dei parametri poiché influenza l'utilizzo di parametri personalizzati e l'addebito corrispondente. Se crei involontariamente parametri basati su dimensioni ad alta cardinalità (ad esempio requestId), Embedded Metric Format creerà per impostazione predefinita un parametro personalizzato corrispondente a ogni combinazione di dimensione univoca. Per ulteriori informazioni, consulta Dimensioni.

MetricDefinition oggetto

A MetricDefinition è un oggetto che MUST contiene il seguente membro:

Un MetricDefinition oggetto MAY contiene i seguenti membri:

  • Unità: un valore di OPTIONAL stringa che rappresenta l'unità di misura per la metrica corrispondente. I valori sono SHOULD unità CloudWatch metriche valide. Per informazioni sulle unità valide, vedere MetricDatum. Se non viene fornito un valore, NONE viene assunto un valore predefinito di.

  • StorageResolution— Un valore OPTIONAL intero che rappresenta la risoluzione di archiviazione per la metrica corrispondente. L'impostazione su 1 specifica questa metrica come metrica ad alta risoluzione, in modo che la metrica con risoluzione inferiore al minuto venga CloudWatch memorizzata fino a un secondo. L'impostazione di questo valore su 60 specifica questa metrica come risoluzione standard, che viene memorizzata a una risoluzione di 1 minuto. CloudWatch I valori sono SHOULD risoluzioni CloudWatch supportate valide, 1 o 60. Se non viene fornito un valore, viene assunto il valore predefinito 60.

    Per ulteriori informazioni sui parametri ad alta risoluzione, consulta Parametri ad alta risoluzione.

Nota

Se prevedi di creare allarmi su parametri creati utilizzando il formato dei parametri incorporati, consulta Impostazione degli allarmi sui parametri creati con il formato dei parametri incorporati per ottenere dei suggerimenti.

{ "_aws": { "CloudWatchMetrics": [ { "Metrics": [ { "Name": "Time", "Unit": "Milliseconds", "StorageResolution": 60 } ], ... } ] }, "Time": 1 }

Valori di riferimento

I valori di riferimento sono valori stringa che fanno riferimento ai membri Membri di destinazione del nodo principale. Questi riferimenti devono NOT essere confusi con i JSON puntatori descritti in RFC69 01. I valori di destinazione non possono essere nidificati.

Membri di destinazione

Le destinazioni MUST valide sono membri del nodo radice e non possono essere oggetti nidificati. Ad esempio, un valore _reference_ "A.a" MUST corrisponde al seguente membro:

{ "A.a" }

MUSTNOTCorrisponde al membro annidato:

{ "A": { "a" } }

I valori validi dei membri di destinazione dipendono da ciò che vi fa riferimento. Un obiettivo metrico MUST può essere un valore numerico o una matrice di valori numerici. I target metrici in matrice numerica MUST NOT hanno più di 100 membri. Un target di dimensione MUST ha un valore di stringa.

Esempio e schema di formato metrico incorporati JSON

Di seguito è riportato un esempio valido di Embedded Metric Format.

{ "_aws": { "Timestamp": 1574109732004, "CloudWatchMetrics": [ { "Namespace": "lambda-function-metrics", "Dimensions": [["functionVersion"]], "Metrics": [ { "Name": "time", "Unit": "Milliseconds", "StorageResolution": 60 } ] } ] }, "functionVersion": "$LATEST", "time": 100, "requestId": "989ffbf8-9ace-4817-a57c-e4dd734019ee" }

Puoi utilizzare lo schema seguente per convalidare i documenti in Embedded Metric Format.

{ "type": "object", "title": "Root Node", "required": [ "_aws" ], "properties": { "_aws": { "$id": "#/properties/_aws", "type": "object", "title": "Metadata", "required": [ "Timestamp", "CloudWatchMetrics" ], "properties": { "Timestamp": { "$id": "#/properties/_aws/properties/Timestamp", "type": "integer", "title": "The Timestamp Schema", "examples": [ 1565375354953 ] }, "CloudWatchMetrics": { "$id": "#/properties/_aws/properties/CloudWatchMetrics", "type": "array", "title": "MetricDirectives", "items": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items", "type": "object", "title": "MetricDirective", "required": [ "Namespace", "Dimensions", "Metrics" ], "properties": { "Namespace": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Namespace", "type": "string", "title": "CloudWatch Metrics Namespace", "examples": [ "MyApp" ], "pattern": "^(.*)$", "minLength": 1, "maxLength": 1024 }, "Dimensions": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Dimensions", "type": "array", "title": "The Dimensions Schema", "minItems": 1, "items": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Dimensions/items", "type": "array", "title": "DimensionSet", "minItems": 0, "maxItems": 30, "items": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Dimensions/items/items", "type": "string", "title": "DimensionReference", "examples": [ "Operation" ], "pattern": "^(.*)$", "minLength": 1, "maxLength": 250 } } }, "Metrics": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Metrics", "type": "array", "title": "MetricDefinitions", "items": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Metrics/items", "type": "object", "title": "MetricDefinition", "required": [ "Name" ], "properties": { "Name": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Metrics/items/properties/Name", "type": "string", "title": "MetricName", "examples": [ "ProcessingLatency" ], "pattern": "^(.*)$", "minLength": 1, "maxLength": 1024 }, "Unit": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Metrics/items/properties/Unit", "type": "string", "title": "MetricUnit", "examples": [ "Milliseconds" ], "pattern": "^(Seconds|Microseconds|Milliseconds|Bytes|Kilobytes|Megabytes|Gigabytes|Terabytes|Bits|Kilobits|Megabits|Gigabits|Terabits|Percent|Count|Bytes\\/Second|Kilobytes\\/Second|Megabytes\\/Second|Gigabytes\\/Second|Terabytes\\/Second|Bits\\/Second|Kilobits\\/Second|Megabits\\/Second|Gigabits\\/Second|Terabits\\/Second|Count\\/Second|None)$" }, "StorageResolution": { "$id": "#/properties/_aws/properties/CloudWatchMetrics/items/properties/Metrics/items/properties/StorageResolution", "type": "integer", "title": "StorageResolution", "examples": [ 60 ] } } } } } } } } } } }