Cada métrica tiene definido un período de seguimiento. El período de seguimiento es el período durante el cual la métrica tiene que emitir un resultado del nivel de servicio; es este resultado el que se deberá comparar con el destino definido. El resultado producido para el período de seguimiento es el resultado de negocio. Dicho de otra manera, es el resultado contractual con el que se ha comprometido el proveedor para proporcionar un nivel de servicio de destino concreto. Cada una de las instancias de la lógica de negocios para cada período de tiempo se conoce como agente, y está directamente relacionado con las granularidades asociadas a cada métrica.
Por ejemplo, si la métrica se define con un período de seguimiento de un mes, entonces la métrica se ejecuta para proporcionar un resultado mensual.
Para poder obtener detalles en el resultado mensual, allí donde el usuario puede consultar el resultado diario, la métrica debe tener definidas unidades de tiempo adicionales en las cuales se deberá calcular el resultado. Las unidades de tiempo se definen en la sección Detalles generales de la métrica en la ficha Granularidad.
Para cada una de las unidades de tiempo definidas en la ficha Granularidad de la métrica, y para el período de seguimiento, el motor ejecuta una instancia de lógica de negocios aparte. Cada una de estas instancias ejecuta el mismo código de lógica de negocios, pero OnPeriodStart y OnPeriodEnd se activarán de forma diferente para cada una de estas instancias. Para la instancia diaria, se activará al inicio del día y al final del día. Para cada unidad de tiempo, se activará según los puntos de inicio y fin de la unidad de tiempo.
Se ejecuta cada una de las instancias de la lógica de negocios para producir el resultado de unidad de tiempo relevante. Además, cada período tiene que tener un resultado que ha de tener en cuenta todas las excepciones. Los períodos que no lo hagan (si se han definido excepciones), deben permitir al usuario elegir ver el resultado de nivel de servicio con o sin las excepciones que se han tenido en cuenta. Dado este requisito, el motor ejecutará potencialmente catorce agentes (instancias) por cada métrica, dos agentes para los resultados de negocio y doce para los seis períodos operacionales adicionales.

Esto significa que la definición de granularidad tiene un efecto importante en el rendimiento del motor de cálculo, ya que cada período de tiempo se calcula para un agente diferente. Así, cuando no se requiere capacidad de obtención de detalles total o parcial, se recomienda desactivar algunos de los agentes. Esto afecta especialmente a las granularidades más bajas, como los resultados por horas. También afecta mucho a las métricas en clúster, ya que el motor hace todos los cálculos anteriores para cada elemento ClusterItem que encuentra. En realidad, trata a cada elemento ClusterItem como una nueva métrica. Por ejemplo, al calcular una métrica en un grupo de recursos de 50 elementos, el motor tendrá que hacer 49 veces más trabajo si se compara con la misma métrica no en clúster.
Por ejemplo, si la métrica se establece para calcular el tiempo de resolución en número de días, entonces EL resultado por horas no tendrá sentido y deberá quitarse la marca correspondiente en la ficha de granularidades para evitar que el motor que realice cálculos innecesarios.
El atributo TimeUnit del objeto de contexto (context.TimeUnit en la lógica de negocios) devuelve la unidad de tiempo del agente que se está ejecutando actualmente, donde los valores de devolución posibles son: HOUR, DAY, WEEK, MONTH, QUARTER y YEAR.
Por ejemplo, para el agente diario, Context.TimeUnit devolverá "DAY".
El atributo IsTrackingPeriod del objeto de contexto devolverá verdadero para el agente que calcula la unidad de tiempo del período de seguimiento. También es importante saber que los agentes mostrados en la ficha Granularidad de las métricas son adicionales al agente del período de seguimiento de la métrica. Así, incluso para una métrica con un período de seguimiento mensual, podrá desactivar el agente mensual y seguirá calculando el nivel de servicio mensual, pero solamente como "resultados de negocio" (resultados no operacionales).

Como hemos mencionado anteriormente, los distintos agentes normalmente ejecutan el mismo código de lógica de negocios, pero hay casos en los que es necesario aplicar una lógica un poco diferente.
Por ejemplo, en el caso mensual, el resultado deberá ser el número de tiempos de inactividad para cada mes por separado, como se muestra a continuación:

Para la obtención de detalles diaria, puede ser necesario poder consultar los tiempos de inactividad acumulados, donde cada día es una suma de todos los días desde el inicio del mes. Este método se deberá aplicar a todas las unidades de tiempo más pequeñas y, a continuación, a un solo mes, tal y como se muestra a continuación:

La diferencia entre las dos unidades de tiempo es que, para el agente que calcula el período de seguimiento, el contador de tiempos de inactividad se inicializará en 0 al inicio de todos los períodos, pero para el agente diario, el contador se inicializará solamente cuando el día sea el primer día del mes.
A continuación se incluye el controlador de eventos OnPeriodStart:
Sub OnPeriodStart(time)
If InStr(“MONTH,QUARTER,YEAR”, Context.TimeUnit) > 0 _
Or (Context.TimeUnit = “DAY” And Day(time) = 1) _
Or (Context.TimeUnit = “HOUR” And Day(time) = 1 And Hour(time) = 0) Then
DownTimeCounter = 0
End If
End Sub
El recálculo se realiza cuando el motor de correlación identifica que el resultado periódico final de una métrica no es ya válido y se deben recalcular por lo tanto los resultados.
Los motivos para hacer un recálculo pueden ser:
El método más eficaz para la tarea de registro es por Servicio y parte contratante. Organizar los recursos bajo Servicio y parte contratante es una forma de expresar la relación lógica entre la capa de datos y la capa de negocio en el sistema. Al registrar recursos a través de estas entidades no será necesario hacer cambios en las fórmulas cuando se usen en contratos diferentes o para servicios diferentes. El contexto actual de la métrica identifica el contrato y servicio, que define la parte contratante relevante y el servicio asociado. Las fórmulas de lógica de negocios definidas en este tipo de registro son fácilmente reutilizables, ya que no requieren cambios en el registro.
|
Copyright © 2013 CA.
Todos los derechos reservados.
|
|