
# Metriche

Queuety fornisce un API di metriche che calcola statistiche per gestore dalla tabella dei log. Usatelo per monitoraggio, dashboard e avvisi.

## Statistiche dei gestori

Ottenete le metriche di tutti i gestori in un intervallo di tempo:

```php
$stats = Queuety::metrics()->handler_stats( 60 ); // last 60 minutes
```

Ogni elemento dell'array restituito contiene:

| Campo | Descrizione |
|---|---|
| `handler` | Nome del gestore |
| `completed` | Numero di esecuzioni riuscite |
| `failed` | Numero di tentativi non riusciti (gli eventi di log `failed` e `buried` fanno sì che un job possa essere conteggiato più volte) |
| `avg_ms` | Durata media dell'esecuzione in millisecondi |
| `p95_ms` | Durata dell'esecuzione al 95º percentile |
| `error_rate` | Rapporto di fallimento da 0 a 1: `failed / (completed + failed)`, arrotondato a quattro decimali |

## CLI

```bash
# Metrics for the last 60 minutes (default)
wp queuety metrics

# Metrics for the last 24 hours
wp queuety metrics --minutes=1440

# JSON output
wp queuety metrics --format=json
```

Output di esempio:

```
+------------------+-----------+--------+--------+--------+------------+
| handler          | completed | failed | avg_ms | p95_ms | error_rate |
+------------------+-----------+--------+--------+--------+------------+
| send_email       | 142       | 3      | 45     | 120    | 0.0207     |
| process_image    | 87        | 0      | 230    | 450    | 0          |
| call_openai      | 31        | 5      | 2100   | 4500   | 0.1389     |
+------------------+-----------+--------+--------+--------+------------+
```

## Casi d'uso

- **Widget per dashboard.** Mostrate throughput e tassi di errore nell'area di amministrazione WordPress.
- **Controlli di integrità.** Inviate un avviso quando il tasso di errore di un gestore supera una soglia.
- **Ottimizzazione delle prestazioni.** Individuate i gestori lenti usando `p95_ms` e ottimizzateli.
- **Pianificazione della capacità.** Monitorate l'andamento del throughput per dimensionare il pool di worker.
