

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

# riferimento alle funzioni rds\_tools
<a name="PostgreSQL_rds_tools-functions-reference"></a>

L'`rds_tools`estensione fornisce una serie di funzioni di utilità per la gestione e il monitoraggio dell'istanza DB. Utilizzando queste funzioni, è possibile diagnosticare problemi di replica, vuoto e configurazione direttamente da SQL, senza strumenti di monitoraggio separati. Queste funzioni si aggiungono alle funzioni PostgreSQL standard. Per ulteriori informazioni sulle funzioni standard di PostgreSQL, [vedere Funzioni e operatori](https://www.postgresql.org/docs/current/functions.html) nella documentazione di PostgreSQL.

Questa sezione descrive le `rds_tools` funzioni disponibili su . La descrizione di ogni funzione indica la versione dell'`rds_tools`estensione in cui la funzione è diventata disponibile.

Per creare l'estensione, esegui il comando seguente.

```
postgres=> CREATE EXTENSION rds_tools;
CREATE EXTENSION
```

**Topics**
+ [rds\_tools.role\_password\_encryption\_type](#rds_tools.role_password_encryption_type)
+ [rds\_tools.postgres\_get\_av\_diag](#rds_tools.postgres_get_av_diag)

## rds\_tools.role\_password\_encryption\_type
<a name="rds_tools.role_password_encryption_type"></a>

Restituisce il metodo di crittografia della password utilizzato per ogni ruolo del database. Questa funzione di restituzione dei set esclude i ruoli di RDS-protected sistema dall'output. Disponibile a partire dalla versione 1.0 dell'`rds_tools`estensione.

Per un esempio di utilizzo di questa funzione per rivedere la crittografia delle password prima di migrare gli utenti del database su SCRAM, vedere. [Utilizzo delle crittografia password SCRAM per PostgreSQL](PostgreSQL_Password_Encryption_configuration.md)

### Prototipo di funzione
<a name="rds_tools.role_password_encryption_type-prototype"></a>

```
rds_tools.role_password_encryption_type()
```

### Arguments (Argomenti)
<a name="rds_tools.role_password_encryption_type-arguments"></a>

Nessuna.

### Output
<a name="rds_tools.role_password_encryption_type-output"></a>
+ `rolname`— Il nome del ruolo del database.
+ `encryption_type`— Il metodo di crittografia della password utilizzato, ad esempio `md5` o`scram-sha-256`.

### Esempio di utilizzo
<a name="rds_tools.role_password_encryption_type-example"></a>

```
=> SELECT * FROM rds_tools.role_password_encryption_type();
    rolname    | encryption_type
---------------+-----------------
 postgres      | md5
 app_user      | md5
 readonly_user | scram-sha-256
(3 rows)
```

## rds\_tools.postgres\_get\_av\_diag
<a name="rds_tools.postgres_get_av_diag"></a>

Recupera informazioni diagnostiche sui processi di autovacuum che si bloccano o sono in ritardo, insieme a suggerimenti per risolvere ogni problema. Esegui questa funzione di restituzione dei set nel database con l'ID di transazione più vecchio per ottenere risultati accurati. Per ulteriori informazioni, consulta [Identificare e risolvere i vacuobloccanti aggressivi.](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.md)

Disponibile a partire dalla versione di `rds_tools` estensione 1.9.

### Prototipo di funzione
<a name="rds_tools.postgres_get_av_diag-prototype"></a>

```
rds_tools.postgres_get_av_diag()
```

### Arguments (Argomenti)
<a name="rds_tools.postgres_get_av_diag-arguments"></a>

Nessuna.

### Output
<a name="rds_tools.postgres_get_av_diag-output"></a>
+ `blocker`— La categoria di attività del database che blocca il vuoto. Il valore è uno dei seguenti:
  + Istruzione attiva
  + Inattivo in transazione
  + Transazione preparata
  + Slot di replica logica
  + Replica di lettura con slot di replica fisica
  + Replica di lettura con replica in streaming
  + Tabelle temporanee
+ `database`— Il nome del database in cui si svolge l'attività di blocco.
+ `blocker_identifier`— L'identificatore dell'attività di blocco. Il valore dipende dal tipo di blocco:
  + Per un'istruzione attiva o una sessione inattiva durante una transazione, l'ID del processo con la relativa istruzione SQL.
  + Per una transazione preparata, il nome della transazione preparata.
  + Per una replica di lettura, l'indirizzo IP della replica.
  + Per uno slot di replica, il nome dello slot di replica.
+ `wait_event`— L'evento di attesa della sessione di blocco, ove applicabile.
+ `autovacuum_lagging_by`— Il numero di transazioni effettuate da Autovacuum è in ritardo rispetto alla categoria.
+ `suggestion`— Un suggerimento per risolvere il blocco, incluso il nome del database, l'ID del processo e l'azione da intraprendere.
+ `suggested_action`— Una serie di azioni da intraprendere per risolvere il blocco.

### Esempio di utilizzo
<a name="rds_tools.postgres_get_av_diag-example"></a>

```
=> SELECT *
   FROM rds_tools.postgres_get_av_diag()
   ORDER BY autovacuum_lagging_by DESC;

blocker               | Active statement
database              | my_database
blocker_identifier    | SELECT pg_sleep(20000);
wait_event            | Timeout:PgSleep
autovacuum_lagging_by | 568600871
suggestion            | Connect to database "my_database", review carefully, and consider terminating the process using suggested_action.
suggested_action      | {"SELECT pg_terminate_backend(29621);"}
```