aurora_wait_report
Essa função mostra a atividade de eventos de espera por um período.
Sintaxe
aurora_wait_report([time])
Argumentos
- time (opcional)
-
A hora em segundos. O padrão é 10 segundos.
Tipo de retorno
Registro SETOF com as seguintes colunas:
type_name: nome do tipo de espera
event_name: nome do evento de espera
wait: número de esperas
wait_time: tempo de espera em milissegundos
ms_per_wait: média de milissegundos pelo número de uma espera
waits_per_xact: média de esperas pelo número de uma transação
ms_per_wait: média de milissegundos pelo número de transações
Observações de uso
Essa função está disponível a partir do Aurora PostgreSQL versão 1.1 compatível com PostgreSQL 9.6.6 e versões posteriores.
Para usar essa função, você precisa primeiro criar a extensão aurora_stat_utils
do Aurora PostgreSQL, da seguinte forma:
=>
CREATE extension aurora_stat_utils;
CREATE EXTENSION
Para obter mais informações sobre as versões de extensão do Aurora PostgreSQL disponíveis, consulte Versões de extensão do Amazon Aurora PostgreSQL em Notas de lançamento do Aurora PostgreSQL.
Essa função calcula os eventos de espera no nível da instância comparando dois snapshots de dados estatísticos da função aurora_stat_system_waits() e das visualizações estatísticas pg_stat_database do PostgreSQL.
Para obter mais informações sobre aurora_stat_system_waits()
e pg_stat_database
, consulte Coletor de estatísticas
Quando executada, essa função tira um snapshot inicial, aguarda o número de segundos especificado e, depois, tira um segundo snapshot. A função compara os dois snapshots e retorna a diferença. Essa diferença representa a atividade da instância para esse intervalo de tempo.
Na instância de gravador, a função também exibe o número de transações confirmadas e TPS (transações por segundo). Essa função retorna informações no nível da instância e inclui todos os bancos de dados na instância.
Exemplos
Este exemplo mostra como criar a extensão aurora_stat_utils para poder usar a função aurora_wait_report.
=>
CREATE extension aurora_stat_utils;
CREATE EXTENSION
Este exemplo mostra como conferir o relatório de espera por 10 segundos.
=>
SELECT * FROM aurora_wait_report();
NOTICE: committed 34 transactions in 10 seconds (tps 3) type_name | event_name | waits | wait_time | ms_per_wait | waits_per_xact | ms_per_xact -----------+-------------------+-------+-----------+-------------+----------------+------------- Client | ClientRead | 26 | 30003.00 | 1153.961 | 0.76 | 882.441 Activity | WalWriterMain | 50 | 10051.32 | 201.026 | 1.47 | 295.627 Timeout | PgSleep | 1 | 10049.52 | 10049.516 | 0.03 | 295.574 Activity | BgWriterHibernate | 1 | 10048.15 | 10048.153 | 0.03 | 295.534 Activity | AutoVacuumMain | 18 | 9941.66 | 552.314 | 0.53 | 292.402 Activity | BgWriterMain | 1 | 201.09 | 201.085 | 0.03 | 5.914 IO | XactSync | 15 | 25.34 | 1.690 | 0.44 | 0.745 IO | RelationMapRead | 12 | 0.54 | 0.045 | 0.35 | 0.016 IO | WALWrite | 84 | 0.21 | 0.002 | 2.47 | 0.006 IO | DataFileExtend | 1 | 0.02 | 0.018 | 0.03 | 0.001
Este exemplo mostra como conferir o relatório de espera por 60 segundos.
=>
SELECT * FROM aurora_wait_report(60);
NOTICE: committed 1544 transactions in 60 seconds (tps 25) type_name | event_name | waits | wait_time | ms_per_wait | waits_per_xact | ms_per_xact -----------+------------------------+---------+-----------+-------------+----------------+------------- Lock | transactionid | 6422 | 477000.53 | 74.276 | 4.16 | 308.938 Client | ClientRead | 8265 | 270752.99 | 32.759 | 5.35 | 175.358 Activity | CheckpointerMain | 1 | 60100.25 | 60100.246 | 0.00 | 38.925 Timeout | PgSleep | 1 | 60098.49 | 60098.493 | 0.00 | 38.924 Activity | WalWriterMain | 296 | 60010.99 | 202.740 | 0.19 | 38.867 Activity | AutoVacuumMain | 107 | 59827.84 | 559.139 | 0.07 | 38.749 Activity | BgWriterMain | 290 | 58821.83 | 202.834 | 0.19 | 38.097 IO | XactSync | 1295 | 55220.13 | 42.641 | 0.84 | 35.764 IO | WALWrite | 6602259 | 47810.94 | 0.007 | 4276.07 | 30.966 Lock | tuple | 473 | 29880.67 | 63.173 | 0.31 | 19.353 LWLock | buffer_mapping | 142 | 3540.13 | 24.930 | 0.09 | 2.293 Activity | BgWriterHibernate | 290 | 1124.15 | 3.876 | 0.19 | 0.728 IO | BufFileRead | 7615 | 618.45 | 0.081 | 4.93 | 0.401 LWLock | buffer_content | 73 | 345.93 | 4.739 | 0.05 | 0.224 LWLock | lock_manager | 62 | 191.44 | 3.088 | 0.04 | 0.124 IO | RelationMapRead | 72 | 5.16 | 0.072 | 0.05 | 0.003 LWLock | ProcArrayLock | 1 | 2.01 | 2.008 | 0.00 | 0.001 IO | ControlFileWriteUpdate | 2 | 0.03 | 0.013 | 0.00 | 0.000 IO | DataFileExtend | 1 | 0.02 | 0.018 | 0.00 | 0.000 IO | ControlFileSyncUpdate | 1 | 0.00 | 0.000 | 0.00 | 0.000