

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à.

# Pubblica metriche personalizzate (PutMetricData /EMF)
<a name="publishingMetrics"></a>

Puoi pubblicare le tue metriche personalizzate CloudWatch utilizzando l'`PutMetricData`API o il. AWS CLI Questo approccio utilizza CloudWatch namespace, nomi delle metriche e dimensioni.

**Nota**  
Per le nuove implementazioni, consigliamo di OpenTelemetry utilizzarlo per pubblicare metriche personalizzate. Per ulteriori informazioni, consulta [Invia metriche utilizzando OpenTelemetry](metrics-otel-send.md).

**Topics**
+ [High-resolution metriche](#high-resolution-metrics)
+ [Utilizzo delle dimensioni](#usingDimensions)
+ [Pubblicazione di singoli punti dati](#publishingDataPoints)
+ [Pubblicazione di set di statistiche](#publishingDataPoints1)
+ [Pubblicazione del valore zero](#publishingZero)
+ [Interrompi i parametri di pubblicazione](#CloudWatch-Stop-Publishing-Metrics)

## High-resolution metriche
<a name="high-resolution-metrics"></a>

Ogni parametro appartiene a una delle seguenti categorie:
+ Risoluzione standard, con dati aventi una granularità di un minuto
+ Alta risoluzione, con dati aventi una granularità di un secondo

Le metriche prodotte dai AWS servizi sono a risoluzione standard per impostazione predefinita. Quando pubblichi un parametro personalizzato, puoi definirlo sia come risoluzione standard che come alta risoluzione. Quando pubblichi una metrica ad alta risoluzione, la CloudWatch memorizza con una risoluzione di 1 secondo e puoi leggerla e recuperarla con un periodo di 1 secondo, 5 secondi, 10 secondi, 30 secondi o qualsiasi multiplo di 60 secondi.

High-resolution le metriche possono darti una visione più immediata dell'attività inferiore ai minuti della tua applicazione. Tieni presente che ogni chiamata `PutMetricData` per un parametro personalizzato viene addebitata, quindi frequenti chiamate a `PutMetricData` su un parametro ad alta risoluzione potrebbero portare a costi più elevati. Per ulteriori informazioni sui CloudWatch prezzi, consulta [ Amazon CloudWatch Pricing. ](https://aws.amazon.com/cloudwatch/pricing/)

Se imposti un allarme su un parametro ad alta risoluzione, puoi specificare un allarme ad alta risoluzione con un periodo di 10 secondi o 30 secondi, oppure puoi impostare un allarme regolare con un periodo di qualsiasi multiplo di più di 60 secondi. Viene addebitato un costo maggiore per gli allarmi ad alta risoluzione con un periodo di 10 o 30 secondi.

## Utilizzo delle dimensioni
<a name="usingDimensions"></a>

Nei parametri personalizzati, il parametro `--dimensions` è comune. Una dimensione chiarisce ulteriormente le caratteristiche del parametro e i dati archiviati. Puoi avere un massimo di 30 dimensioni assegnate a un parametro, ognuna delle quali è definita da una coppia formata da nome e valore.

Il modo in cui si specifica una dimensione è diverso quando utilizzi comandi differenti. Con [ put-metric-data](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/put-metric-data.html), specifichi ogni dimensione come {{MyName}} =, e con [ get-metric-statistics o put-metric-alarm usi ](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/get-metric-statistics.html) il formato{{MyValue}},. [https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/put-metric-alarm.html](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/put-metric-alarm.html) `Name=` {{MyName}} `Value=` {{MyValue}} Ad esempio, il comando seguente pubblica una metrica con 2 dimensioni denominate e. `Buffers` `InstanceId` `InstanceType`

```
aws cloudwatch put-metric-data --metric-name Buffers --namespace MyNameSpace --unit Bytes --value 231434333 --dimensions InstanceId=1-23456789,InstanceType=m1.small
```

Questo comando recupera le statistiche per quello stesso parametro. Separa con virgole le parti di Nome e Valore di una singola dimensione, ma utilizza uno spazio tra una dimensione e quella successiva se disponi di più dimensioni.

```
aws cloudwatch get-metric-statistics --metric-name Buffers --namespace MyNameSpace --dimensions Name=InstanceId,Value=1-23456789 Name=InstanceType,Value=m1.small --start-time 2016-10-15T04:00:00Z --end-time 2016-10-19T07:00:00Z --statistics Average --period 60
```

Se un unico parametro include più dimensioni, è necessario specificare un valore per ogni dimensione definita quando utilizzi [get-metric-statistics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/get-metric-statistics.html). Ad esempio, il parametro Amazon S3 `BucketSizeBytes` include le dimensioni `BucketName` e `StorageType`, perciò è necessario specificare entrambe le dimensioni con [get-metric-statistics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/get-metric-statistics.html).

```
aws cloudwatch get-metric-statistics --metric-name BucketSizeBytes --start-time 2017-01-23T14:23:00Z --end-time 2017-01-26T19:30:00Z --period 3600 --namespace AWS/S3 --statistics Maximum --dimensions Name=BucketName,Value={{amzn-s3-demo-bucket}} Name=StorageType,Value=StandardStorage --output table
```

Per visualizzare le dimensioni definite per un parametro, è disponibile il comando [list-metrics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/list-metrics.html).

## Pubblicazione di singoli punti dati
<a name="publishingDataPoints"></a>

Per pubblicare un punto dati singolo per un parametro nuovo o esistente, utilizza il comando [put-metric-data](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/put-metric-data.html) con un valore e un timestamp. Ad esempio, ciascuna delle seguenti operazioni pubblica un punto dati.

```
aws cloudwatch put-metric-data --metric-name {{PageViewCount}} --namespace {{MyService}} --value 2 --timestamp {{2016-10-20T12:00:00.000Z}}
aws cloudwatch put-metric-data --metric-name {{PageViewCount}} --namespace {{MyService}} --value 4 --timestamp {{2016-10-20T12:00:01.000Z}}
aws cloudwatch put-metric-data --metric-name {{PageViewCount}} --namespace {{MyService}} --value 5 --timestamp {{2016-10-20T12:00:02.000Z}}
```

Se chiami questo comando con un nuovo nome di metrica, CloudWatch crea una metrica per te. Altrimenti, CloudWatch associa i dati alla metrica esistente specificata.

**Nota**  
Quando crei un parametro, possono essere necessari fino a 2 minuti prima di poter recuperare le statistiche del nuovo parametro tramite il comando [get-metric-statistics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/get-metric-statistics.html). Tuttavia, possono essere necessari fino a 15 minuti prima che il nuovo parametro venga visualizzato nell'elenco di quelli recuperati tramite il comando [list-metrics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/list-metrics.html).

Sebbene sia possibile pubblicare punti dati con timestamp granulari pari a un millesimo di secondo, CloudWatch aggrega i dati con una granularità minima di 1 secondo. CloudWatch registra la media (somma di tutti gli elementi divisa per il numero di elementi) dei valori ricevuti per ogni periodo, nonché il numero di campioni, il valore massimo e il valore minimo per lo stesso periodo di tempo. Ad esempio, la `PageViewCount` metrica degli esempi precedenti contiene 3 punti dati con timestamp distanti pochi secondi. Se il periodo è impostato su 1 minuto, CloudWatch aggrega i 3 punti dati perché hanno tutti timestamp entro un periodo di 1 minuto. 

Puoi utilizzare il comando **get-metric-statistics** per recuperare le statistiche in base ai punti dati pubblicati.

```
aws cloudwatch get-metric-statistics --namespace {{MyService}} --metric-name {{PageViewCount}} \
--statistics "Sum" "Maximum" "Minimum" "Average" "SampleCount" \
--start-time {{2016-10-20T12:00:00.000Z}} --end-time {{2016-10-20T12:05:00.000Z}} --period 60
```

Di seguito è riportato un output di esempio.

```
{
    "Datapoints": [
        {
            "SampleCount": 3.0,
            "Timestamp": "2016-10-20T12:00:00Z",
            "Average": 3.6666666666666665,
            "Maximum": 5.0,
            "Minimum": 2.0,
            "Sum": 11.0,
            "Unit": "None"
        }
    ],
    "Label": "PageViewCount"
}
```

## Pubblicazione di set di statistiche
<a name="publishingDataPoints1"></a>

Puoi aggregare i tuoi dati prima di pubblicarli su. CloudWatch Quando sono presenti più punti dati al minuto, l'aggregazione dei dati riduce al minimo il numero di chiamate a **put-metric-data**. Ad esempio, anziché chiamare **put-metric-data** più volte 3 punti dati che si trovano entro 3 secondi l'uno dall'altro, puoi aggregare i dati in un set di statistiche che pubblichi con una chiamata, utilizzando il parametro. `--statistic-values`

```
aws cloudwatch put-metric-data --metric-name PageViewCount --namespace {{MyService}} --statistic-values Sum=11,Minimum=2,Maximum=5,SampleCount=3 --timestamp {{2016-10-14T12:00:00.000Z}}
```

CloudWatch necessita di punti dati grezzi per calcolare i percentili. Se pubblichi dati utilizzando un set di statistiche, invece, non potrai recuperarne le relative statistiche dei percentili, a meno che non si verifichi una delle seguenti condizioni:
+ Il `SampleCount` del set di statistiche è 1
+ I valori `Minimum` e `Maximum` del set di statistiche sono uguali

## Pubblicazione del valore zero
<a name="publishingZero"></a>

 Quando i tuoi dati sono più sporadici e sono presenti periodi senza dati associati, puoi scegliere di pubblicare il valore zero (`0`) per tale periodo oppure nessun valore. Se utilizzi chiamate periodiche a `PutMetricData` per monitorare lo stato delle applicazioni, potresti voler pubblicare zero invece di nessun valore. Ad esempio, puoi impostare un allarme CloudWatch per ricevere una notifica se l'applicazione non pubblica parametri ogni cinque minuti. Desideri che tale applicazione pubblichi valori zero per i periodi senza dati associati. 

 Puoi inoltre pubblicare valori zero se intendi monitorare il numero totale di punti di dati o se desideri che le statistiche di tipo minima e media includano i punti di dati con il valore 0. 

## Interrompi i parametri di pubblicazione
<a name="CloudWatch-Stop-Publishing-Metrics"></a>

Per interrompere la pubblicazione di metriche personalizzate in CloudWatch, modifica il codice dell'applicazione o del servizio in modo da non utilizzarlo più. ** PutMetricData ** CloudWatch non estrae le metriche dalle applicazioni, riceve solo ciò che le viene inviato, quindi per interrompere la pubblicazione delle metriche devi interromperle alla fonte.