Este wiki describe la estructura de los modelos multitidimensionales necesarios para generar los cubos de monitoreo, los pasos necesarios para definir los archivos de configuración de cada uno, y su posterior construcción.
Para realizar el análisis de las estadísticas de O3 BI se proveen tres modelos multidimensionales que permiten construir:
- un cubo de análisis para el servidor en general
- un cubo de análisis para cada uno de los cubos publicados
- un cubo de análisis de accesos a O3 BI
Los modelos son:
Nombre | Descripción | Fuente de datos | Ubicación |
---|---|---|---|
Permite construir el cubo de análisis general de un servidor de O3 BI para lo cual utiliza los 4 archivos de log que contienen información de este tipo. | Logs de monitoreo general del servidor: O3CubeService.log, Audit.log, Cubes.log, Sessions.log | directorio 'server' debajo del directorio de instalación de O3 BI. | |
Permite construir para un determinado cubo, su cubo de análisis de performance. Se puede | Logs de monitoreo por cubo: archivo Queries.log correspondiente al cubo que se desea analizar | directorio 'server' debajo del directorio de instalación de O3 BI. | |
ServerAuthentications.mdl | Permite construir un cubo para análisis de accesos a O3 BI. | Log Authentication.log, generado automáticamente por O3 BI en el directorio de la instalación, bajo /server/logs | directorio 'server/logs' debajo del directorio de instalación de O3 BI. |
Generación de archivos de configuración
En el caso de utilizar el modelo ServerPerformance.mdl es necesario generar los cuatro archivos de log descriptos anteriormente.
Una vez que se tiene generados los archivos de log y utilizando los modelos mencionados en la sección anterior se puede proceder a la construcción (o reconstrucción) de los cubos de análisis.
La construcción o reconstrucción de los cubos se lleva a cabo utilizando O3 Builder (como con cualquier otro cubo) con un parámetro especial '-profiling' y utilizando un archivo .srv con los datos acerca del servidor para el cual se van a calcular estadísticas. Las construcciones son siempre completas, es decir que no se realizan cargas incrementales sobre estos cubos.
Por lo tanto para construir los cubos de análisis de estadísticas se debe utilizar el siguiente comando:
Builder -profiling <file>.srv
Donde el archivo <file>.srv debe contener los siguientes datos:
serverHost = <host> serverName = O3Server [cubeName = <statCube>] [profCubeName = <cube>] model = <path>/CubeQueriesPerformance.mdl | model=<path>/ServerPerformance.mdl user = <username> password = <password>
Ver la sección "Generando el archivo de configuración para O3 Builder".
ServerHost | Nombre o dirección IP de la máquina en la que esta ejecutando el O3 Server del cual se van a tomar las estadísticas. |
ServerName | Nombre del servidor de O3 (El valor debe ser siempre 'O3Server'). |
CubeName | Es opcional y se debe usar únicamente en caso de que el cubo con información de estadística (<statCube>) que se va a construir o reconstruir este publicado en el O3 Server. En estos casos el Builder se encargara de controlar todo el proceso de actualización de ese cubo que esta corriendo en el O3 Server. Es decir, desconectará los posibles usuarios que se encuentren conectados al mismo al momento de la actualización, marcara el cubo como 'no accesible' temporariamente, procederá a la reconstrucción y finalmente volverá a marcarlo como accesible de forma que los usuarios puedan volver a conectarse. |
ProfCubeName | Este parámetro sólo debe incluirse cuando se pretende construir un cubo con estadísticas correspondientes a otro cubo publicado en el O3 Server (es decir cuando el parámetro model tenga asignado el modelo CubeQueriesPerformance.mdl). Su valor debe ser el del nombre con que esta publicado en el O3 Server el cubo para el cual se quiere construir un cubo de estadísticas. Es importante observar que el modelo que se utiliza para construir cubos de estadísticas acerca de otros cubos es independiente del cubo a considerar. Es justamente éste parámetro el que permite seleccionarlo. Por lo tanto el parámetro debe estar presente cada vez que se use el modelo CubeQueriesPerformance.mdl. |
Model | El modelo a utilizar para la construcción del cubo de estadísticas. Si se quiere construir un cubo de estadísticas generales del O3 Server, se debe asignar como valor el modelo ServerPerformance.mdl y si se quiere crear un cubo de estadísticas de un cubo particular que esta publicado en el O3 Server se debe asignar como valor el modelo CubeQueriesPerformance.mdl y especificar además con el parámetro profCubeName mencionado antes el cubo a analizar. |
User | Usuario utilizado para conectarse al O3 Server. Debe tener privilegios de administración. |
Password | Password del usuario utilizado para conectarse al O3 Server. |
El siguiente ejemplo de archivo .srv se utiliza para crear el cubo de estadísticas generales del O3 Server que se encuentra en la maquina de nombre MyHost y que además esta publicado como O3ServerStats en el mismo servidor.
serverHost = MyHost serverName = O3Server cubeName = O3ServerStats model = <path>/ServerPerformance.mdl user = admin password = admin
Con este segundo ejemplo de archivo .srv se construye un cubo de estadísticas del cubo que esta publicado en el O3 Server con el nombre de Demo. Además dicho cubo de estadísticas está publicado en el O3 Server con el nombre DemoStats.
serverHost = MyHost serverName = O3Server cubeName = DemoStats profCubeName = Demo model = <path>/CubeQueriesPerformance.mdl user = admin password = admin
Construcción de cubos de monitoreo.
Caso ServerAuthentications
Caso ServerPerformance y CubeQueriesPerformance
El administrador deberá proveer un archivo de este tipo para cada uno de los cubos de su O3 Server para los cuales quiera crear el correspondiente cubo de análisis de estadísticas, modificando los valores de cubeName y profCubeName respectivos.
En caso de que el cubo de estadísticas que se está construyendo no este publicado en el O3 Server, no se incluirá el parámetro cubeName en el archivo .srv. En este caso se puede utilizar el parámetro estándar del Builder (-cube=<path>/<cubeName>) para especificar el camino donde guardar el cube construido y el nombre a asignarle al mismo. En caso de no especificar este parámetro O3 Builder tomará su comportamiento por defecto que consiste en crear el cubo en el mismo directorio donde se encuentra el archivo .mdl utilizado, con el mismo nombre que éste, y extensión .cube por supuesto).
Al igual que con la construcción de cualquier cubo a partir de archivos ascii, es necesario especificar la ubicación de los archivos utilizados como fuente de datos (en este caso, los archivos de log generados por el servicio de monitoreo del O3 Server).
Por defecto cuando el O3 Builder recibe la opción de -profiling y se conecta al O3 Server que se especifica en el archivo .srv recibido como parámetro para construir un determinado cubo de estadísticas, extrae de la configuración del O3 Server la ubicación de los archivos de logs que necesita para la construcción de forma automática.
Si por alguna razón es necesario realizar la construcción de cubos de estadísticas, pero a partir de archivos de log que se encuentran en una ubicación diferente a la especificada en la configuración del O3 Server, se debe utilizar la opción -cgf=<file>.cfg de O3 Builder. El comando a utilizar en estos casos será:
builder -profiling -cfg=<file>.cfg <file>.srv
En general la opción -cfg permite especificar nuevos valores para parámetros del modelo que se está utilizando para construir el cubo. En este caso los modelos disponen de un conjunto de parámetros que especifican el camino a los archivos de logs necesarios para la construcción y es por tanto posible modificarlos de esta manera. El archivo <file>.cfg debe tener por tanto el siguiente formato:
O3_CUBE_SERVICE_PATH = <path>/O3CubeService.log AUDIT_PATH = <path>/Audit.log CUBES_PATH = <path>/Cubes.log SESSIONS_PATH = <path>/Sessions.log QUERIES_PATH = <path>/<cubename>Stats.log
Los valores de los parámetros deben incluir el camino y el nombre del archivo de log.
Los primeros 4 parámetros son necesarios cuando se construye un cubo de estadísticas generales del servidor, mientras que el último es necesario si se construye un cubo de estadísticas de un cubo específico.