Rapporteringsmotor i Satellite 6.5: Vad är det och varför

Red Hat Satellite är en systemhanteringslösning som gör det enkelt att distribuera, skala och hantera Red Hat-infrastruktur över fysiska, virtuella och molnmiljöer. Satellite tillåter användare att anpassa och uppdatera system för att säkerställa att de fungerar effektivt och säkert enligt en mängd olika standarder. Genom att automatisera de flesta uppgifter som är förknippade med att upprätthålla systemets hälsa hjälper Satellite organisationer att öka effektiviteten, minska driftskostnaderna och bättre svara på strategiska affärsbehov.

Rapporteringsmotor i Satellite 6.5: Vad är det och varför

Även om du kan utföra grundläggande administrativa uppgifter med hjälp av Red Hat-tjänsterna som ingår i ditt Red Hat Enterprise Linux-abonnemang, lägger Red Hat Satellite till omfattande livscykelhanteringsfunktioner.

Bland dessa möjligheter:

  • Installera patchar;
  • Prenumerationshantering;
  • Initialisering;
  • Konfigurationshantering.

Från en konsol kan du hantera tusentals system lika enkelt som ett, vilket ökar tillgängligheten, tillförlitligheten och systemrevisionskapaciteten.

Och nu har vi nya Red Hat Satellite 6.5!

En av de coola sakerna som kommer med Red Hat Satellite 6.5 är den nya rapporteringsmotorn.

Satellite Server är ofta navet för all information om Red Hats företagssystem, och denna senaste motor låter dig skapa och exportera rapporter som innehåller information om klientsatellitvärdar, mjukvaruabonnemang, tillämpliga errata och etc. Rapporter programmeras i Embedded Ruby (ERB).

Satellite 6.5 kommer med färdiga rapporter, och motorn ger användarna möjlighet att anpassa dessa rapporter eller skapa sina egna. Satellite 6.5:s inbyggda rapporter genereras i CSV-format, men i detta inlägg visar vi hur du kan generera rapporter i HTML-format också.

Satellit 6.5 inbyggda rapporter

Satellite 6.5 innehåller fyra inbyggda rapporter:

  • Tillämpliga fel – en lista över programvarufel (errata) som måste elimineras på innehållsvärdar (valfritt filtrerade av värdar eller defekter);
  • Värdstatusar – rapport om status för satellitvärdar (valfritt filtrerad efter värd);
  • Registrerade värdar – information om satellitvärdar: IP-adress, OS-version, mjukvaruabonnemang (valfritt filtrerat efter värd);
  • abonnemang – information om programvaruprenumerationer: totalt antal prenumerationer, antal kostnadsfria, SKU-koder (valfritt filtrerade efter prenumerationsparametrar).

För att skapa en rapport, öppna menyn Övervaka, Välj Rapportmallar och klicka på knappen Generera till höger om önskad rapport. Lämna filterfältet tomt för att inkludera all data i rapporten, eller ange något där för att begränsa resultaten. Om du till exempel vill att rapporten Registrerade värdar endast ska visa RHEL 8-värdar, anger du ett filter os = RedHat och os_major = 8, som visas i skärmdumpen nedan:

Rapporteringsmotor i Satellite 6.5: Vad är det och varför

När rapporten har skapats kan du ladda ner den och öppna den i ett kalkylblad som LibreOffice Calc, som importerar data från CSV och organiserar den i kolumner, till exempel som en rapport Tillämpliga fel på skärmen nedan:

Rapporteringsmotor i Satellite 6.5: Vad är det och varför

Observera att alternativet är aktiverat i egenskaperna för inbyggda rapporter Som standard (Standard), så de läggs automatiskt till i alla nya organisationer och platser som du skapar i Satellite.

Anpassning av inbyggda rapporter

Låt oss titta på anpassning med exemplet på en inbyggd rapport abonnemang. Som standard visar denna rapport det totala antalet prenumerationer (1), samt antalet tillgängliga, det vill säga gratis, prenumerationer (2). Vi kommer att lägga till ytterligare en kolumn med antalet använda abonnemang, vilket definieras som (1) – (2). Till exempel, om vi har totalt 50 RHEL-prenumerationer och 10 av dem är gratis, så används 40 prenumerationer.

Eftersom redigering av inbyggda rapporter är låst och det rekommenderas inte att ändra dem, måste du klona den inbyggda rapporten, ge den ett nytt namn och sedan ändra denna klonkopia.

Så, om vi vill ändra rapporten abonnemang, då måste den först klonas. Så låt oss öppna menyn ÖvervakaVälj Rapportmallar och i rullgardinsmenyn till höger om mallen abonnemang välj klon. Ange sedan namnet på klonrapporten (låt oss kalla den Anpassade prenumerationer) och mellan raderna Tillgängliga и KVANTITET lägg till raden i den 'Used': pool.quantity - pool.available, – var uppmärksam på kommatecken i slutet av raden. Så här ser det ut på skärmdumpen:

Rapporteringsmotor i Satellite 6.5: Vad är det och varför

Sedan trycker vi på knappen Skickavilket för oss tillbaka till sidan Rapportmallar. Där klickar vi på knappen Generera till höger om den nyskapade rapporten Anpassade prenumerationer. Lämna fältet Prenumerationsfilter tomt och klicka Skicka. Därefter skapas och laddas en rapport som innehåller kolumnen vi lagt till Bilar.

Rapporteringsmotor i Satellite 6.5: Vad är det och varför

Hjälp för det inbyggda Ruby-språket finns på fliken Hjälp i fönstret för rapportredigering. Den ger en översikt över syntaxen och tillgängliga variabler och metoder.

Skapa din egen rapport

Låt oss nu titta på att skapa våra egna rapporter med exemplet på en rapport om Ansible-roller som tilldelats värdar i Satellite. Öppna menyn Övervaka, klick Rapportmallar och tryck sedan på knappen Skapa mall. Låt oss ringa vår rapport Ansible roller rapport och infoga följande ERB-kod i den:

<%#
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 -%>

Den här koden genererar en rapport om värdar som visar attributet "all_ansible_rolles" för dem.

Gå sedan till fliken ingångar och klicka på knappen + Lägg till input. Vi säger att namnet är lika med värdar, och beskrivningstyp – Filtrera efter värdar (valfritt). Klicka sedan Skicka och tryck sedan på knappen Generera till höger om den nyskapade rapporten. Därefter kan du ställa in ett värdfilter eller klicka direkt Skickaför att generera en rapport om alla värdar. Den genererade rapporten kommer att se ut ungefär så här i LibreOffice Calc:

Rapporteringsmotor i Satellite 6.5: Vad är det och varför

Generera HTML-rapporter

Med satellitrapporteringsmotorn kan du generera rapporter inte bara i CSV-format. Som ett exempel kommer vi att skapa en anpassad rapport baserad på den inbyggda värdrapporten status, men bara som en HTML-tabell med celler färgkodade baserat på status. För att göra detta klonar vi Värdstatusar, och ersätt sedan dess ERB-kod med följande:

<!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>

Den här rapporten genererar HTML som ser ut ungefär så här i en webbläsare:

Rapporteringsmotor i Satellite 6.5: Vad är det och varför

Kör rapporter från kommandoraden

För att köra en rapport från kommandoraden, använd kommandot hammaren, och cron-verktyget låter dig automatisera denna process.

Använd kommandot hammarrapportmall generera --name "", till exempel:

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

Innehållet i rapporten kommer att återspeglas på konsolen. Informationen kan omdirigeras till en fil och sedan konfigurera cron för att köra ett skalskript för att generera en rapport och skicka den via e-post. HTML-formatet visas perfekt i e-postklienter, vilket gör att du kan organisera regelbunden leverans av rapporter till intresserade parter i en lättläst form.

Således är rapporteringsmotorn i Satellite 6.5 ett kraftfullt verktyg för att exportera den viktiga data som företag har i Satellite. Det är mycket flexibelt och låter dig använda både inbyggda rapporter och deras modifierade versioner. Dessutom kan användare skapa sina egna rapporter från grunden. Läs mer om satellitrapporteringsmotorn i vår YouTube-video.

Missa inte webbseminariet om den nya versionen av Red Hat Enterprise Linux 9 den 11 juli kl 00:8 Moskva-tid

Vår talare är Aram Kananov, chef för utvecklingsavdelningen för plattformar och ledningssystem på Red Hat i Europa, Mellanöstern och Afrika. Arams arbete på Red Hat inkluderar omfattande marknads-, bransch- och konkurrentanalyser samt produktpositionering och marknadsföring för affärsenheten Platforms, vilket inkluderar att hantera hela produktens livscykel från introduktion till slutet av livet.

Källa: will.com

Lägg en kommentar