Una m¨¦trica calculada permite crear un c¨¢lculo basado en los valores de algunas m¨¦tricas existentes. Por ejemplo, es posible que desee calcular el promedio horario de alg¨²n valor de m¨¦trica o calcular el valor total de un grupo de m¨¦tricas. Eso es para lo que sirve una m¨¦trica calculada.
Los c¨¢lculos pueden utilizar ambos:
Las m¨¦tricas calculadas son una forma de crear fuentes de datos virtuales. Todos los c¨¢lculos los realiza ¨²nicamente el servidor Áú»¢¶Ä²©. Los valores son calculados peri¨®dicamente en base a la expresi¨®n aritm¨¦tica utilizada.
Los datos resultantes se almacenan en la base de datos de Áú»¢¶Ä²© como para cualquier otra m¨¦trica; Se almacenan tanto el historial como los valores de tendencia y se pueden visualizar gr¨¢ficos generados.
Si el resultado del c¨¢lculo es un valor flotante, ser¨¢ recortado a un n¨²mero entero si el tipo de informaci¨®n de la m¨¦trica calculada es Num¨¦rico (sin signo).
Adem¨¢s, si no hay datos recientes en la memoria cach¨¦ y no hay un per¨ªodo de consulta definido en la funci¨®n, Áú»¢¶Ä²©, de forma predeterminada, retroceder¨¢ hasta una semana en el pasado para consultar la base de datos en busca de valores hist¨®ricos.
Las m¨¦tricas calculadas comparten su sintaxis con las expresiones de iniciador. La comparaci¨®n de cadenas est¨¢ permitida en m¨¦tricas calculadas. Las m¨¦tricas calculadas pueden ser referenciadas por macros u otras entidades igual que cualquier otro tipo de m¨¦trica.
Para utilizar m¨¦tricas calculadas, elija el tipo de m¨¦trica Calculada.
La clave es un identificador ¨²nico de m¨¦trica (por equipo). Puede crear cualquier nombre de clave utilizando s¨ªmbolos admitidos.
La definici¨®n del c¨¢lculo debe ingresarse en el campo ¹ó¨®°ù³¾³Ü±ô²¹. No hay conexi¨®n entre la f¨®rmula y la clave. Los par¨¢metros de la clave no se utilizan en la f¨®rmula de ninguna manera.
La sintaxis de una f¨®rmula simple es:
»å¨®²Ô»å±ð:
function | Una de las funciones admitidas: last, min, max, avg, count, etc. |
host | Equipo de la m¨¦trica que se utiliza para el c¨¢lculo. El equipo actual se puede omitir (es decir, como en function(//key,parameter,...) ). |
key | Clave de la m¨¦trica que se utiliza para el c¨¢lculo. |
parameter(s) | Par¨¢metros de la funci¨®n, si es necesario. |
Las macros de usuario en la f¨®rmula se expandir¨¢n si se usan para hacer referencia a un par¨¢metro de la funci¨®n, par¨¢metro de filtro de m¨¦tricas o una constante. Las macros de usuario NO se expandir¨¢n si se hace referencia a una funci¨®n, nombre de equipo, clave de m¨¦trica, par¨¢metro de clave de m¨¦trica u operador.
Una f¨®rmula m¨¢s compleja puede utilizar una combinaci¨®n de funciones, operadores y soportes. Puede utilizar todas las funciones y operadores admitidos en expresiones de iniciador. La l¨®gica y la precedencia del operador es exactamente la misma.
A diferencia de las expresiones desencadenantes, Áú»¢¶Ä²© procesa las m¨¦tricas calculadas seg¨²n el intervalo de actualizaci¨®n de la m¨¦trica, no al recibir un nuevo valor.
Todas las m¨¦tricas a las que hacen referencia las funciones de historial en el c¨¢lculo de la f¨®rmula de la m¨¦trica debe existir y recopilar datos. Adem¨¢s, si cambia la clave de la m¨¦trica de una m¨¦trica a la que se hace referencia, debe actualizar manualmente cualquier f¨®rmula que use esa clave.
Una m¨¦trica calculada puede dejar de ser compatible en varios casos:
C¨¢lculo del porcentaje de espacio libre en disco en '/'.
Uso de la funci¨®n ¨²±ô³Ù¾±³¾´Ç:
Áú»¢¶Ä²© tomar¨¢ los valores m¨¢s recientes para espacios de disco libres y totales y calcular el porcentaje de acuerdo con la f¨®rmula dada.
C¨¢lculo de un promedio de 10 minutos del n¨²mero de valores procesados por Áú»¢¶Ä²©.
Uso de la funci¨®n promedio:
Tenga en cuenta que el uso extensivo de elementos calculados con largos per¨ªodos de tiempo puede afectar el rendimiento del servidor Áú»¢¶Ä²©.
C¨¢lculo del ancho de banda total en eth0.
Suma de dos funciones:
C¨¢lculo del porcentaje de tr¨¢fico entrante.
Expresi¨®n m¨¢s compleja:
100*¨²±ô³Ù¾±³¾´Ç(//net.if.in[eth0,bytes])/(last(//net.if.in[eth0,bytes])+last(//net.if.out[eth0,bytes]) )
Ver tambi¨¦n: Ejemplos de agregado c¨¢lculos