

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

# aurora\_replica\_status
<a name="aurora_replica_status"></a>

Visualizza lo stato di tutti i nodi del lettore Aurora PostgreSQL. 

## Sintassi
<a name="aurora_replica_status-syntax"></a>

 

```
aurora_replica_status()
```

## Arguments (Argomenti)
<a name="aurora_replica_status-arguments"></a>

Nessuno

## Tipo restituito
<a name="aurora_replica_status-return-type"></a>

Record SETOF avente le seguenti colonne:
+ `server_id`: ID dell’istanza database (identificatore). 
+ `session_id`: un identificatore univoco per la sessione corrente, restituito per l’istanza primaria e le istanze di lettura nel modo seguente:
  + Per l'istanza primaria, il `session_id` è sempre ``MASTER_SESSION_ID’`.
  + Per le istanze di lettura, il `session_id` è sempre l'`UUID` (universally unique identifier, identificatore univoco universale) dell'istanza di lettura.
+ `durable_lsn`: numero di sequenza di log (log sequence number, LSN) archiviato nello storage.
  + Per il volume primario, l'LSN (VDL) durevole del primario attualmente in uso.
  + Per tutti i volumi secondari, il VDL del primario a cui è stato applicato correttamente il secondario.
**Nota**  
Il numero di sequenza di log (LSN) è un numero sequenziale univoco che identifica un record nel log delle transazioni del database. Gli LSN sono ordinati in modo tale che quelli più grandi rappresentino una transizione successiva.
+ `highest_lsn_rcvd`: l'LSN più alto (più recente) che l'istanza database ha ricevuto dall'istanza database di scrittura.
+ `current_read_lsn`: l'LSN della snapshot più recente applicato a tutte le operazioni di lettura. 
+ `cur_replay_latency_in_usec`: tempo previsto in millisecondi per riprodurre il log sul secondario. 
+ `active_txns`: numero di transazioni attualmente attive.
+ `is_current`: non utilizzato.
+ `last_transport_error`: codice di errore dell'ultima replica.
+ `last_error_timestamp`: timestamp dell'ultimo errore di replica.
+ `last_update_timestamp`: timestamp dell'ultimo aggiornamento allo stato della replica. Da Aurora PostgreSQL versione 13.9, il valore `last_update_timestamp` per l'istanza database a cui si è connessi è impostato su `NULL`.
+ `feedback_xmin`: feedback\_xmin della replica in standby a caldo. L'ID della transazione attiva più basso (meno recente) utilizzato dall'istanza database.
+ `feedback_epoch`: l'epoca utilizzata dall'istanza database quando genera informazioni standby a caldo.
+ `replica_lag_in_msec`: ritardo dell’istanza di lettura rispetto a quella di scrittura misurato in millisecondi.
+ `log_stream_speed_in_kib_per_second`: la velocità effettiva del flusso di log in kilobyte al secondo.
+ `log_buffer_sequence_number`: il numero di sequenza del buffer di registro.
+ `oldest_read_view_trx_id`: non utilizzato.
+ `oldest_read_view_lsn`: l'LSN più vecchio utilizzato dall'istanza database per le operazioni di lettura dallo storage.
+ `pending_read_ios`: le letture di pagina in sospeso sulla replica. 
+ `read_ios`: il numero totale di letture di pagina sulla replica.
+ `iops`: non utilizzato.
+ `cpu`: utilizzo della CPU di Aurora Storage Daemon per ogni nodo del cluster. Per informazioni sull'utilizzo della CPU da parte dell'istanza, consulta [Instance-level metriche per Amazon Aurora](Aurora.AuroraMonitoring.Metrics.md#Aurora.AuroraMySQL.Monitoring.Metrics.instances).

## Note per l'utilizzo
<a name="aurora_replica_status-usage-notes"></a>

Tutte le versioni di Aurora PostgreSQL attualmente disponibili supportano questa funzione. La funzione `aurora_replica_status` restituisce i valori del gestore di stato della replica di un cluster database Aurora PostgreSQL. Utilizza questa funzione per ottenere informazioni sullo stato della replica sul cluster database Aurora PostgreSQL, inclusi i parametri per tutte le istanze database nel cluster database Aurora. Ad esempio, puoi eseguire le operazioni seguenti:
+ **Ottenere informazioni sul tipo di istanza (di scrittura, di lettura) nel cluster database Aurora PostgreSQL**. Per ottenere queste informazioni, controlla i valori contenuti nelle colonne seguenti: 
  + `server_id`: contiene il nome dell'istanza specificato durante la sua creazione. In alcuni casi, ad esempio per l'istanza primaria (di scrittura), il nome viene generato automaticamente aggiungendo *-instance-1* al nome creato per il cluster database Aurora PostgreSQL.
  + `session_id`: il campo `session_id` indica se l'istanza è di lettura o di scrittura. Per un'istanza di scrittura, `session_id` è sempre impostato su `"MASTER_SESSION_ID"`. Per un'istanza di lettura, `session_id` è impostato sull'`UUID` del lettore specifico.
+ **Diagnostica dei problemi comuni correlati alle repliche, come il ritardo di replica**. Il ritardo di replica indica il ritardo in millisecondi della cache di pagina di un'istanza di lettura rispetto a quella dell'istanza di scrittura. Questo ritardo si verifica perché i cluster Aurora utilizzano la replica asincrona, come descritto in [Replica con Amazon Aurora](Aurora.Replication.md). Nella colonna `replica_lag_in_msec` sono mostrati i risultati restituiti da questa funzione. Il ritardo può verificarsi anche quando una query viene annullata a causa di conflitti con il ripristino su un server in standby. È possibile verificare se il ritardo di replica è causato o meno da questo conflitto controllando `pg_stat_database_conflicts()`. Per ulteriori informazioni, consulta [Raccolta di statistiche](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-CONFLICTS-VIEW) nella *Documentazione di PostgreSQL*. Per ulteriori informazioni sulla disponibilità elevata e la replica, consulta [Domande frequenti su Amazon Aurora](https://aws.amazon.com/rds/aurora/faqs/#High_Availability_and_Replication). 

  Amazon CloudWatch memorizza `replica_lag_in_msec` i risultati nel tempo, come `AuroraReplicaLag` metrica. Per informazioni sull'utilizzo delle CloudWatch metriche per Aurora, consulta [Monitoraggio dei parametri di Amazon Aurora con Amazon CloudWatch](monitoring-cloudwatch.md) 

Per ulteriori informazioni sulla risoluzione dei problemi relativi alla lettura e al riavvio di Aurora, consulta [Perché la mia replica Amazon Aurora è in ritardo e si è riavviata?](https://aws.amazon.com/premiumsupport/knowledge-center/aurora-read-replica-restart/) nel [Centro Supporto AWS](https://console.aws.amazon.com/support/home#/). 

## Esempi
<a name="aurora_replica_status-examples"></a>

L'esempio seguente mostra come ottenere lo stato di replica di tutte le istanze in un cluster database Aurora PostgreSQL:

```
=> SELECT * 
FROM aurora_replica_status();
```

L'esempio seguente mostra l'istanza di lettura nel cluster database `docs-lab-apg-main` Aurora PostgreSQL: 

```
=> SELECT server_id, 
    CASE 
        WHEN 'MASTER_SESSION_ID' = session_id THEN 'writer'
        ELSE 'reader' 
    END AS instance_role
FROM aurora_replica_status() 
WHERE session_id = 'MASTER_SESSION_ID';
        server_id       | instance_role
------------------------+---------------
 db-119-001-instance-01 | writer
```

Nell'esempio seguente sono elencate tutte le istanze di lettura in un cluster:

```
=> SELECT server_id, 
    CASE 
        WHEN 'MASTER_SESSION_ID' = session_id THEN 'writer'
        ELSE 'reader' 
    END AS instance_role
FROM aurora_replica_status() 
WHERE session_id <> 'MASTER_SESSION_ID';
        server_id       | instance_role
------------------------+---------------
db-119-001-instance-02  | reader
db-119-001-instance-03  | reader
db-119-001-instance-04  | reader
db-119-001-instance-05  | reader
(4 rows)
```

Nell'esempio seguente sono elencate tutte le istanze, il ritardo di ognuna di esse rispetto all'istanza di scrittura e quanto tempo è trascorso dall'ultimo aggiornamento: 

```
=> SELECT server_id, 
    CASE 
        WHEN 'MASTER_SESSION_ID' = session_id THEN 'writer'
        ELSE 'reader' 
    END AS instance_role,
    replica_lag_in_msec AS replica_lag_ms,
    round(extract (epoch FROM (SELECT age(clock_timestamp(), last_update_timestamp))) * 1000) AS last_update_age_ms
FROM aurora_replica_status()
ORDER BY replica_lag_in_msec NULLS FIRST;
       server_id        | instance_role | replica_lag_ms | last_update_age_ms
------------------------+---------------+----------------+--------------------
 db-124-001-instance-03 | writer        |         [NULL] |               1756
 db-124-001-instance-01 | reader        |             13 |               1756
 db-124-001-instance-02 | reader        |             13 |               1756
(3 rows)
```