Monitorización de tecnologías mediante el uso de la sonda RESTmon

Ahora puede monitorizar los datos de la tecnología o del dispositivo mediante las API de REST. Mediante las plantillas proporcionadas por CA UIM se puede cargar el esquema, que indica la calidad del servicio y la lógica de agregación con los puntos finales de REST de http/https. Puede definir la métrica, las alarmas y puede rellenar los cuadros de mandos de CABI para los dispositivos monitorizados. Desde la página Configuración, se puede descargar la plantilla predeterminada y puede crear su propio esquema o puede utilizar uno de los siguientes esquemas listos para su uso:
uimpga-ga
HID_RESTMON_PROBES
Ahora puede monitorizar los datos de la tecnología o del dispositivo mediante las API de REST. Mediante las plantillas proporcionadas por CA UIM se puede cargar el esquema, que indica la calidad del servicio y la lógica de agregación con los puntos finales de REST de http/https. Puede definir la métrica, las alarmas y puede rellenar los cuadros de mandos de CABI para los dispositivos monitorizados. Desde la página
Configuración
, se puede descargar la plantilla predeterminada y puede crear su propio esquema o puede utilizar uno de los siguientes esquemas listos para su uso:
Contenido
Historial de revisiones
En esta sección aparece el historial de revisiones de esta sonda.
: Es posible que los casos de soporte no sean visibles para todos los clientes.
Versión
Description
Estado
Fecha
1.38
Novedades:
  • Se han agregado esquemas para la monitorización de MarkLogic y Logstash.
GA
Abril de 2019
1.20
Versión inicial de la sonda.
GA
Octubre de 2018
Requisito previo
  • Descargue e instale la sonda 1.38 de RESTMon desde el sitio de Soporte de CA.
  • Asegúrese de que CA UIM 9.0.2 o posterior está instalado en su entorno.
  • Asegúrese de que la consola del operador está disponible en su entorno.
  • Las plantillas de MCS están disponibles.
  • Java 8 instalado en los robots.
Configuración de los clientes de REST
Configure y cargue el archivo JSON para cada cliente de REST que se desea monitorizar.
Paso 1: Inicio de sesión en UMP y descarga del esquema
  1. Inicie sesión en UMP y vaya a
    Acciones, Consola del operador
    .
  2. Haga clic en
    Configuración
    ,
    RESTMon
    .
  3. Descargue la plantilla del esquema en formato JSON.
Paso 2: Configuración de los detalles de la tecnología de monitorización
Defina las siguientes secciones para personalizar el esquema.
Nombre
Cada esquema definido debe tener un nombre asociado a este. Después de descargar el esquema de JSON, sustituya el nombre
localservice
por el nombre de la tecnología, por ejemplo,
elasticsearch
.
"elasticsearch": {
calculated_methods
En la sección calculated_methods, defina un método que convierta los valores de la calidad del servicio que devuelve JSON en las unidades correctas. Por ejemplo, si desea convertir los valores de kilobytes (kB) en gigabytes (GB), consulte este ejemplo:
"calculated_methods": {
"convertKBtoGB": "/ 1048576;"
},
Uso de calculated_methods en la definición de la métrica
Por ejemplo, si JSON en el ejemplo siguiente devuelve un valor de 27992641617920 bytes y el cálculo de $convertKBtoGB se define como "/1048576", cuando se combina con qos_value, da lugar al envío del siguiente código al motor de JavaScript (27992641617920 / 1048576) que devuelve un valor final de 26695863,36 GB que se envían después como el valor de la calidad del servicio en GB.
"calculated_methods": [
{
"convertBytestoGB": "/ 1073741824"
}
],
"metrics": [
{
"calculation": "$value $convertBytestoGB",
"xml_ns": "",
"attributes": {
"uim": {
"defaultpublishing": "true",
"qos_name": "QOS_ES_NS_IND_STORE_SIZE",
"qos_desc": "Store Size",
"qos_abbr": "GB",
"metric_type": "4.13.4.2.1.1:80",
"qos_unit": "GB",
"qos_value": "$.[*].input_per_sec",
"source": "$['nodes'][*]['host']",
"target": "$['nodes'][*]['host']"
},
"value": "$['nodes'][*]['indices']['store']['size_in_bytes']",
"url": "nodestats",
"group": "Node Stats Indices"
},
]
urls
En la sección de direcciones URL, defina la lista de puntos finales de REST que se utilizan para recopilar información de métricas y del nodo.
Defina los parámetros siguientes en la sección:
Atributos
Description
xml_ns
(Opcional) Espacio de nombres XML para utilizar al analizar la información del nodo recuperada de la dirección url de referencia
src
(Opcional) ID de una dirección url del mismo nivel que contiene información de la instancia necesaria para esta dirección url. Se utiliza con el campo var.
var
(Opcional) Define la directiva JPath o XPath utilizadas con el valor src para analizar la información devuelta por el punto final src y la sustituye con los tókenes $var en el campo url. Por ejemplo, en las instancias en las que una url src devuelve una lista de hosts, nodos o volúmenes donde el valor de cada instancia tiene un objetivo distinto para obtener información más detallada.
id
Nombre único para la información de url.
url
Punto final de REST que proporciona información del nodo y de la métrica.
Para cada dirección URL que se desea monitorizar, cree una entrada y defina el valor en el parámetro
url
.
Verifique que todas las direcciones URL son válidas y devuelven un resultado cuando se accede a partir de un explorador.
Sección de dirección URL de muestra
"urls": [
{
"xml_ns": "",
"src": "",
"var": "",
"id": "clusterhealthindices",
"url": "/_cluster/health?level=indices"
},
{
"src": "",
"xml_ns": "",
"var": "",
"id": "nodestats",
"url": "/_nodes/stats"
},
{
"src": "",
"xml_ns": "",
"var": "",
"id": "clusterstats",
"url": "/_cluster/stats"
},
{
"src": "",
"xml_ns": "",
"var": "",
"id": "indexstats",
"url": "/_all/_stats"
}
],
Definición
En la sección de definición, defina los detalles relacionados con la conexión y la autenticación.
Defina los parámetros siguientes en la sección:
Sección
Atributos
Valor predeterminado
Description
resource_category
QOS_APPLICATION
(Opcional) La categoría definida por el usuario que se utiliza en la publicación de métricas.
defaults
port
80/443
Puerto predeterminado que se utilizará para los puntos finales en función del tipo especificado (http/s).
interval
60
La frecuencia con la que los puntos finales de REST se sondean en segundos.
httptimeout
30000
El tiempo de espera de una respuesta desde un punto final de REST en milisegundos.
auth
ninguno
Mecanismo de autenticación predeterminado para utilizar. El mecanismo de autenticación compatible es: basic; asic; digest; ntlm; token; bearer; urltoken; Outh2
xml_ns
(Opcional) Espacio de nombres XML para utilizar al analizar la información del nodo recuperada de la dirección url de referencia.
Nombre
<nombre del esquema>
Nombre predeterminado que se utilizará para la instancia del perfil, que normalmente es el nombre del esquema.
El nombre del nodo raíz del esquema es el mismo que el atributo del nombre en la sección de definición del esquema ($.name = $.{name}.definition.name)
Tipo
http
Tipo de conexiones de REST. Las opciones válidas son http y https.
(opcional) addedProfileFields
Defina los atributos de esta sección si desea que aparezcan los campos personalizados (con o sin valores predeterminados) cuando se crea un perfil. Por ejemplo, si el requisito es definir los siguientes campos: Autoridad (con el valor predeterminado), Ámbito (con el valor predeterminado), ID del cliente, Secreto del cliente, ID del secreto del cliente e ID de proyecto, puede definir los atributos de la siguiente manera:
"addedProfileFields": [{
"name": "authority",
"value": "https://accounts.google.com/o/oauth2/auth",
"type": "text",
"label": "Authority"
},
{
"name": "scope",
"value": "https://www.googleapis.com/auth/cloud-platform https://www.googleapis.com/auth/cloud-platform.read-only https://www.googleapis.com/auth/cloudplatformprojects https://www.googleapis.com/auth/cloudplatformprojects.readonly",
"type": "text",
"label": "Scope"
},
{
"name": "client_id",
"value": "",
"type": "text",
"label": "Client ID"
},
{
"name": "client_secret",
"value": "",
"type": "password",
"label": "Client Secret"
},
{
"name": "client_secret_id",
"value": "",
"type": "text",
"label": "Client Sercret ID"
},
{
"name": "project_id",
"value": "",
"type": "text",
"label": "Project ID"
}],
Estos campos aparecen en la interfaz de usuario cuando se crea el perfil desde la ficha
Monitorización
.
Sección de definición de muestra
"definition": {
"node": "",
"resource_category": null,
"defaults": {
"port": 9200,
"interval": 60,
"httptimeout": 30000
},
"auth": "basic",
"xml_ns": "",
"name": "elasticsearch",
"type": "http"
},
Métrica
En esta sección se define la métrica que se desea recopilar.
Defina los parámetros siguientes en la sección:
Sección
Atributos
Valor predeterminado
Description
xml_ns
(Opcional) Espacio de nombres XML para utilizar al analizar la información del nodo recuperada de la dirección url de referencia
cálculo
(Opcional) Cálculo para aplicar al valor sin formato para producir la métrica. Este parámetro puede hacer referencia a un calculated_method.
atributos > uim
Campos específicos de UIM que se utilizan al publicar el valor de la métrica.
qos_name
Nombre de la calidad del servicio, como QOS_HTTP_STATUS. Puede definir sus propios nombres de la calidad del servicio que desee publicar.
qos_desc
Una descripción sobre la calidad del servicio definida en el atributo qos_name, por ejemplo, el estado de la respuesta HTTP.
qos_abbr
El nombre abreviado de la calidad del servicio que se utiliza en la GUI, como el estado. Para obtener más información sobre las abreviaturas.
metric_type
Tipo de métrica, por ejemplo, 2. Se utiliza con el tipo de elemento de configuración al generar una instancia de métrica de UIM para producir un valor de tipo como 2.2.2:2. De forma predeterminada, el tipo de elemento de configuración disponible es 9.1.1. Para obtener más información acerca del tipo de elemento de configuración y de la métrica, consulte Declaración de inventarios, métricas y configuración masiva y consulte el archivo SUPPORTED_CI_METRIC_TYPES.XLSX disponible en la interfaz gráfica de usuario. Para agregar un tipo de elemento de configuración personalizado, póngase en contacto con Soporte de CA.
qos_unit
La unidad de medida de la calidad del servicio, como el estado. Para obtener más información sobre las unidades de la calidad del servicio compatibles, consulte la hoja de cálculo disponible en la interfaz gráfica de usuario.
source
El dispositivo desde el que se ha recopilado el valor de la métrica.
target
El dispositivo con el que se ha recopilado el valor de la métrica.
defaultpublishing
true
(Opcional) Se utiliza para generar plantillas de MCS en UIM.
conversion
Convierte el valor de la cadena que devuelve el esquema en el valor numérico antes de guardarlo en la base de datos. Por ejemplo, puede definir los valores de conversión: parcialmente con errores: 0, correcto: 1, degradado: 2, erróneo: 3, predeterminado: -999. En este caso, si el esquema devuelve la cadena Correcto, se convierte en el valor numérico 1 y se guarda en la base de datos, que indica el estado del sistema cuando se recopila la métrica.
value
JPath o XPath se utilizan para analizar los datos de respuesta del punto final de REST para la métrica.
url
El ID que hace referencia a las entradas en la sección de direcciones URL para el punto final de REST.
grupo
(Opcional) La etiqueta del grupo definida por el usuario.
Sección de métricas de muestra
"metrics": [
{
"calculation": "",
"xml_ns": "",
"attributes": {
"uim": {
"qos_name": "QOS_HTTP_STATUS",
"qos_desc": "HTTP response status",
"qos_abbr": "State",
"metric_type": "2.2.2.2:2",
"qos_unit": "State",
"source": "%hostname",
"target": "%urlid",
"defaultpublishing": "true"
},
"value": "%httpstatus",
"url": "%urlid",
"group": "Connections"
},
calculated_metrics
En esta sección se definen los KPI que provienen de los datos sin formato para producir métricas para recopilar.
Atributo
Description
values
Matriz de nombre/entradas de valor que definen los KPI derivados.
Nombre
Nombre único para la métrica que se utiliza al publicar el valor.
value
JPath o XPath se utilizan para analizar los datos de respuesta del punto final de REST para la métrica. Este parámetro se utiliza en la expresión de campo de cálculo para obtener el valor del indicador clave de rendimiento.
Sección calculated_metrics de muestra
"calculated_metrics": [
{
"calculation": "$fetch_total / ($fetch_time_in_millis/1000)",
"xml_ns": "",
"values": [
{
"name": "$fetch_total",
"value": "$['nodes'][*]['indices']['search']['fetch_total']"
},
{
"name": "$fetch_time_in_millis",
"value": "$['nodes'][*]['indices']['search']['fetch_time_in_millis']"
}
],
"attributes": {
"uim": {
"defaultpublishing": "true",
"qos_name": "QOS_ES_NS_IND_SEARCH_AVERAGE_FETCH_TIME",
"qos_desc": "Search Average Fetch Time",
"qos_abbr": "s",
"metric_type": "4.13.4.2.1.1:53",
"qos_unit": "s",
"source": "%hostname",
"target": "$['nodes'][*]['host']"
},
}
},
"url": "nodestats",
"group": "Node Stats Indices"
}
Paso 3: Búsqueda y carga del esquema personalizado
Se pueden cargar varios esquemas del mismo tipo de tecnología. Los nombres de archivo del esquema deben seguir el siguiente formato de nombre de archivo:
<schema-name>_schema.json
Paso 4: Validación del esquema
Antes de validar e implementar el esquema, defina el
Nombre descriptivo
, que también lo utiliza la sonda para definir el nombre de la plantilla. Haga clic en
Continuar
.
Se valida el esquema para que cumpla las condiciones siguientes:
  • Es un archivo JSON válido con la sintaxis válida.
  • El archivo contiene el esquema de APM sin ninguna métrica de UIM.
  • El nodo raíz del esquema es también el nombre de la sonda que puede contener solo caracteres en minúscula, números, guiones o guiones bajos.
  • El nombre del nodo raíz del esquema es el mismo que el atributo del nombre en la sección de definición del esquema ($.name = $.{name}.definition.name)
Se produce un error en la carga si no se cumple cualquiera de las condiciones. Puede ver los registros para depurar los errores.
Paso 5: Verificación de la configuración en la ficha Monitorización
Verifique que la tecnología correspondiente aparece en la ficha
Monitorización
en UMP.
  1. Inicie sesión en UMP y vaya a
    Grupos
    ,
    Sistema operativo
    ,
    Robot
    , donde se ha implementado el cliente de REST.
  2. Haga clic en la ficha
    Monitorización
    y consulte la sonda personalizada.
    Por ejemplo, mediante el esquema predeterminado se puede crear una sonda personalizada para monitorizar los servidores de elasticsearch.
    restmon_setup_profile.png
Creación de perfiles y monitorización de las tecnologías mediante la sonda RESTMon
Para iniciar la monitorización de la tecnología mediante la API de REST, cree un perfil en la ficha
Monitorización en UMP
y,
a continuación,
active o desactive las métricas necesarias para recopilar los datos necesarios.
Siga los pasos siguientes:
  1. Como administrador de clientes, inicie sesión en UMP y vaya a
    Grupos
    ,
    Sistema operativo
    ,
    Robot
    y, a continuación, haga clic en la ficha
    Monitorización
    .
  2. Seleccione y expanda el nodo para la sonda personalizada y cree el perfil.
    generic_profile_creation.png
  3. Vaya a un subperfil y active o desactive las métricas necesarias.
    restmon_setup_profile.png
    Para activar las alarmas de umbral, configure el parámetro
    policy_mode_enabled
    en el archivo de configuración de MCS y establezca el valor como
    falso
    . Para obtener más información sobre la configuración de umbrales de alarma, consulte Configuración de umbrales de alarma en MCS. De forma alternativa, se pueden crear políticas de alarma y configurar umbrales desde la Consola del operador.
  4. Vaya al
    Inventario
    , busque el nombre de host que se ha definido al crear el perfil y, a continuación, haga clic en la ficha
    Métrica
    para ver la recopilación de métricas y para consultar las alarmas, haga clic en la ficha
    Alarmas
    .
    Vista de la métrica
    generic_metrics_view.png
    Vista Alarmas
    generic_alarms_view.png
Solución de problemas
Síntoma:
Cuando define un nombre descriptivo para un esquema, puede encontrarse con el error siguiente:
error_friendly_name.png
Solución:
Si se encuentra con un error de este tipo, defina otro nombre descriptivo e implemente el esquema.
Síntoma
: Cuando se carga un esquema de JSON y se produce un error en la validación, aparece el siguiente error:
[<schema_name>.json] is/are missing UIM metric definitions syntax.
Solución:
Este error ocurre normalmente cuando no se encuentra la sección de definición de métrica de UIM en el archivo JSON o contiene valores incorrectos en los atributos
operator
y
severity
.
Para solucionar el error, edite el archivo de esquema y lleve a cabo una de las acciones siguientes:
  • En la sección de
    métrica
    del esquema, defina solamente un valor para los siguientes atributos:
    operador
    y
    severidad
    . Estos atributos no son compatibles con ninguna matriz de valores.
    O
  • Elimine los siguientes atributos de la sección de
    métricas
    en el esquema:
    thresholdenabled
    ;
    operator
    ;
    severity
    ;
    custom_message
    ;
    custom_clear_message
Síntoma
: se producen errores al configurar la sonda RESTMon.
Solución
Analice los siguientes archivos de registro que se encuentran aquí: $UIM_installation_dir/Nimsoft/probes/services/wasp
  • operatorconsole.log
  • wasp.log
Además, también se pueden capturar las solicitudes de paquetes http para obtener más información sobre los errores mediante la creación de un archivo
.har
desde el explorador para los puntos finales siguientes:
  • http://$HOSTNAME/operatorconsole_portlet/api/v1/restmon/validateSchema?fileNames=${commaSeparatedFileName}&checkIfExist=true/false&friendlyName=${friendlyName}
  • http://$HOSTNAME/operatorconsole_portlet/api/v1/restmon/uploadSchema
  • http://$HOSTNAME/operatorconsole_portlet/api/v1/restmon/downloadSchema/{resourceName}
Síntoma:
los errores se producen al crear un perfil de monitorización mediante una plantilla de MCS.
Solución
Analice el archivo
mon_config_service.log
que se encuentra aquí: $UIM_installation_dir/Nimsoft/probes/services/mon_config_service/
Síntoma
La sonda no recopila los datos de la calidad del servicio según la definición de métricas en el archivo de esquema.
Solución
Compruebe lo siguiente:
  • Si el estado que devuelve QOS_HTTP_STATUS es 200. De lo contrario, compruebe los registros para solucionar los problemas.
  • Verifique mediante el cliente de REST que el punto final es accesible y devuelve la respuesta esperada.
  • Si el atributo calculated_method es obligatorio con una definición de la calidad del servicio para publicar un valor derivado de la métrica de un valor sin formato.