

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

# QueryMetrics
<a name="CloudWatch-PromQL-API-QueryMetrics"></a>

L'`QueryMetrics`operazione valuta una query istantanea PromQL in un singolo momento o valuta una query in un intervallo di tempo.

Verbi HTTP validi  
`GET`, `POST`

URI validi  
`/api/v1/query`— valuta una query istantanea in un singolo momento.  
`/api/v1/query_range`— valuta un'interrogazione in un intervallo di tempo.

L'URL completo della richiesta combina l'host di CloudWatch monitoraggio per la AWS regione con il percorso operativo, ad esempio`https://monitoring.{{AWS Region}}.amazonaws.com/api/v1/query`. Per informazioni sugli endpoint, sulla firma e sulle autorizzazioni IAM richieste, consulta. [Interrogazione ProMQL](CloudWatch-PromQL-Querying.md)

## Parametri di interrogazione URL
<a name="CloudWatch-PromQL-API-QueryMetrics-Parameters"></a>

I seguenti parametri vengono passati nella stringa di query URL per `GET` le richieste o come campi del corpo codificati dal modulo per le richieste. `POST`


| Parametro | Si applica a | Description | 
| --- | --- | --- | 
| `query` | Entrambi | Obbligatorio. La stringa di espressione ProMQL da valutare. L'espressione deve selezionare una metrica per nome, `{"http.server.active_requests"}` ad esempio o. `{__name__="http.server.active_requests"}` La selezione delle serie solo tramite etichette, senza un nome di metrica, non è supportata. | 
| `time` | `/api/v1/query` | Opzionale. Timestamp di valutazione come timestamp RFC 3339 o timestamp Unix. Il valore predefinito è l'ora corrente del server. | 
| `start` | `/api/v1/query_range` | Obbligatorio. Inizio dell'intervallo di tempo, come timestamp RFC 3339 o timestamp Unix. | 
| `end` | `/api/v1/query_range` | Obbligatorio. Fine dell'intervallo di tempo, come timestamp RFC 3339 o timestamp Unix. | 
| `step` | `/api/v1/query_range` | Obbligatorio. Larghezza del passo di risoluzione delle query, in `duration` formato o come numero di secondi a virgola mobile. | 
| `limit` | Entrambi | Opzionale. Numero massimo di serie temporali univoche da restituire, da a. `1` `500` Se non si specifica`limit`, CloudWatch restituisce fino al massimo (500). Per informazioni, consulta [Limite di risultati](#CloudWatch-PromQL-API-QueryMetrics-Limits). | 

**Durata**

`duration`In un' Prometheus-compatible API è un numero, seguito immediatamente da una delle seguenti unità:
+ `ms` millisecondi
+ `s` secondi
+ `m` minuti
+ `h` ore
+ `d` giorni, supponendo che un giorno abbia sempre 24 ore
+ `w` settimane, supponendo che una settimana abbia sempre 7 giorni
+ `y` anni, supponendo che un anno abbia sempre 365 giorni

## Autorizzazioni IAM richieste
<a name="CloudWatch-PromQL-API-QueryMetrics-IAM"></a>

Per effettuare una chiamata`QueryMetrics`, l'identità chiamante deve avere entrambe le seguenti azioni IAM:
+ `cloudwatch:GetMetricData`
+ `cloudwatch:ListMetrics`

Per la mappatura completa delle azioni IAM per tutte le operazioni PromQL, consulta. [Autorizzazioni IAM per PromQL](CloudWatch-PromQL.md#CloudWatch-PromQL-IAM)

## Limite di risultati
<a name="CloudWatch-PromQL-API-QueryMetrics-Limits"></a>

Una `/api/v1/query_range` risposta singola `/api/v1/query` o può restituire fino a **500 serie temporali uniche**. Per richiedere un numero inferiore di risultati, passa il `limit` parametro con un valore compreso tra `1` a`500`. Se non lo specifichi`limit`, CloudWatch restituisce il valore massimo.

Quando le serie corrispondenti superano il limite, la risposta viene troncata e viene incluso un messaggio nel campo standard Prometheus. `warnings` Il codice di stato HTTP rimane. `200`

Per l'elenco completo dei limiti di PromQL, inclusi TPS, concorrenza e finestre di scansione 24 ore su 24, consulta. [Limiti e restrizioni di PromQL](CloudWatch-PromQL.md#CloudWatch-PromQL-Limits)

## Richiesta di esempio
<a name="CloudWatch-PromQL-API-QueryMetrics-Sample"></a>

La `POST` richiesta seguente passa l'espressione PromQL in un corpo codificato in un modulo. I caratteri speciali come`{`, e sono codificati in `}` percentuale. `"`

```
POST /api/v1/query HTTP/1.1
Host: monitoring.us-east-1.amazonaws.com
Content-Type: application/x-www-form-urlencoded
Authorization: AUTHPARAMS
X-Amz-Date: 20260605T193725Z
User-Agent: awscurl/0.36

query=sum(%7B%22http.server.active_requests%22%7D)
```

La stessa chiamata con: `awscurl`

```
awscurl --service monitoring --region us-east-1 \
    -X POST 'https://monitoring.us-east-1.amazonaws.com/api/v1/query' \
    -H 'Content-Type: application/x-www-form-urlencoded' \
    -d 'query=sum({"http.server.active_requests"})'
```

## Risposta di esempio
<a name="CloudWatch-PromQL-API-QueryMetrics-Response"></a>

Una risposta corretta utilizza la busta Prometheus JSON standard:

```
HTTP/1.1 200 OK
x-amzn-RequestId: 12345678-abcd-4442-b8c5-262b45e9b535
Content-Type: application/json

{
    "status": "success",
    "data": {
        "resultType": "vector",
        "result": [
            {
                "metric": {},
                "value": [
                    1780000000.000,
                    "42"
                ]
            }
        ]
    }
}
```

Quando il set di risultati supera il limite per chiamata, CloudWatch restituisce un array `result` troncato e include un messaggio nel campo: `warnings`

```
HTTP/1.1 200 OK
Content-Type: application/json

{
    "status": "success",
    "data": {
        "resultType": "vector",
        "result": [ ... up to 500 series ... ]
    },
    "warnings": [
        "result truncated to the maximum of 500 series; refine the query or use the limit parameter"
    ]
}
```