Tips, Soluciones y Novedades en Tecnología

29/07/2018

Pentaho Reporting Eventos





Hoy veremos como agregar eventos desde Pentaho Reporting, muy útil para enlazar a otros reportes y pasar parámetros.



En Pentaho Reporting podemos generar a muchos formatos de salida, uno de ellos es HTML, y en este caso HTML nos facilita agregar eventos para poder enlazar  enviando parámetros según nuestras necesidades.





En el vídeo para ver la explicación de la utilización de eventos HTML.













Saludos.



28/07/2018

Jar Ejecutable






En muchos escenarios de desarrollo requerimos implementar  aplicaciones Java empaquetados en un solo .JAR, para poder ejecutar desde comandos y otras tareas según nuestras necesidades.



Una tarea fácil de empaquetar es usando un gestor de dependencias, en este caso Maven,el cual mediante configuración se le indica que como va empaquetar los archivos.



Supongamos que requerimos empaquetar nuestro .jar para obtener información del CPU del servidor, con solo  ejecutar desde un bash se podrá ejecutarlo y sus dependencias también se podrán cargar en memoria.



Lo primero que se debe realizar es localizar el pom.xml del proyecto y agregar la siguiente configuración.








<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.command</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>





El Main Class:<mainClass>com.command</mainClass>



En este bloque de código se debe agregar la clase que se ejecutará por defecto.



Para generar el jar. ejecutar "clean compile assembly:single"



Y listo ya tienen su .jar empaquetado, sin importar la cantidad de dependencias que disponga su aplicación.



Ahora para ejecutar solo basta con ejecutar "java -jar miapp.jar"



Saludos.



16/07/2018

Kettle y Google Spreadsheet





Kettle puede leer datos de una variedad de fuentes, desde base de datos, ficheros, web services, etc.



Hoy comparto como leer desde Google Spreadsheet, es decir podemos editar nuestro Spreadsheet y podremos ver esos cambios en nuestro Dashboard de Pentaho CDE





Para ello tenemos que realizar lo siguiente.



Paso 1:



Habilitar el API de Drive en la consola de Google







Crear una cuenta de servicio con permiso de lectura para recursos, seleccionar que proporcione una nueva clave P12, con esto tendremos nuestra KEY para poder conectarnos desde kettle







Una vez creado nuestra cuenta de servicio podremos ver en nuestra IAM de la consola de Google









Paso 2:



Crear un archivo Google Spredsheet y llenar de datos











Compartir en modo lectura con el correo de la cuenta de servicio creado









Ya tenemos configurado nuestro archivo, ahora solo queda configurar kettle.



Paso 3:



Por defecto kettle no viene instalado el plugin, tendremos que instalar desde el matketplace







Una vez instalado debemos reiniciar y crear una transformación y en la sección Inputs podremos ver el componente para conectarnos  a Google Spreadsheet.



Como primer paso debemos configurar para ello proporcionamos la llave P12, la cuenta de servicio y el ID del Spreadsheet, para obtener el ID del spreadsheet, debemos sacar de la barra de navegación











Probar la conexión y consultar las hojas.



Como resultado podremos ver los datos obtenido desde Google Spreasheet











Espero puedan utilizar Google Spreadsheet en sus procesos de BI como fuente de datos, debido a que los usuarios pueden llenar de datos y fácilmente mostrar los datos en un Dashboard de Pentaho CDE,



Saludos.





Dashboard de métricas





Para monitorear nuestra infraestructura de servidores, una de las herramientas que esta siendo muy activa su uso en la comunidad es Grafana, hoy quiero compartir unas características sobre esta herramienta que actualmente lo uso para mis proyectos.













  • Es una herramienta Open Source

  • Es multilataforma

  • Basado en plugin

  • Dashboard importables

  • Embedible por paneles de gráficos, aunque  aun no permite todo el dashboard

  • Permite conectarse a una multitud de fuentes de datos

  • Interfaz amigable y rápida

  • Soporta varias bases de datos como almacenamiento de configuraciones

  • etc.



Es un proyecto que esta creciendo mucho en la comunidad y muchas empresas lo están utilizando para monitorear su infraestructura.





Otra característica que también  posee es leer datos desde base de datos relacionales, es decir podemos usarlo como herramienta de BI para visualizar nuestros indicadores de negocio.





Pueden acceder a la pagina https://grafana.com/





Aquí pueden ver una colección de ejemplos que la comunidad publica de manera constante. http://play.grafana.org




En mi página de servicios tengo una sección demos donde pueden  ver unas implementaciones  https://explorekpi.com/demos/





Espero que utilicen esta herramienta para sus proyectos, Saludos.






















15/07/2018

Java Zip





En este POST comparto un utilitario para convertir directorios enteros a formato ZIP mediante lineas de comando de forma practica y que se puede ejecutar desde versiones java 7 en adelante.












Lo he implementado para realizar backups de los archivos y configuraciones de los servidores que administro, en linux no fue problema, debido a que hay paquetes que se puede instalar y todo se realiza desde linea de comandos.



El detalle esta en window, para convertir a .zip directorios completos que se ejecutan mediante .bat y con tareas programadas.



Para no instalar herramientas de terceros en windows, he implementado un .jar que permite convertir directorios a .zip y que pueden ser invocados mediante bacheros para propósitos generales.



Utilitario



Java Zip



Requisitos



Java 7+



Instrucciones



Java -jar java-zip.jar "C:\file1\file2" "C:\file3\file2.zip"



Pueden descargar el código fuente en github.