Supervisión de Oracle NoSQL Database Cloud Service

El servicio Oracle Cloud Infrastructure Monitoring permite supervisar de forma activa y pasiva los recursos en la nube mediante las funciones de métricas y alarmas. El servicio Monitoring utiliza métricas para supervisar los recursos y las alarmas a fin de notificarle cuando estas métricas alcanzan los disparadores especificados por las alarmas.

Una métrica es una medición relacionada con el estado, la capacidad o el rendimiento de un recurso determinado. Una alarma es una regla de disparador y una consulta. Mediante el uso de métricas, se pueden supervisar de manera pasiva los recursos en la nube. Puede configurar los valores de notificación al crear una alarma.

Las métricas se emiten al servicio Monitoring como puntos de datos raw (un par de registro de hora-valor para una métrica especificada) junto con dimensiones (un identificador de recurso proporcionado en la definición de métrica) y metadatos. El servicio Monitoring publica mensajes de alarma en destinos configurados gestionados por el servicio Notifications.

Cuando consulte una métrica, el servicio Monitoring devuelve datos agregados según los parámetros especificados. Puede especificar un intervalo (por ejemplo, las últimas 24 horas), una estadística y un intervalo. Una estadística es la función de agregación que se aplica a los puntos de datos no procesados. La función de agregación SUM es un ejemplo de una estadística. Un intervalo es la ventana de tiempo utilizada para convertir un determinado juego de puntos de datos no procesados. Por ejemplo, 5 minutos.

La consola muestra un gráfico de supervisión por métrica para los recursos seleccionados. Los datos agregados en cada gráfico reflejan la estadística y el intervalo seleccionados. Las solicitudes de API pueden filtrar por dimensión y especifican una resolución. Las respuestas de API incluyen el nombre de la métrica junto con su compartimento de origen y su espacio de nombre de métrica (indica el recurso, servicio o aplicación que emite una métrica). El espacio de nombres se proporciona en la definición de la métrica. Por ejemplo, la definición de métrica de CpuUtilization emitida por Oracle Cloud muestra el espacio de nombres de métrica de oci_computeagent como origen de la métrica.

Es accesible a través de la consola, la CLI y la API. Para obtener más información sobre los conceptos del servicio de supervisión de OCI, consulte Conceptos de supervisión.

En este artículo se incluyen los siguientes temas:

Métricas de Oracle NoSQL Database Cloud Service

Oracle NoSQL Database Cloud Service emite métricas mediante el espacio de nombres de métrica oci_nosql.

Las métricas para Oracle NoSQL Database Cloud Service incluyen las siguientes dimensiones:
  • RESOURCEID
    El OCID de la tabla NoSQL en Oracle NoSQL Database Cloud Service.

    Note:

    OCID es un ID único asignado por Oracle que se incluye como parte de la información del recurso tanto en la consola como en la API.
  • TABLENAME

    Nombre de la tabla NoSQL en Oracle NoSQL Database Cloud Service.

  • REPLICA

    Nombre de la región que recibe la actualización de tabla de otra región.

Oracle NoSQL Database Cloud Service envía métricas a Oracle Cloud Infrastructure Monitoring Service. Puede ver o crear alarmas en estas métricas mediante los SDK o la CLI de la consola de Oracle Cloud Infrastructure.

Tabla - Métricas de Oracle NoSQL Database Cloud Service

Métrica Nombre mostrado de la métrica Unidad Descripción Dimensiones
ReadUnits Unidades de lectura Unidades Número de unidades de lectura consumidas durante este período. resourceId tableName
WriteUnits Unidades de escritura Unidades Número de unidades de escritura consumidas durante este período. resourceId tableName
StorageGB Tamaño de Almacenamiento GB Cantidad máxima de almacenamiento consumida por la tabla. Puesto que esta información se genera por hora, puede ver valores obsoletos entre los puntos de refrescamiento. resourceId tableName
ReadThrottleCount Limitación de lectura Count Número de excepciones de limitación de lectura en esta tabla en el periodo de tiempo. resourceId tableName
WriteThrottleCount Limitación de escritura Count Número de excepciones de limitación de escritura en esta tabla en el periodo de tiempo. resourceId tableName
StorageThrottleCount Limitación de almacenamiento Count Número de excepciones de limitación de almacenamiento en esta tabla en el periodo de tiempo. resourceId tableName
MaxShardSizeUsagePercent Uso Tmpo Fragm Porcentaje Ratio del espacio utilizado en la partición horizontal sobre el espacio total asignado a la partición horizontal. Esto es específico de una tabla y será el valor más alto en todas las particiones horizontales. resourceId tableName
Replica Lag Demora Réplica millones de segundos Demora en la replicación de los cambios de datos de una tabla activa global de una región de remitente a una región de receptor.
resourceId
tableName
replica

Además, puede publicar métricas personalizadas según sus necesidades. Por ejemplo, puede configurar métricas para capturar la latencia de transacciones de la aplicación (tiempo empleado por transacción finalizada) y, a continuación, contabilizar esos datos en el servicio Monitoring.

Explicación de métricas de NDCS

Oracle NoSQL Database Cloud Service envía métricas a Oracle Cloud Infrastructure Monitoring Service.

Unidades de lectura:

Número de unidades de lectura consumidas durante este período. Se trata del rendimiento de hasta 1 KB de datos por segundo para una operación de lectura finalmente coherente. Si los datos superan los 1 KB, se necesitarán varias unidades de lectura para leerlos. A continuación se muestra el gráfico de métricas de unidades de lectura para una tabla. La métrica se toma cada minuto y los gráficos de métricas se trazan para un intervalo de 5 minutos por defecto.


Unidades de escritura:

Número de unidades de escritura consumidas durante este período. Es el rendimiento de hasta 1 KB de datos por segundo para una operación de escritura. Las operaciones de escritura se disparan durante las operaciones de inserción, actualización y supresión. Si los datos superan los 1 KB, se necesitarán varias unidades de lectura para escribirlos. A continuación se muestra el gráfico de métricas de unidad de escritura para una tabla. La métrica se toma cada minuto y los gráficos de métricas se trazan para un intervalo de 5 minutos por defecto.


StorageGB:

Cantidad máxima de almacenamiento consumida por la tabla. A continuación se muestra el gráfico de métricas de almacenamiento para una tabla. La métrica se toma cada minuto y los gráficos de métricas se trazan para un intervalo de 5 minutos por defecto.

Note:

Se tarda una hora después de la creación de la tabla en iniciar el seguimiento del tamaño de almacenamiento. Después de la hora inicial, las estadísticas de almacenamiento se actualizan cada 5 minutos.


Note:

La métrica de GB de almacenamiento está truncada. Por lo tanto, el uso de almacenamiento de menos de 1 GB se mostrará como 0. El gráfico comenzará a mostrar el almacenamiento cuando el uso sea superior a 1 GB.

ReadThrottleCount:

Esto proporciona un recuento del número de excepciones de limitación de lectura en la tabla determinada en el período de tiempo. Una excepción de limitación suele indicar que se ha superado el rendimiento de lectura aprovisionado. Si los obtiene con frecuencia, debe considerar aumentar las unidades de lectura en la tabla. A continuación se muestra el gráfico de métricas de recuento de regulación de lectura para una tabla. La métrica se toma cada minuto y los gráficos de métricas se trazan para un intervalo de 5 minutos por defecto.


WriteThrottleCount:

Esto proporciona un recuento del número de excepciones de limitación de escritura en la tabla determinada en el período de tiempo. Una excepción de limitación suele indicar que se ha superado el rendimiento de escritura aprovisionado. Si los obtiene con frecuencia, debe considerar aumentar las unidades de escritura en la tabla. A continuación se muestra el gráfico de métricas de recuento de limitación de escritura para una tabla. La métrica se toma cada minuto y los gráficos de métricas se trazan para un intervalo de 5 minutos por defecto.


StorageThrottleCount:

Esto proporciona un recuento del número de excepciones de limitación de almacenamiento en la tabla determinada en el período de tiempo. Una excepción de limitación suele indicar que se ha excedido la capacidad de almacenamiento aprovisionada. Si los obtiene con frecuencia, debe considerar aumentar la capacidad de almacenamiento de la tabla. A continuación se muestra el gráfico de métricas de recuento de limitación de almacenamiento para una tabla. La métrica se toma cada minuto y los gráficos de métricas se trazan para un intervalo de 5 minutos por defecto.


MaxShardSizeUsagePercent

El uso más alto de espacio en una partición horizontal para una tabla específica, como porcentaje de espacio utilizado en esa partición horizontal.

Note:

Oracle NoSQL Database Cloud Service aplica hash a las particiones horizontales para proporcionar la distribución a través de una recopilación de nodos de almacenamiento que proporcionan almacenamiento para las tablas. Aunque no puede verlas directamente, las tablas de Oracle NoSQL Database Cloud Service tienen particiones y se replican para la disponibilidad y el rendimiento. Una clave de partición horizontal 100% coincide con la clave primaria o es un subjuego de la clave primaria. Todos los registros que comparten una clave de partición horizontal se colocan en la misma ubicación para lograr la ubicación de los datos.

Cuando maxShardSizeUsagepercent alcanza 100, ya no puede realizar una operación de escritura en la tabla. Debe aumentar la capacidad de almacenamiento para realizar una escritura en la tabla. Esta métrica ayuda a determinar si existe un punto de acceso de almacenamiento para la tabla NoSQL.

Este escenario se produce debido a un desequilibrio en la forma en que los datos de la tabla se almacenan en particiones horizontales. Se puede producir un desequilibrio cuando la mayoría de los datos de la tabla se almacenan en un subjuego de particiones horizontales. El almacenamiento de una base de datos NoSQL se divide en particiones horizontales y la clave de partición horizontal forma parte de la definición de tabla. En las tablas jerárquicas, las tablas principal y secundaria comparten la misma clave de partición horizontal. Si tiene una tabla principal con tablas secundarias, todos los registros comparten la misma clave de partición horizontal. Por lo tanto, todos estos datos se almacenarán juntos. Si una tabla principal tiene menos hijos, ocupa menos espacio de almacenamiento en una sola partición horizontal. Debido a este desequilibrio, ciertas particiones horizontales pueden contener mucho más datos que otras particiones horizontales.

En un momento determinado, una partición horizontal tendrá el mayor uso de espacio para una tabla específica y el porcentaje utilizado en esa partición horizontal será MaxShardSizeUsagePercent. El gráfico de métricas maxShardSizeUsagepercent de una tabla se muestra a continuación. La métrica se toma cada minuto y los gráficos de métricas se trazan para un intervalo de 5 minutos por defecto.


Además de ver el gráfico de una métrica, tiene las siguientes opciones.


Puede obtener la vista de tabla para comprobar el valor de una métrica en un momento determinado.


Supervisión de la métrica MaxShardSizeUsagePercent

Debe supervisar periódicamente este gráfico para saber si se ha alcanzado o no maxShardSizeUsagepercent. Puede crear una alarma de forma proactiva para esta métrica.


Es decir, debe disparar una alarma cuando la métrica alcance un valor concreto, por ejemplo, el 90 %.


La alarma de OCI utiliza el servicio de notificaciones de OCI para enviar notificaciones. Normalmente, la alarma se configurará para enviar notificaciones por correo electrónico configurado. Cuando maxShardSizeUsagepercent alcanza el 90%, se envía una notificación por correo electrónico.


Consulte Gestión de alarmas y notificaciones para obtener más información.

Cuando haya un desequilibrio en la forma en que los datos de la tabla se distribuyen entre particiones horizontales, no podrá utilizar la capacidad de almacenamiento asignada a la tabla al máximo. En este escenario, maxShardSizeUsagepercent alcanza el valor de 100 incluso sin utilizar todo el almacenamiento asignado a la tabla. Ahora debe agregar más almacenamiento para continuar escribiendo en la tabla. Este escenario se puede evitar siguiendo algunas directrices al diseñar la tabla.
  • Decida la clave de partición horizontal correcta para la tabla. Los atributos con alta cardinalidad son una buena opción para las claves de partición horizontal.
  • Limite el número de tablas secundarias para evitar una posible situación de desequilibrio de almacenamiento de particiones horizontales.

Demora Réplica

Demora en la replicación de los cambios de datos (INSERT/UPDATE o DELETE) de una tabla activa global de una región de remitente a una región de receptor. La operación de escritura que se ha producido en la región del remitente de una tabla activa global se refleja en la región del receptor después de un retraso de tiempo. La información sobre la demora de tiempo se expresa como una métrica denominada Demora de réplica. La demora de réplica es una medida de la actualidad de los datos de la tabla en la región de replicación del receptor, en relación con los datos de la tabla de la región del remitente. La demora de réplica indica que la tabla de la región del receptor aún no ha recibido actualizaciones de la región del remitente que se produjeron durante el período de demora. Si no ha habido escrituras de aplicación para la tabla en la región del remitente, el servicio utiliza los mecanismos de ping para calcular una aproximación de la demora, y la estadística de demora seguirá estando disponible en la región del receptor.

Obtenga información sobre la demora de réplica:

En la región de receptor, haga clic en la tabla Global Active y vea la información de la tabla. En Recursos, haga clic en Métricas. Verá una métrica, Replica lag, que muestra la demora de replicación en milisegundos. En el siguiente gráfico de ejemplo, verá que la métrica Replica Lag se toma en la región Sureste de Canadá (Toronto), que es la región receptora. Esta tabla Global Active tiene dos réplicas de tablas regionales una en las regiones Sureste de Canadá (Montreal) y Este de EE. UU. (Ashburn). Verá que el gráfico tiene dos líneas cada una para estas réplicas de tablas regionales en Montreal y Ashburn.

En el gráfico siguiente, Intervalo indica la ventana de tiempo utilizada para trazar el gráfico. Varias opciones de intervalo disponibles son 1 minuto, 5 minutos, 1 hora y 1 día. Por defecto, la demora de réplica se supervisa cada 1 minuto y el gráfico se traza cada 5 minutos. Puede seleccionar diferentes estadísticas para la métrica Demora de réplica.

Ejemplo 1: demora de réplica con el sudeste de Canadá (Toronto) como región receptora y el sudeste de Canadá (Montreal) y el este de EE. UU. (Ashburn) como regiones remitentes.

La siguiente gráfica se representa para la estadística Media para un intervalo de 5 minutos.


En este ejemplo, Montreal y Ashburn son dos regiones remitentes y Toronto es la región receptora donde se captura la métrica. Considere el valor de Replica Lag a las 12:25 UTC para Montreal. Son 2020 milisegundos. Esto significa que la región receptora del sudeste de Canadá (Toronto) no ha recibido actualizaciones que hayan ocurrido en la región remitente del sudeste de Canadá (Montreal) en los últimos milisegundos de 2020. Asimismo, considere el valor de la demora de réplica a las 12:25 UTC para Ashburn. Son 2954 milisegundos. Esto significa que la región receptora del sudeste de Canadá (Toronto) no ha recibido actualizaciones que hayan ocurrido en la región remitente del este de Estados Unidos (Ashburn) en los últimos 2954 milisegundos.

Ejemplo 2: retraso de réplica con el este de EE. UU. (Ashburn) como región receptora y el sudeste de Canadá (Montreal) y el sudeste de Canadá de Toronto como regiones remitentes.

En este ejemplo, Montreal y Toronto son dos regiones remitentes y Ashburn es la región receptora donde se captura la métrica.


Ejemplo 3: retraso de réplica con el sudeste de Canadá (Montreal) como región receptora y el este de EE. UU. (Ashburn) y el sudeste de Canadá de Toronto como regiones remitentes.

En este ejemplo, Ashburn y Toronto son dos regiones remitentes y Montreal es la región receptora donde se captura la métrica.


Además de ver el gráfico de la demora de réplica, tiene las siguientes opciones.


Puede obtener la vista de tabla para comprobar el valor de la demora de réplica en un momento determinado.


Visualización o listado de métricas de Oracle NoSQL Database Cloud Service

Puede ver las métricas disponibles para Oracle NoSQL Database Cloud Service desde la consola. Además, puede obtener la lista de métricas disponibles para Oracle NoSQL Database Cloud Service mediante comandos de la CLI de OCI.

  1. Abra el menú de navegación y haga clic en Observación y gestión. En Supervisión, haga clic en Métricas de servicio.
  2. Seleccione el compartimento y el espacio de nombres de métricas (oci_nosql).

Desde Cloud Shell, ejecute el siguiente comando. Devuelve definiciones de métricas que coinciden con los criterios especificados en la solicitud. Se necesita un OCID de compartimento. Para obtener más información sobre las OPCIONES disponibles con el comando list, consulte List Metrics.

oci monitoring metric list --compartment-id <Compartment_OCID> --namespace oci_nosql

Por ejemplo:
oci monitoring metric list --compartment-id ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya --namespace oci_nosql
Ejemplo de respuesta:
{
  "data": [
    {
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya",
      "dimensions": {
        "resourceId": "ocid1_nosqltable_oc1_phx_amaaaaaau7x7rfyasvdkoclhgryulgzox3nvlxb2bqtlxxsrvrc4zxr6lo4a",
        "tableName": "demo"
      },
      "name": "ReadThrottleCount",
      "namespace": "oci_nosql",
      "resource-group": null
    },
    {
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya",
      "dimensions": {
        "resourceId": "ocid1_nosqltable_oc1_phx_amaaaaaau7x7rfyasvdkoclhgryulgzox3nvlxb2bqtlxxsrvrc4zxr6lo4a",
        "tableName": "demo"
      },
      "name": "ReadUnits",
      "namespace": "oci_nosql",
      "resource-group": null
    },
    {
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya",
      "dimensions": {
        "resourceId": "ocid1_nosqltable_oc1_phx_amaaaaaau7x7rfyasvdkoclhgryulgzox3nvlxb2bqtlxxsrvrc4zxr6lo4a",
        "tableName": "demo"
      },
      "name": "StorageGB",
      "namespace": "oci_nosql",
      "resource-group": null
    },
    {
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya",
      "dimensions": {
        "resourceId": "ocid1_nosqltable_oc1_phx_amaaaaaau7x7rfyasvdkoclhgryulgzox3nvlxb2bqtlxxsrvrc4zxr6lo4a",
        "tableName": "demo"
      },
      "name": "StorageThrottleCount",
      "namespace": "oci_nosql",
      "resource-group": null
    },
    {
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya",
      "dimensions": {
        "resourceId": "ocid1_nosqltable_oc1_phx_amaaaaaau7x7rfyasvdkoclhgryulgzox3nvlxb2bqtlxxsrvrc4zxr6lo4a",
        "tableName": "demo"
      },
      "name": "WriteThrottleCount",
      "namespace": "oci_nosql",
      "resource-group": null
    },
    {
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya",
      "dimensions": {
        "resourceId": "ocid1_nosqltable_oc1_phx_amaaaaaau7x7rfyasvdkoclhgryulgzox3nvlxb2bqtlxxsrvrc4zxr6lo4a",
        "tableName": "demo"
      },
      "name": "WriteUnits",
      "namespace": "oci_nosql",
      "resource-group": null
    }
  ]
}

Cómo recopilar métricas de Oracle NoSQL Database Cloud Service

Puede crear consultas de métricas para recopilar conjuntos específicos de métricas (datos agregados). Una consulta de métrica contiene la expresión de Monitoring Query Language (MQL) que se evalúa para la obtención de datos agregados. La consulta debe especificar una métrica, una estadística y un intervalo.

Puede utilizar consultas de métricas para controlar de forma activa y pasiva los recursos en la nube. Supervise de forma activa con consultas de métricas que genere de forma espontánea a petición. En la Consola, actualice un gráfico para ver datos de varias consultas. Guarda las consultas que quieras reutilizar. Supervisión pasiva con alarmas que añaden una condición o una regla de disparador a una consulta de métricas.

Sintaxis de consulta de métricas (los elementos negrita son obligatorios):
metric[interval] {dimensionname=dimensionvalue}.groupingfunction.statistic
Sintaxis de consulta de alarma de umbral (los elementos negrita son obligatorios):
metric[interval]{dimensionname=dimensionvalue}.groupingfunction.statistic alarmoperator alarmvalue

Para conocer los valores de parámetros admitidos, consulte Referencia de Monitoring Query Language (MQL).

Consultas de ejemplo

Consulta de métrica sencilla

Suma de recuentos de limitación de almacenamiento para todas las tablas de un compartimento en un intervalo de un minuto.

Número de líneas mostradas en el gráfico de métricas (consola): 1 por tabla.

StorageThrottleCount[1m].sum()
Consulta de métricas filtrada

Suma de recuentos de limitación de almacenamiento en un compartimento en un intervalo de un minuto, filtrada en una sola tabla.

El número de líneas mostradas en el gráfico de métricas (consola): 1.

StorageThrottleCount[1m]{tableName = "demoKeyVal"}.sum()
Consulta de métrica agregada

Media agregada de operaciones de lectura en un intervalo de sesenta minutos, filtrada a un compartimento, agregada para la media.

Número de líneas mostradas en el gráfico de métricas (consola): 1 por tabla.

ReadUnits[60m]{compartmentId="ocid1.compartment.oc1.phx..exampleuniqueID"}.grouping().mean()
Consulta de métrica agregada por grupo

Media agregada de recuento de limitación de lectura por unidad de lectura en un intervalo de sesenta minutos, filtrada en una sola tabla de un compartimento.

Número de líneas mostradas en el gráfico de métricas (consola): 1 por unidad de lectura.

ReadThrottleCount[60m]{tableName = "demoKeyVal"}.groupBy(ReadUnits).mean()

Creación de una consulta de métrica

Hay dos formas de crear una consulta de métrica. Puede crear una consulta mediante la consola o el comando de la CLI de OCI.

  1. Abra el menú de navegación y haga clic en Observación y gestión. En Supervisión, haga clic en Explorador de métricas.

    La página Explorador de métricas muestra un gráfico vacío con campos para crear una consulta.

  2. Rellene los campos para realizar una nueva consulta.
    • Compartimento: compartimento que contiene las tablas de Oracle NoSQL Database Cloud Service que desea supervisar. Por defecto, se selecciona el primer compartimento accesible.
    • Espacio de nombre de métrica: Oracle NoSQL Database Cloud Service emite métricas para las tablas que desea supervisar. Ejemplo: oci_nosql.
    • Grupo de recursos (opcional): grupo al que pertenece la métrica. Un grupo de recursos es una cadena personalizada con una métrica personalizada. No se aplica a las métricas de servicio.
    • Nombre de métrica: nombre de la métrica. Solo se puede especificar una métrica. Las selecciones de métricas dependen del compartimento y el espacio de nombre de métrica seleccionados. Ejemplo: ReadUnits
    • Intervalo: ventana de agregación.
    • Estado: función de agregación.
    • Métricas: filtros opcionales para reducir los datos de métrica evaluados.
      • Campos de dimensión: para las métricas de Oracle NoSQL Database Cloud Service, puede seleccionar resourceId o tableName como nombre de dimensión y par de valores de dimensión.
    • Agregar flujos de métricas: traza una sola línea en el gráfico de métricas que representa el valor combinado de todos los flujos de métricas para la estadística seleccionada.
  3. Haga clic en Actualizar gráfico.

    En el gráfico se muestran los resultados de la nueva consulta. Los valores muy pequeños o grandes se indican mediante el Sistema Internacional de Unidades (unidades SI), por ejemplo, con una "M" para "mega" (10 a la sexta potencia). Las unidades corresponden a la métrica seleccionada y no cambian por la estadística.

  4. Para ver la consulta como una expresión MQL, seleccione Modo avanzado.
    • El modo avanzado se encuentra a la derecha, debajo de la gráfica.

      Utilice el modo Avanzado para editar la consulta con sintaxis MQL para agregar resultados por grupo. La sintaxis MQL admite también valores de parámetros adicionales. Para obtener más información sobre los parámetros de consulta en los modos básico y avanzado, consulte Referencia de Monitoring Query Language (MQL).

Desde Cloud Shell, ejecute el siguiente comando. Devuelve datos agregados que coinciden con los criterios especificados en la solicitud. Se necesita un OCID de compartimento.

oci monitoring metric-data summarize-metrics-data --compartment-id<Compartment_OCID> --namespace oci_nosql --query-text [text]

--query-text es la expresión Monitoring Query Language (MQL) que se utiliza al buscar puntos de datos de métricas para agregar. La consulta debe especificar una métrica, una estadística y un intervalo. Valores admitidos para el intervalo: 1m-60m (también 1h). Opcionalmente, puede especificar dimensiones y funciones de agrupación. Funciones de agrupación soportadas: grouping(), groupBy(). Para obtener más información sobre las OPCIONES disponibles con el comando resume-metrics-data, consulte Resumen de datos de métricas. En el siguiente ejemplo, estamos creando una consulta de métrica filtrada para obtener la suma de unidades de lectura en un compartimento en un intervalo de un minuto, filtrada en una sola tabla.

Por ejemplo:
oci monitoring metric-data summarize-metrics-data --compartment-id ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya 
--namespace oci_nosql --query-text 'ReadUnits[1m]{tableName="articles"}.sum()'
Ejemplo de respuesta:
{
  "data": [
    {
      "aggregated-datapoints": [
        {
          "timestamp": "2022-02-17T11:03:00+00:00",
          "value": 0.0
        },
        {
          "timestamp": "2022-02-17T11:04:00+00:00",
          "value": 0.0
        },
        {
          "timestamp": "2022-02-17T11:05:00+00:00",
          "value": 0.0
        },

        ...
        ...
        ...

        {
          "timestamp": "2022-02-17T13:59:00+00:00",
         "value": 0.0
        },
        {
          "timestamp": "2022-02-17T14:00:00+00:00",
          "value": 0.0
        },
        {
          "timestamp": "2022-02-17T14:01:00+00:00",
          "value": 0.0
        }
      ],
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya",
      "dimensions": {
        "resourceId": "ocid1_nosqltable_oc1_phx_amaaaaaau7x7rfyav7f67yuj3t2q6rk7lp2a2obfdxa6hg2ho2ea7qabin4q",
        "tableName": "demo"
      },
      "metadata": {},
      "name": "ReadUnits",
      "namespace": "oci_nosql",
      "resolution": null,
      "resource-group": null
    }
  ]
}

Creación de alarmas

Puede crear una alarma que evalúe la consulta de alarma y envíe una notificación cuando la alarma esté en estado de activación, así como otras propiedades de la alarma. Cuando se activa, una alarma envía un mensaje de alarma al tema configurado (en Notifications), que, a continuación, envía el mensaje a todas las suscripciones del tema. Slack, Email, SMS y PagerDuty son algunos de los ejemplos de tema configurado en Notifications.

Cuando se configura, las notificaciones repetidas le recuerdan un estado de activación continuo durante el intervalo de repetición configurado. También se le notificará cuando una alarma regrese al estado OK o cuando se restablezca una alarma.

Una consulta de alarma contiene la expresión MQL (Monitoring Query Language) que se evalúa para la obtención de datos agregados. La consulta debe especificar una métrica, una estadística y un intervalo.

Hay dos formas de crear una alarma. Puede crear una consulta mediante la consola o la CLI de OCI.

  1. Abra el menú de navegación y haga clic en Observación y gestión. En Supervisión, haga clic en Definiciones de alarma.
  2. Haga clic en Crear alarma.

    Note:

    También puede crear una alarma a partir de una consulta predefinida en la página Métricas de servicio. Expanda Opciones y haga clic en Crear una alarma en esta consulta. Para obtener más información sobre las métricas de servicio, consulte Visualización o listado de métricas de Oracle NoSQL Database Cloud Service.
  3. En la página Create Alarm, en Define alarm, complete o actualice la configuración de la alarma:

    Note:

    Para alternar entre el modo básico y el modo avanzado, haga clic en Cambiar a modo avanzado o Cambiar a modo básico (a la derecha de Definir alarma).
    • Nombre de alarma: nombre fácil de recordar para la nueva alarma. Este nombre es el título de las notificaciones relacionadas con esta alarma. Evite introducir información confidencial.
    • Gravedad de la alarma: tipo de respuesta percibida necesaria cuando la alarma está en estado de activación.
    • Cuerpo de la alarma: contenido en lenguaje natural de la notificación enviada. Oracle recomienda proporcionar orientación a los operadores para resolver la condición de la alarma. Ejemplo: "Recuento alto de limitaciones de lectura".
    • Etiquetas (opcional): si tiene permiso para crear un recurso, también lo tiene para aplicar etiquetas de formato libre a ese recurso. Para aplicar una etiqueta definida, debe tener permiso para utilizar el espacio de nombres de la etiqueta. Para obtener más información sobre el etiquetado, consulte Etiquetas de recursos. Si no está seguro de si deben aplicar etiquetas, omita esta opción (puede aplicar las etiquetas posteriormente) o pregunte al administrador.
    • Descripción de la métrica: métrica que se evaluará para la condición de alarma.
      • Compartimento: compartimento que contiene las tablas de Oracle NoSQL Database Cloud Service que desea supervisar. Por defecto, se selecciona el primer compartimento accesible.
      • Espacio de nombre de métrica: Oracle NoSQL Database Cloud Service emite métricas para las tablas que desea supervisar. Ejemplo: oci_nosql.
      • Grupo de recursos (opcional): grupo al que pertenece la métrica. Un grupo de recursos es una cadena personalizada con una métrica personalizada. No se aplica a las métricas de servicio.
      • Nombre de métrica: nombre de la métrica. Solo se puede especificar una métrica. Las selecciones de métricas dependen del compartimento y el espacio de nombre de métrica seleccionados. Ejemplo: ReadUnits
      • Intervalo: ventana de agregación.
      • Estado: función de agregación.
    • Métricas: filtros opcionales para reducir los datos de métrica evaluados.
      • Campos de dimensión: para las métricas de Oracle NoSQL Database Cloud Service, puede seleccionar resourceId o tableName como nombre de dimensión y par de valores de dimensión.
    • Agregar flujos de métricas: traza una sola línea en el gráfico de métricas que representa el valor combinado de todos los flujos de métricas para la estadística seleccionada.
    • Trigger rule: condición que se debe cumplir para que se active la alarma. La condición puede especificar un umbral, como 90 % para StorageGB.
      • Operador: operador utilizado en el umbral de condición.
      • Valor: valor que se utilizará para el umbral de condición.
      • Minutos de retraso del disparador: número de minutos que se debe mantener la condición antes de que la alarma se active.
  4. Para cambiar la vista de los resultados de la consulta, haga clic en la opción adecuada situada encima de los resultados, a la derecha:
    • Mostrar tabla de datos: muestra los puntos de datos, indicando el registro de hora y los bytes de cada uno.
    • Mostrar gráfico (por defecto): traza puntos de datos en un gráfico.
  5. Configurar notificaciones: en Notificaciones, complete los campos.
    • Destinos: tema que se utilizará para las notificaciones.
    • ¿Repetir notificación?: Mientras la alarma está en estado activado, reenvía notificaciones en el intervalo especificado.
    • Frecuencia de notificación: período de tiempo que se debe esperar antes de volver a enviar la notificación.
    • Suprimir notificaciones: configure una ventana de supresión de tiempo durante la cual se suspenderán las evaluaciones y las notificaciones. Es útil para evitar notificaciones de alarma durante períodos de mantenimiento del sistema.
  6. Si desea desactivar la nueva alarma, seleccione la opción ¿Activar esta alarma?
  7. Haga clic en Guardar alarma.

Desde Cloud Shell, ejecute el siguiente comando para crear una nueva alarma en el compartimento especificado. Se necesita un OCID de compartimento.

oci monitoring alarm create --compartment-id <Compartment_OCID> --namespace oci_nosql --query-text [text] --destinations [complex type] --display-name [text] --is-enabled [boolean] --metric-compartment-id [text] --severity [text]

--query-text es la expresión Monitoring Query Language (MQL) que se utiliza al buscar puntos de datos de métricas para agregar. La consulta debe especificar una métrica, una estadística y un intervalo. Valores admitidos para el intervalo: 1m-60m (también 1h). Opcionalmente, puede especificar dimensiones y funciones de agrupación. Funciones de agrupación soportadas: grouping(), groupBy(). Para obtener más información sobre las opciones disponibles con el comando create alarm, consulte create - alarm. En el siguiente ejemplo, estamos creando una alarma con consulta de alarma cuando 90 el percentil de StorageGB es mayor que 85 en un compartimento en un intervalo de un minuto, filtrado en una sola tabla.

Ejemplo de alarma de umbral:
oci monitoring alarm create --compartment-id ocid1.compartment.oc1..aaaaaaaawrmvqjzoegxbsixp5k3b5554vlv2kxukobw3drjho3f7nf5ca3ya 
--namespace oci_nosql --query-text 'StorageGB[1m]{tableName="demo"}.groupBy(WriteUnits).percentile(0.9) > 85' 
--display-name HighStorageConsumption --metric-compartment-id demonosql --severity Critical --is-enabled true

Gestión de armas

Puede seguir estas directrices sobre cómo gestionar las alarmas.

  • Crear un conjunto de alarmas para cada métrica.
    Para cada métrica emitida por la tabla de Oracle NoSQL Database Cloud Service, cree alarmas que definan los siguientes comportamientos de recursos:
    • En riesgo: Oracle NoSQL Database Cloud Service corre el riesgo de dejar de funcionar, según lo indicado por los valores de métrica. Por ejemplo, el tamaño de almacenamiento de una tabla corre el riesgo de un uso elevado.
    • No óptimo: Oracle NoSQL Database Cloud Service tiene un rendimiento que no es óptimo, según lo indicado por los valores de las métricas. Por ejemplo, ReadUnits o Write Units tienen una latencia alta.
    • El recurso está activo o caído: no se puede acceder a Oracle NoSQL Database Cloud Service o no funciona. Por ejemplo, número alto para ReadThrottleCount o WriteThrottleCount.
  • Configurar un proceso para responder a las alarmas.
    En función de la gravedad de la alarma, puede elegir responder a las alarmas de las siguientes maneras:
    • Para las alarmas Críticas a En riesgo, puede decidir notificar al equipo de operaciones inmediatamente, ya que es necesario realizar una reparación para que las instancias regresen a niveles operativos óptimos. Configura notificaciones de alarma para el equipo responsable mediante PagerDuty y correo electrónico, y solicita una investigación y las reparaciones correspondientes antes de que las instancias vuelvan a funcionar. Configura las notificaciones de repetición cada minuto. Cuando alguien responde a las notificaciones de alarma, detiene temporalmente las notificaciones suprimiendo la alarma. Una vez que las métricas regresan a valores óptimos, elimina la supresión.
    • En el caso de las alarmas de advertencia o no óptima, puede decidir notificar al individuo o equipo adecuado que la tabla de Oracle NoSQL Database Cloud Service consume más tamaño de almacenamiento del habitual. Configura una alarma de umbral para notificar a los contactos adecuados, ya que no es necesario realizar acciones inmediatas para investigar y reducir el tamaño de almacenamiento. Configura solo las notificaciones por correo electrónico para el equipo o el desarrollador, y las configura para que se repitan cada 24 horas para no causar molestias.