Automatizar proceso que compruebe el estado del Intelligence Server

Quizás en algún momento se os ha caído el Intelligence Server y bien porque no estabais en el momento trabajando con Microstrategy o por cualquier otro motivo, y ya que el servicio no se vuelve a levantar solo, ha sido algún cliente quien os ha avisado de que no podía acceder a la herramienta. Vamos a ver como crear un proceso automático que nos avisará y, dado el caso iniciará el servicio, cuando Intelligence Server esté caído. Lo vamos a hacer con System Manager…

System Manager es una herramienta enfocada a la automatización de los múltiples procesos manuales requeridos para gestionar un ecosistema de BI, que se ha incorporado a Microstrategy a partir de la versión 9.3. Por ejemplo, System Manager puede automatizar la migración de los cambios entre los entornos de desarrollo, pre-producción y producción o por ejemplo automatizar las actualizaciones de caché así como distribuciones de actualizaciones de informes. Os dejo por aquí el documento de producto oficial

http://www.microstrategy.com/Strategy/media/downloads/products/MicroStrategy-Product-Brochure-System-Manager.pdf

En este caso, vamos a usar System Manager para crear un servicio que permanentemente esté observando el estado del Intelligence Server con el objetivo de que, frente a caídas del servicio, nos avise y sea capaz de volver a iniciar dicho seobjetos_system_managerrvicio. Sigamos estos pasos para hacerlo:

  1. Para empezar necesitamos los siguientes objetos del panel de controles
    1. Obtener estado de servicio (1)
      Con este módulo podremos obtener el estado de los servicios principales de Microstrate como el Intelligence Server o el Listener.
    2. Administrar servicios de Microstrategy (2)
      Este módulo nos sirve para lanzar los diferentes servicios de Microstrategy.
    3. Enviar correo eléctronico (3)
      Podremos enviar correos electrónicos, definiendo un SMTP, a cualquier destinatario.
    4. Esperando (4)
      Módulo para establecer un tiempo determinado de espera
    5. Decisión (5)
      Módulo que nos permite evaluar condiciones en un flujo de trabajo.
  2. Los vamos arrastrando hacia el proyecto en blanco de tal manera que los conectemos creando un flujo similar a este

    system_manager2Los unimos mediante los conectores situados en la barra de herramientassm_06
  3. Y cada uno de los módulos, los configuramos como os dejo a continuación
  4. Con el flujo de trabajo creado y configurado tendremos un proyecto que comprobará, cada 1 minuto, el estado del Intelligence Server. Si en este check encuentra que el servidor está caído nos avisara del estado con un email, levantará el servicio y nos avisará con otro email en función de si ha podido o no iniciarlo.

Una vez tenemos el workflow creado, podéis ejecutarlo desde el mismo System Manager para ver si os funciona bien incluso parando el servicio de Intelligence Server manualmente y viendo que el proceso detecta el estado y lo auto-inicia.

Automatizando el proceso

Hasta aquí hemos generado el flujo de trabajo para ejecutarlo dentro de System Manager, pero quizá nos sea mas útil poder ejecutarlo desde un fichero para lanzar el proceso y que se ejecute automaticamente. El fichero debería tener un contenido similar a este

Lo guardamos, por ejemplo, como iServerCheck con extensión .batAhora, simplemente ejecutando este fichero bat ya tendríamos el proceso corriendo y comprobando cada minuto el estado de nuestro Intelligence Server.

En nuestro caso, todas las noches reiniciamos el servidor de Microstrategy sobre la 1 de la mañana por lo que hemos decidido programar una tarea en Task Scheduler de Windows que lance el fichero .bat sobre las 2AM y desde ese momento, hasta el siguiente reinicio, nos avise de caídas del servidor.

Os dejo ambos ficheros, el .smw y el .bat para que podáis usarlos.

iServerCheck

Como siempre, espero que os haya sido útil 😉

Sergio Martín
Más de seis años de experiencia gestionando equipos y proyectos de Business Intelligence para diferentes sectores, apasionado de todos los procesos técnicos relacionados con la gestión de la información, el tratamiento de datos y la automatización de procesos

** Microstrategy 9.4 | Pentaho 5 (ETL) | Oracle 11g **

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *