Compartir a través de


Métricas de supervisión en Azure Database for PostgreSQL: Servidor flexible

SE APLICA A: Azure Database for PostgreSQL con servidor flexible

La supervisión de los datos sobre los servidores le permite solucionar problemas y optimizar la carga de trabajo. El servidor flexible de Azure Database for PostgreSQL proporciona diversas opciones de supervisión para ofrecer información detallada sobre cómo se comporta su servidor.

Métricas

El servidor flexible de Azure Database for PostgreSQL proporciona diversas métricas que proporcionan información sobre el comportamiento de los recursos que admiten el servidor flexible de Azure Database for PostgreSQL. Cada métrica se emite con intervalos de 1 minuto y tiene un historial de hasta 93 días. Puede configurar alertas en las métricas. Otras opciones incluyen la configuración de acciones automatizadas, la realización de análisis avanzados y el archivado del historial. Para más información, consulte Información general sobre las métricas en Microsoft Azure.

Nota:

Aunque las métricas se almacenan durante 93 días, solo puede consultar (en el icono Métricas) un máximo de 30 días de datos en cualquier gráfico único. Si ve un gráfico en blanco o el gráfico solo muestra parte de los datos de métricas, compruebe que la diferencia entre las fechas de inicio y finalización en el selector de tiempo no supere el intervalo de 30 días. Después de que haya seleccionado un intervalo de 30 días, puede desplazarse de forma lateral por el gráfico para ver el período de retención completo.

Métricas predeterminadas

Las métricas siguientes están disponibles para una instancia de servidor flexible de Azure Database for PostgreSQL:

Nombre para mostrar Identificador de la métrica Unidad Descripción Valor predeterminado habilitado
Conexiones activas active_connections Count Número total de conexiones al servidor de bases de datos, incluidos todos los estados de conexión, como activos, inactivos y otros, como se muestra en la vista pg_stat_activity. Esta ilustración representa la suma total de conexiones entre todos los estados, sin distinguir entre estados específicos. Para obtener un análisis detallado sobre un estado específico, como las conexiones activas, consulte la métrica "Sesiones por estado".
Almacenamiento de copia de seguridad utilizado backup_storage_used Bytes Cantidad de almacenamiento de copia de seguridad utilizado. Esta métrica representa la suma del almacenamiento consumido por todas las copias de seguridad completas, las copias de seguridad diferenciales y las copias de seguridad de registro retenidas en función del periodo de retención de copias de seguridad establecido para el servidor. El servicio administra la frecuencia de las copias de seguridad. En el caso del almacenamiento con redundancia geográfica, el uso del almacenamiento de copia de seguridad es dos veces el uso del almacenamiento con redundancia local.
Conexiones con errores connections_failed Count Número de conexiones con errores.
Conexiones correctas connections_succeeded Count Número de conexiones correctas.
Créditos de CPU consumidos cpu_credits_consumed Count Número de créditos utilizados por el servidor flexible. Se aplica al nivel Ampliable.
Créditos de CPU restantes cpu_credits_remaining Count Número de créditos disponibles para la ráfaga. Se aplica al nivel Ampliable.
Porcentaje de CPU cpu_percent Percent Porcentaje de CPU en uso.
Tamaño de la base de datos database_size_bytes Bytes Tamaño de la base de datos en bytes.
Profundidad de la cola de discos disk_queue_depth Count Número de operaciones de E/S pendiente en el disco de datos.
E/S iops Count Número de operaciones de E/S en disco por segundo.
Máximo de identificadores de transacción usados maximum_used_transactionIDs Count Número máximo de id. de transacciones en uso.
Porcentaje de memoria memory_percent Percent Porcentaje de memoria en uso.
Red interna network_bytes_egress Bytes Suma total del tráfico de red saliente en el servidor durante un período seleccionado. Esta métrica incluye el tráfico saliente desde la base de datos y desde el servidor flexible de Azure Database for PostgreSQL, entre ellas características como la supervisión, los registros, el archivo WAL, la replicación, etc.
Red interna network_bytes_ingress Bytes Suma total del tráfico de red entrante en el servidor durante un período seleccionado. Esta métrica incluye el tráfico saliente desde la base de datos y desde el servidor flexible de Azure Database for PostgreSQL, que incluye características como la supervisión, los registros, el archivo WAL, la replicación, etc.
IOPS de lectura read_iops Count Número de operaciones de lectura de E/S de disco de datos por segundo.
Rendimiento de lectura read_throughput Bytes Bytes leídos por segundo desde el disco.
Almacenamiento libre storage_free Bytes Cantidad de espacio de almacenamiento disponible.
Porcentaje de almacenamiento storage_percent Porcentaje Porcentaje de espacio de almacenamiento utilizado. El almacenamiento que usa el servicio puede incluir archivos de base de datos, registros de transacciones y registros de servidor.
Almacenamiento usado storage_used Bytes Cantidad de espacio de almacenamiento utilizado. El almacenamiento que usa el servicio puede incluir los archivos de base de datos, registros de transacciones y los registros de servidor.
Almacenamiento del registro de transacciones usado txlogs_storage_used Bytes Cantidad de espacio de almacenamiento que se usa por los registros de transacciones.
Rendimiento de escritura write_throughput Bytes Bytes escritos en disco por segundo.
IOPS de escritura write_iops Count Número de operaciones de escritura de E/S de disco de datos por segundo.

Métricas mejoradas

Puede usar las métricas mejoradas para el servidor flexible de Azure Database for PostgreSQL, para obtener supervisión y alertas detalladas en las bases de datos. Puede configurar alertas en las métricas. Algunas métricas mejoradas incluyen un parámetro Dimension que puede usar para dividir y filtrar los datos de métricas mediante una dimensión, como el nombre o el estado de la base de datos.

Habilitación de métricas mejoradas

  • La mayoría de estas nuevas métricas están deshabilitadas de forma predeterminada. Sin embargo, hay algunas excepciones, que están habilitadas de forma predeterminada. La columna situada en el extremo derecho en las tablas siguientes indica si cada métrica está habilitada de forma predeterminada o no.
  • Para habilitar las métricas que no están habilitadas de forma predeterminada, establezca el parámetro de servidor metrics.collector_database_activity en ON. Este parámetro es dinámico y no requiere reiniciar una instancia.
Lista de métricas mejoradas

Puede elegir entre las siguientes categorías de métricas mejoradas:

  • Actividad
  • Base de datos
  • Replicación lógica
  • Replicación
  • Saturación
  • Tráfico
Actividad
Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Sesiones por estado sessions_by_state Count Sesiones por estado, como se muestra en la vista pg_stat_activity. Clasifica los back-end de cliente en varios estados, como activo o inactivo. State No
Sesiones por WaitEventType sessions_by_wait_event_type Count Sesiones por tipo de evento que espera el back-end de cliente. Tipo de evento de espera No
Back-end más antiguo oldest_backend_time_sec Segundos Antigüedad en segundos del back-end más antiguo (independientemente del estado). No procede No
Consulta más antigua longest_query_time_sec Segundos Antigüedad en segundos de la consulta más larga que se está ejecutando actualmente. No procede No
Transacción más antigua longest_transaction_time_sec Segundos Antigüedad en segundos de la transacción más larga (incluidas las transacciones inactivas). No procede No
Xmin más antiguo oldest_backend_xmin Count Valor real del xmin más antiguo. Si xmin no aumenta, indica que hay algunas transacciones de ejecución prolongada que potencialmente pueden evitar que se eliminen las tuplas inactivas. No procede No
Edad xmin más antigua oldest_backend_xmin_age Count Antigüedad en unidades del xmin más antiguo. Indica cuántas transacciones pasaron desde la más antigua xmin. No procede No
Base de datos
Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Backends numbackends Count Número de back-end que están conectados a esta base de datos. DatabaseName No
Paradas deadlocks Count Número de interbloqueos detectados en esta base de datos. DatabaseName No
Vista de bloques de disco blks_hit Count Número de veces que ya se encontraron bloques de disco en la memoria caché del búfer, por lo que no era necesaria una lectura. DatabaseName No
Lectura de bloques de disco blks_read Count Número de bloques de disco leídos en esta base de datos. DatabaseName No
Archivos temporales temp_files Count Número de archivos temporales que se crearon por consultas en esta base de datos. DatabaseName No
Tamaño de archivos temporales temp_bytes Bytes Cantidad total de datos escritos en archivos temporales por consultas de esta base de datos. DatabaseName No
Total de transacciones xact_total Count Número de transacciones totales ejecutadas en esta base de datos. DatabaseName No
Transacciones confirmadas xact_commit Count Número de transacciones de esta base de datos confirmadas. DatabaseName No
Transacciones por segundo (versión preliminar) tps Count Número de transacciones ejecutadas en un segundo. DatabaseName No
Transacciones revertidas xact_rollback Count Número de transacciones de esta base de datos que se han revertido. DatabaseName No
Tuplas eliminadas tup_deleted Count Número de filas eliminadas por consultas de esta base de datos. DatabaseName No
Tuplas capturadas tup_fetched Count Número de filas capturadas por consultas en esta base de datos. DatabaseName No
Tuplas insertadas tup_inserted Count Número de filas insertadas por consultas en esta base de datos. DatabaseName No
Tuplas devueltas tup_returned Count Número de filas devueltas por consultas en esta base de datos. DatabaseName No
Tuplas actualizadas tup_updated Count Número de filas actualizadas por consultas en esta base de datos. DatabaseName No
Replicación lógica
Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Retraso máximo de replicación lógica logical_replication_delay_in_bytes Bytes Retraso máximo en todas las ranuras de replicación lógica. No procede
Replicación
Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Retraso máximo de replicación física physical_replication_delay_in_bytes Bytes Retraso máximo en todas las ranuras de replicación física asincrónica. No procede
Retraso de réplica de lectura physical_replication_delay_in_seconds Segundos Retraso de la réplica de lectura en segundos. No procede
Saturación
Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Porcentaje de ancho de banda de disco consumido disk_bandwidth_consumed_percentage Percent Porcentaje de ancho de banda del disco de datos consumido por minuto. No procede
Porcentaje de consumo de IOPS de disco disk_iops_consumed_percentage Percent Porcentaje de operaciones de E/S del disco de datos consumido por minuto. No procede
Tráfico
Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Conexiones máximas ^ max_connections Count Número de conexiones máximas. No procede
Trabajo pendiente de conexión TCP (versión preliminar) tcp_connection_backlog Count Número de conexiones pendientes que superan la capacidad del servidor PpostgreSQL. Aplicable a 8 núcleos virtuales y versiones posteriores. State No
Uso de cpu del proceso postmaster (versión preliminar) postmaster_process_cpu_usage_percent Porcentaje Uso de CPU del proceso postmaster. No es aplicable a la SKU ampliable. No procede No

^ Conexiones máximas representa el valor configurado para el parámetro de servidor max_connections. Esta métrica se agrupa cada 30 minutos.

Consideraciones al usar las métricas mejoradas
  • Las métricas mejoradas que usan la dimensión DatabaseName tienen un límite de 50 bases de datos.
  • En la SKU ampliable, el límite es de 10 bases de datos para las métricas que usan la dimensión DatabaseName.
  • El límite de dimensiones DatabaseName se aplica en la columna de identificador de base de datos (datid) de la vista del sistema de pg_stat_database, que refleja el orden de creación de la base de datos.
  • El DatabaseName de la dimensión de métricas no distingue mayúsculas de minúsculas. Esto significa que después de consultar la vista pg_stat_database, filtrar las filas en las que datname es template1 o template0, ordenar por datid y limitar las filas devueltas a las primeras 50 (o 10 en caso de SKU ampliable ), las métricas de los nombres de base de datos de ese conjunto de resultados, que son iguales excepto las mayúsculas y minúsculas (por ejemplo, contoso_database y Contoso_database), se combinarán y podrían no mostrar datos precisos.

Métricas de vaciado automático

Las métricas de vaciado automático se pueden usar para supervisar y ajustar su rendimiento para Azure Database for PostgreSQL: servidor flexible. Cada métrica se emite en un intervalo de 30 minutos y tiene hasta 93 días de retención. Puede crear alertas para métricas específicas, así como dividir y filtrar los datos de métricas mediante la dimensión DatabaseName.

Habilitación de métricas de vaciado automático

  • Las métricas de vaciado automático están deshabilitadas de forma predeterminada.
  • Para habilitar estas métricas, establezca el parámetro del servidor metrics.autovacuum_diagnostics en ON.
  • Este parámetro es dinámico, por lo que reiniciar una instancia no es necesario.

Lista de métricas de vaciado automático

Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Analizar tablas de usuario de contadores analyze_count_user_tables Count Número de veces que se han analizado manualmente las tablas de solo usuario en esta base de datos. DatabaseName No
Analizar automáticamente tablas de usuario de contadores autoanalyze_count_user_tables Count Número de veces que el demonio de vaciado automático ha analizado las tablas de solo usuario en esta base de datos. DatabaseName No
Vaciar automáticamente tablas de usuario de contadores autovacuum_count_user_tables Count Número de veces que el demonio de vaciado automático ha vaciado las tablas de solo usuario en esta base de datos. DatabaseName No
Porcentaje de sobredimensionamiento (versión preliminar) bloat_percent Porcentaje Porcentaje de sobredimensionamiento estimado de las tablas solo de usuario. DatabaseName No
Filas inactivas estimadas de tablas de usuario n_dead_tup_user_tables Count Número estimado de filas inactivas para las tablas de solo usuario de esta base de datos. DatabaseName No
Filas activas estimadas de tablas de usuario n_live_tup_user_tables Count Número estimado de filas activas para las tablas de solo usuario de esta base de datos. DatabaseName No
Modificaciones estimadas de tablas de usuario n_mod_since_analyze_user_tables Count Número estimado de filas modificadas desde que se analizaron por última vez las tablas de solo usuario. DatabaseName No
Tablas de usuario analizadas tables_analyzed_user_tables Count Número de tablas de solo usuario que se han analizado en esta base de datos. DatabaseName No
Tablas de usuario analizadas automáticamente tables_autoanalyzed_user_tables Count Número de tablas de solo usuario que el demonio de vaciado automático ha analizado en esta base de datos. DatabaseName No
Tablas de usuario vaciadas automáticamente tables_autovacuumed_user_tables Count Número de tablas de solo usuario que el demonio de vaciado automático ha vaciado en esta base de datos. DatabaseName No
Contador de tablas de usuario tables_counter_user_tables Count Número de tablas solo de usuario en esta base de datos. DatabaseName No
Tablas de usuario vaciadas tables_vacuumed_user_tables Count Número de tablas de solo usuario que se han vaciado en esta base de datos. DatabaseName No
Contador de vaciado de tablas de usuario vacuum_count_user_tables Count Número de veces que las tablas de solo usuario se han vaciado manualmente en esta base de datos (sin contar VACUUM FULL). DatabaseName No

Consideraciones al usar métricas de vaciado automático

  • Las métricas de vaciado automático que usan la dimensión DatabaseName tienen un límite de 30 bases de datos.
  • En la SKU ampliable, el límite es de 10 bases de datos para las métricas que usan la dimensión DatabaseName.
  • El límite de dimensiones DatabaseName se aplica en la columna OID, que refleja el orden de creación de la base de datos.

Métricas de PgBouncer

Puede usar las métricas de PgBouncer para supervisar el rendimiento del proceso de PgBouncer, incluyendo los detalles de las conexiones activas, las conexiones inactivas, el total de conexiones agrupadas y el número de grupos de conexiones. Cada métrica se emite con intervalos de 1 minuto y tiene un historial de hasta 93 días. Los clientes pueden configurar alertas en las métricas y también acceder a las nuevas dimensiones de métricas para dividir y filtrar datos de métricas por el nombre de la base de datos.

Habilitación de métricas de PgBouncer

  • Para supervisar las métricas de PgBouncer, asegúrese de que la característica de pgbouncer está habilitada mediante el parámetro de servidor pgbouncer.enabled y el parámetro de métricas metrics.pgbouncer_diagnostics está habilitado.
  • Estos parámetros son dinámicos y no requieren que se reinicie la instancia.
  • Las métricas de PgBouncer están deshabilitadas de forma predeterminada.

Lista de métricas de PgBouncer

Nombre para mostrar Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
Conexiones de cliente activas client_connections_active Count Conexiones de clientes asociados a una conexión de servidor flexible de Azure Database for PostgreSQL. DatabaseName No
Conexiones de clientes en espera client_connections_waiting Count Conexiones de clientes que están esperando una conexión de un servidor flexible de Azure Database for PostgreSQL que les dé servicio. DatabaseName No
Conexiones de servidor activo server_connections_active Count Conexiones al servidor flexible de Azure Database for PostgreSQL que están en uso por una conexión cliente. DatabaseName No
Conexiones de servidor inactivas server_connections_idle Count Conexiones al servidor flexible de Azure Database for PostgreSQL que están inactivas y listas para atender una nueva conexión cliente. DatabaseName No
Total de conexiones agrupadas total_pooled_connections Count Número actual de conexiones agrupadas. DatabaseName No
Número de grupos de conexiones num_pools Count Número total de grupos de conexión. DatabaseName No

Consideraciones al usar métricas de PgBouncer

  • Las métricas de PgBouncer que usan la dimensión DatabaseName tienen un límite de 30 bases de datos.
  • En la SKU Ampliable, el límite es de 10 bases de datos que tienen la dimensión DatabaseName.
  • El límite de dimensiones DatabaseName se aplica en la columna OID, que refleja el orden de creación de la base de datos.

Métrica de disponibilidad de la base de datos

Is-db-alive es una métrica de disponibilidad del servidor de bases de datos para el servidor flexible de Azure Database for PostgreSQL, que devuelve [1 for available] y [0 for not-available]. Cada métrica se emite con una frecuencia de 1 minuto y tiene hasta 93 días de retención. Los clientes pueden configurar alertas en la métrica.

Display Name (Nombre para mostrar) Identificador de la métrica Unidad Descripción Dimensión Valor predeterminado habilitado
La base de datos está activa is_db_alive Count Indica si la base de datos está activa o no. N/a

Consideraciones al usar las métricas de disponibilidad de base de datos

  • La agregación de esta métrica con MAX() permitirá a los clientes determinar si el servidor ha estado activo o inactivo en el último minuto.
  • Los clientes tienen la opción de agregar más estas métricas con cualquier frecuencia deseada (5 minutos, 10 minutos, 30 minutos, etc.) para adaptarse a sus requisitos de alertas y evitar cualquier falso positivo.
  • Otras agregaciones posibles son AVG() y MIN().

Filtrar y dividir en métricas de dimensión

En las tablas anteriores, algunas métricas tienen dimensiones como DatabaseName o State. Puede usar el filtrado y la división de las métricas que tienen dimensiones. Estas características ponen de manifiesto el modo en que varios segmentos de la métrica (o valores de dimensión) influyen en el valor total de la métrica. Puede usarlos para identificar posibles valores atípicos.

  • Filtrado: permite elegir qué valores de dimensión se van a incluir en el gráfico. Por ejemplo, es posible que quiera mostrar las conexiones inactivas al trazar la métrica Sessions-by-State. El filtro se establece para Inactivo en la dimensión Estado.
  • División: use la división para controlar si el gráfico va a mostrar líneas independientes por cada valor de una dimensión, o bien si, por el contrario, agrega los valores en una sola línea. Por ejemplo, puede ver una línea para una métrica Sessions-by-State en todas las sesiones. Puede ver líneas independientes para cada sesión agrupadas por el valor Estado. Aplique la división en la dimensión Estado para ver líneas separadas.

En el ejemplo siguiente, se muestra la división por la dimensión Estado y el filtrado en valores de estado específicos:

Captura de pantalla que muestra un ejemplo de división y filtrado de métricas y dimensiones.

Para obtener más información sobre cómo configurar gráficos para métricas dimensionales, consulte Ejemplos de gráficos de métricas.

Visualización de las métricas

Hay varias opciones para visualizar las métricas de Azure Monitor.

Componente Descripción Entrenamiento o configuración necesarios
Página de información general La mayoría de los servicios de Azure tienen una página de información general en Azure Portal en la que se incluye una sección Supervisión donde se muestran los gráficos recientes de las métricas críticas. Su finalidad es que los propietarios de servicios individuales evalúen rápidamente el rendimiento del recurso. Esta página se basa en las métricas de la plataforma que se recopilan automáticamente. No se requiere ninguna configuración.
Explorador de métricas Puede usar el Explorador de métricas para trabajar de forma interactiva con los datos de las métricas y crear las alertas correspondientes. Necesita un entrenamiento mínimo para usar el Explorador de métricas, pero también debe estar familiarizado con las métricas que quiere analizar. - Una vez configurada la recopilación de datos, no se requiere ninguna otra configuración.
- Las métricas de plataforma de los recursos de Azure estarán disponibles automáticamente.
- Las métricas de invitado de las máquinas virtuales están disponibles después de implementar un agente de Azure Monitor en la máquina virtual.
- Las métricas de la aplicación están disponibles después de configurar Application Insights.
Grafana Puede usar Grafana para visualizar y alertar sobre las métricas. Todas las versiones de Grafana incluyen el complemento de origen de datos de Azure Monitor para visualizar las métricas y los registros de Azure Monitor. Para familiarizarse con los paneles de Grafana, se requiere algo de entrenamiento. Sin embargo, para simplificar el proceso, puede descargar un panel de supervisión de Grafana de servidor flexible de Azure Database for PostgreSQL creado previamente, lo que permite una supervisión sencilla de todas las instancias de servidor flexible de Azure Database for PostgreSQL dentro de la organización.

Registros

Además de las métricas, puede usar el servidor flexible de Azure Database for PostgreSQL para configurar y acceder a los registros estándar de Azure Database for PostgreSQL. Para obtener más información, consulte Conceptos de registro.

Visualización de registros

Componente Descripción Entrenamiento o configuración necesarios
Log Analytics Log Analytics le permite crear tanto consultas de registro (para trabajar interactivamente con los datos de este), como alertas de consulta de registros. Se requiere cierto entrenamiento para familiarizarse con el lenguaje de consulta, aunque puede usar consultas precompiladas para los requisitos comunes.

Registros del servidor

La característica Registros de servidor del servidor flexible de Azure Database for PostgreSQL permite a los usuarios habilitar, configurar y descargar registros de servidor, que son esenciales para solucionar problemas y realizar análisis históricos de la actividad del servidor. De manera predeterminada, la característica de registros de servidor en el servidor flexible de Azure Database for PostgreSQL está deshabilitada. Sin embargo, después de habilitar la característica, el servidor flexible de Azure Database for PostgreSQL comienza a capturar eventos del tipo de registro seleccionado y los escribe en un archivo. A continuación, puede usar Azure Portal o la CLI de Azure para descargar los archivos para ayudar con los esfuerzos de solución de problemas.

Retención de registros de servidor

Los registros del servidor tienen una retención mínima de 1 días y la retención máxima es de 7 días. Si se supera este límite, los registros más antiguos se eliminan para dejar espacio para los nuevos. Para obtener más información sobre cómo habilitar y administrar registros de servidor, consulte la guía sobre la configuración de registros de servidor.

Pasos siguientes