Motor de informes en Satellite 6.5: que é e por que

Red Hat Satellite é unha solución de xestión de sistemas que facilita a implantación, escalado e xestión da infraestrutura de Red Hat en ambientes físicos, virtuais e na nube. Satellite permite aos usuarios personalizar e actualizar os sistemas para garantir que funcionan de forma eficiente e segura segundo unha variedade de estándares. Ao automatizar a maioría das tarefas asociadas ao mantemento da saúde do sistema, Satellite axuda ás organizacións a aumentar a eficiencia, reducir os custos operativos e responder mellor ás necesidades estratéxicas do negocio.

Motor de informes en Satellite 6.5: que é e por que

Aínda que pode realizar tarefas administrativas básicas utilizando os servizos de Red Hat incluídos na súa subscrición a Red Hat Enterprise Linux, Red Hat Satellite engade amplas capacidades de xestión do ciclo de vida.

Entre estas posibilidades:

  • Instalación de parches;
  • Xestión de subscricións;
  • Inicialización;
  • Xestión da configuración.

Desde unha consola, pode xestionar miles de sistemas tan facilmente como un só, aumentando a dispoñibilidade, a fiabilidade e as capacidades de auditoría do sistema.

E agora temos o novo Red Hat Satellite 6.5!

Unha das cousas interesantes que vén con Red Hat Satellite 6.5 é o novo motor de informes.

Satellite Server adoita ser o centro para toda a información sobre os sistemas empresariais de Red Hat, e este último motor permítelle crear e exportar informes que conteñan información sobre servidores Satellite de clientes, subscricións de software, erratas aplicables, etc. Os informes están programados en Embedded Ruby (ERB).

Satellite 6.5 inclúe informes preparados e o motor ofrece aos usuarios a posibilidade de personalizar estes informes ou crear os seus propios. Os informes integrados de Satellite 6.5 xéranse en formato CSV, pero nesta publicación mostraremos como pode xerar informes tamén en formato HTML.

Informes integrados de Satellite 6.5

Satellite 6.5 inclúe catro informes integrados:

  • Erratas aplicables – unha lista de defectos de software (erratas) que deben eliminarse nos servidores de contido (opcionalmente filtrados por servidores ou defectos);
  • Estado do anfitrión – informe sobre o estado dos servidores satélite (opcionalmente filtrado por host);
  • Anfitrións rexistrados – información sobre os servidores de satélite: enderezo IP, versión do SO, subscricións de software (opcionalmente filtradas por host);
  • Sinaturas – información sobre subscricións de software: número total de subscricións, número de gratuítas, códigos SKU (opcionalmente filtrados por parámetros de subscrición).

Para xerar un informe, abra o menú Monitorseleccionar Modelos de informes e prema no botón Xerar á dereita do informe desexado. Deixe o campo de filtro en branco para incluír todos os datos no informe ou introduza algo alí para limitar os resultados. Por exemplo, se quere que o informe Anfitrións rexistrados mostre só hosts RHEL 8, especifique un filtro os = RedHat e os_major = 8, como se mostra na seguinte captura de pantalla:

Motor de informes en Satellite 6.5: que é e por que

Unha vez xerado o informe, podes descargalo e abrilo nunha folla de cálculo como LibreOffice Calc, que importará os datos do CSV e organizalos en columnas, por exemplo, como un informe. Erratas aplicables na seguinte pantalla:

Motor de informes en Satellite 6.5: que é e por que

Teña en conta que nas propiedades dos informes integrados a opción está activada Por defecto (Predeterminado), polo que se engaden automaticamente a todas as organizacións e localizacións novas que crees en Satellite.

Personalización de informes integrados

Vexamos a personalización usando o exemplo dun informe integrado Sinaturas. Por defecto, este informe mostra o número total de subscricións (1), así como o número de subscricións dispoñibles, é dicir, gratuítas (2). Engadirémoslle outra columna co número de subscricións utilizadas, que se define como (1) – (2). Por exemplo, se temos un total de 50 subscricións RHEL e 10 delas son gratuítas, entón utilízanse 40 subscricións.

Dado que a edición de informes integrados está bloqueada e non se recomenda cambialos, terás que clonar o informe integrado, darlle un novo nome e modificar esta copia de clonación.

Entón, se queremos modificar o informe Sinaturas, entón primeiro debe ser clonado. Entón, imos abrir o menú Monitor, seleccione Modelos de informes e no menú despregable á dereita do modelo Sinaturas escoller Clon. A continuación, introduza o nome do informe de clonación (chamémolo Subscricións personalizadas) e entre liñas Dispoñíbel и cantidade engadirlle a liña 'Usado': pool.quantity - pool.available, – prestar atención á coma ao final da liña. Así se ve na captura de pantalla:

Motor de informes en Satellite 6.5: que é e por que

Despois prememos o botón someterque nos trae de volta á páxina Modelos de informes. Alí prememos no botón Xerar á dereita do informe recentemente creado Subscricións personalizadas. Deixa o campo de filtro Subscricións baleiro e fai clic someter. Despois do cal se crea e carga un informe, que contén a columna que engadimos Usado.

Motor de informes en Satellite 6.5: que é e por que

A axuda para a linguaxe Ruby incorporada atópase na pestana axudar na xanela de edición do informe. Ofrece unha visión xeral da sintaxe e das variables e métodos dispoñibles.

Crea o teu propio informe

Agora vexamos a creación dos nosos propios informes usando o exemplo dun informe sobre os roles de Ansible asignados aos anfitrións en Satellite. Abre o menú Monitor, fai clic Modelos de informes e despois prema o botón Crear modelo. Chamemos o noso informe Informe Ansible Roles e insira nel o seguinte código ERB:

<%#
name: Ansible Roles Report
snippet: false
template_inputs:
- name: hosts
 required: false
 input_type: user
 description: Limit the report only on hosts found by this search query. Keep empty
   for report on all available hosts.
 advanced: false
model: ReportTemplate
-%>
<% load_hosts(search: input('hosts'), includes: :ansible_roles).each_record do |host| -%>
<%   report_row({
       'Name': host.name,
       'All Ansible Roles': host.all_ansible_roles
     }) -%>
<% end -%>
<%= report_render -%>

Este código xera un informe sobre os hosts, mostrando o atributo "all_ansible_roles" para eles.

A continuación, vai á pestana Entradas e fai clic no botón + Engadir entrada. Dicimos que ese nome é igual a Exércitose tipo de descrición - Filtrar por hosts (opcional). A continuación, prema someter e despois prema o botón Xerar á dereita do informe recentemente creado. A continuación, pode establecer un filtro de host ou facer clic inmediatamente someterpara xerar un informe sobre todos os hosts. O informe xerado terá un aspecto así en LibreOffice Calc:

Motor de informes en Satellite 6.5: que é e por que

Xeración de informes HTML

O motor de informes Satellite permítelle xerar informes non só en formato CSV. Como exemplo, crearemos un informe personalizado baseado no informe de Host integrado Estatutos, pero só como unha táboa HTML con celas codificadas por cores en función do estado. Para iso clonamos Estado do anfitrión, e despois substitúe o seu código ERB polo seguinte:

<!DOCTYPE html>
<html>
<head>
   <title>Host Statuses</title>
   <style>
       th {
           background-color: black;
           color: white;
       }
       td.green {
           background-color:#92d400;
           color:black;
       }
       td.yellow {
           background-color:#f0ab00;
           color:black;
       }
       td.red {
           background-color:#CC0000;
           color:black;
       }
       table,th,td {
               border-collapse:collapse;
               border: 1px solid black;
       }
   </style> 
</head>
<body>
<table>
<tr> 
       <th> Hostname </th>
       <th> Status </th> 
<% load_hosts(search: input('hosts'), includes: :host_statuses).each_record do |host| -%>
   <% all_host_statuses_hash(host).each do |key, value|  -%>
       <th> <%= key %> </th>
   <% end -%>
   <% break -%>
<% end -%>
</tr>

<%- load_hosts(search: input('hosts'), includes: :host_statuses).each_record do |host| -%>
   <tr> 
   <td> <%= host.name   %> </td> 
   <% if host.global_status == 0 -%>
       <td class="green"> OK </td>
   <% elsif host.global_status == 1 -%>
       <td class="yellow"> Warning </td>
   <% else -%>
       <td class="red"> Error (<%= host.global_status %>) </td>
   <% end -%>

   <% all_host_statuses_hash(host).each do |key, value|  -%>
       <% if value == 0 -%>
           <td class="green"> OK </td>
       <% elsif value == 1  -%>
           <td class="yellow"> Warning </td>
       <% else -%>
           <td class="red"> Error (<%= value %>) </td>
       <% end -%>
   <% end -%>
   </tr>
<% end -%>

</table>
</body>
</html>

Este informe xera HTML que terá un aspecto así nun navegador:

Motor de informes en Satellite 6.5: que é e por que

Execución de informes desde a liña de comandos

Para executar un informe desde a liña de comandos, use o comando martelo, e a utilidade cron permítelle automatizar este proceso.

Use o comando hammer report-template generate --name "", por exemplo:

# hammer report-template generate —name "Host statuses HTML"

O contido do informe reflectirase na consola. A información pódese redirixir a un ficheiro e, a continuación, configurar cron para executar un script de shell para xerar un informe e envialo por correo electrónico. O formato HTML móstrase perfectamente nos clientes de correo electrónico, o que lle permite organizar a entrega regular de informes ás partes interesadas nun formulario fácil de ler.

Así, o motor de informes de Satellite 6.5 é unha poderosa ferramenta para exportar os datos importantes que teñen as empresas en Satellite. É moi flexible e permite utilizar tanto os informes integrados como as súas versións modificadas. Ademais, os usuarios poden crear os seus propios informes desde cero. Obtén máis información sobre o Satellite Reporting Engine no noso vídeo de YouTube.

O 9 de xullo ás 11:00 hora de Moscova, non te perdas o seminario web sobre a nova versión de Red Hat Enterprise Linux 8

O noso orador é Aram Kananov, xerente do departamento de desenvolvemento de plataformas e sistemas de xestión de Red Hat en Europa, Oriente Medio e África. O traballo de Aram en Red Hat inclúe unha análise exhaustiva do mercado, da industria e da competencia, así como o posicionamento e comercialización do produto para a unidade de negocio de Plataformas, que inclúe a xestión de todo o ciclo de vida do produto desde a súa introdución ata o final da súa vida útil.

Fonte: www.habr.com

Engadir un comentario