Seite wählen

NETWAYS Blog

Jasper Reporting – Zusammenfassung

Jasper-ReportingIn den letzten Wochen habe ich mich an dieser Stelle ausführlich mit Jasper-Report beschäftigt. Da wir Jasper stark zunehmend in unseren Kundenprojekten einsetzen auch im Bereich Managed Service  darauf zurückgreifen, lag die Serie sehr nah und ich hoffe soweit die wichtigsten Kernaspekte getroffen zu haben.
Hier nochmals die verschiedenen Posts zum Thema im Überblick:

An dieser Stelle Danke für das positive Feedback und dem starken Interesse an der Serie und dem Thema Reporting. Hier sei auch nochmals auf die NETWAYS Reports auf netways.org hingewiesen. Sollten Fragen offen geblieben sein, so freue ich mich über Kommentare oder Gespräche auf der Open Source Monitoring Conference nächste Woche.
Alle Beispielreports befinden sich auch auf dem Demo-System und können dort gegen unser Nagios-Demo-System gestartet werden.

Bernd Erk
Bernd Erk
CEO

Bernd ist Geschäftsführer der NETWAYS Gruppe und verantwortet die Strategie und das Tagesgeschäft. Bei NETWAYS kümmert er sich eigentlich um alles, was andere nicht machen wollen oder können (meistens eher wollen). Darüber hinaus startete er früher das wöchentliche Lexware-Backup, welches er nun endlich automatisiert hat. So investiert er seine ganze Energie in den Rest der Truppe und versucht für kollektives Glück zu sorgen. In seiner Freizeit macht er mit sinnlosen Ideen seine Frau verrückt und verbündet sich dafür mit seinen beiden Söhnen und seiner Tochter.

Weekly Snap: J for Jasper and J2EE monitoring

weekly snapOct 12-16 offered Jasper reporting and J2EE monitoring tips on the NETWAYS Blog for a chill week in both tone and temperature.
On monitoring J2EE with Nagios, we briefly touched on two methods- the standard check_jmx and the less known, though noteworthy check_jmx4perl.
On the Jasper front Bernd steadfastly ploughed on, sharing his tips on business process reporting and report distribution. Because service availability often involves various components working in harmony, Bernd showed how to monitor and report on complex business process with aggregated host and services according to definable rules.
Building on his prior post on Jasper server for the dispatch of reports, Bernd delved deeper into the configuration of the integrated Quartz Scheduler, alongside report parameters, recurrence and storage over the web interface.
For those who may have lost track of Bernd’s Jasper musings, next week he’ll round up his record long series which we became so fond of.

Jasper Reporting – Distribution

Jasper-ReportingDer vorerst letzte Teil unserer Jasper Serie widmet sich der automatischen Erzeugung und Versendung von Berichten mit Hilfe des JasperServers.  Die Konfiguration des Schedulers erfolgt über das Webinterface und erlaubt neben der Speicherung von bestimmten Reportparametern auch die Speicherung der versendeten Berichte auf dem Server.
Reports auf Basis von beweglichen Daten, wie in unserem Beispiel die NDO, sollten ergänzend zur Versendung besser gespeichert werden, da der entsprechende Bericht ja nicht wiederherstellbar ist!
Bevor die erzeugten Berichte versendet werden können, muss noch die SMTP-Konfiguration des integrierten Quartz-Schedulers erfolgen. Hierfür werden SMTP-Server und ggf. User und Passwort in der Datei js.quartz.properties angepasst. Die Datei befindet sich im Verzeichnis /apache-tomcat/webapps/jasperserver.
Ein Beispiel:
[code lang=“java“]
report.scheduler.mail.sender.host=localhost
report.scheduler.mail.sender.username=
report.scheduler.mail.sender.password=
report.scheduler.mail.sender.from=jasper@netways.org
report.scheduler.mail.sender.protocol=smtp
report.scheduler.mail.sender.port=25
[/code]
Nach Neustart des Servers sind die Einstellungen aktiv und mögliche Probleme sind im Logfile des Tomcat-Servers (/apache-tomcat/logs) zu sehen.
post14_screen1Das Webinterface ermöglicht über die entsprechende Schaltfläche die Anlage von Jobs, nachdem ein entsprechender Report ausgewählt wurde.
Im ersten Übersichtsfenster erfolgt die Einstellung der Ausführungszeit und bei Aktivierung der „Calendar Recurrence“-Box wird eine Vielzahl von weiteren Optionen zur zeitgesteuerten Ausführung angezeigt.
post14_screen2post14_screen3Verfügt der gewählte Report über Parameter, so können die entsprechenden Einstellungen im nächsten Übersichtsfenster gesetzt werden. So kann ein Bericht unter Anlage verschiedener Jobs und Definition der Parameter für verschiedene Kunden erstellt und personalisiert zugestellt werden.
post14_screen4Der Bereich Output dient der Vorauswahl der erzeugten Formate und ggf. Lokation für verschiedene Sprachen sowie Angebe des Server-Ordners der zur Speicherung der Berichte verwendet werden soll. Ergänzend kann hier noch der Emailtext für den Empfänger eingegeben werden.
post14_screen5Sobald die Einstellungen gespeichert worden sind, zeigt ein kleines Uhrensymbol neben dem Bericht den entsprechenden Job an. Bevor der Bericht automatisiert an den Kunden versendet wird, empfiehlt sich eine Testphase auf ein eigenes Mailkonto und manueller Weiterleitung der Reports. Gerade am Anfang können Kleinigkeiten für einen unschönen Seitumbruch oder eine Fehlselektion der Daten verantwortlich sein.
Im nächsten Blog-Post werde ich die vergangenen Artikel nochmals zusammenfassen und ggf. auf Frage eingehen, die uns bis dahin erreicht haben und in den Kommentaren unbeantwortet geblieben sind.

Bernd Erk
Bernd Erk
CEO

Bernd ist Geschäftsführer der NETWAYS Gruppe und verantwortet die Strategie und das Tagesgeschäft. Bei NETWAYS kümmert er sich eigentlich um alles, was andere nicht machen wollen oder können (meistens eher wollen). Darüber hinaus startete er früher das wöchentliche Lexware-Backup, welches er nun endlich automatisiert hat. So investiert er seine ganze Energie in den Rest der Truppe und versucht für kollektives Glück zu sorgen. In seiner Freizeit macht er mit sinnlosen Ideen seine Frau verrückt und verbündet sich dafür mit seinen beiden Söhnen und seiner Tochter.

Weekly snap: From SMSFinder firmware and Jasper to UK & Open Source

weekly snapOct 5-9 took us across to the UK, deep into reporting and briefly on hardware.
Martin tipped off a new Multitech SMSFinder firmware, which offers load balancing for up to 4 Finders in a network, and multi-user interface for up to 20 simultaneous users.
Bernd then rolled on with his Jasper Reporting series and taught us how to define dynamic parameters for interactive reports and template functionality. After which, he stretched reporting to the past and showed how to generate host availability reports in Jasper with percentage availability for specified time periods in a neat pie chart.
On the open source UK thread, Julian celebrated the London Stock Exchange’s switch to Linux and Solaris for their .NET based trade platform, while we joined the Open Source Consortium in support of open fellows over there. Hopefully more news from that way will hit the blog in the future, so look out.

Jasper Reporting – Host Availability

Jasper-ReportingBisher haben wir uns lediglich den Konfigurationsdaten und dem aktuellen Status der Systeme gewidmet, aber wirklich spannend ist bei der Erstellung ja der Blick in die Vergangenheit und im Idealfall dann noch der Überblick über einen bestimmten Zeitraum.
Da die Verfügbarkeitsreports innerhalb von Nagios auf Filebasis erfolgen, müssen die Einträge in der Datenbank erst aufbereitet werden, vorausgesetzt man möchte sich nicht selbst darum kümmern.
Um eine Durchschnittsaussage über einen größeren Zeitraum durchzuführen, müssen die einzelnen Statuswechsel und die Zeiträume dazwischen analysiert und summiert werden. Das ganze kann mit Hilfe unseres Packages netMySLA erfolgen, dass genau diese Informationen in einem nächtlichen Batch ermittelt und in entsprechenden Aggregatstabellen speichert. Nach Installation dieses Packages kann unsere Abfrage wie folgt erweitert werden:
[code lang=“sql“]
select c.alias,
a.host_object_id,
a.display_name,
a.address,
e.sla_availability_percent,
e.sla_outage_percent,
e.sla_period_identifier,
d.current_state
from nagios_hosts a,
nagios_hostgroup_members b,
nagios_hostgroups c,
nagios_hoststatus d,
np_aggregate_sla e
where a.host_object_id = b.host_object_id
and b.hostgroup_id = c.hostgroup_id
and a.host_object_id = d.host_object_id
and a.host_object_id = e.sla_host_objectid
and a.instance_id = 1
and b.instance_id = 1
and c.instance_id = 1
and d.instance_id = 1
and e.sla_service_name is null
and e.sla_period_name = ‚month‘
and e.sla_period_identifier > ‚2009-06-01‘
[/code]
Das Datum ist hier fälschlicherweise fest Codiert und muss in Realität entweder parametrisiert oder via Datums-Parameter gefüllt werden. Mit diesem Statement bekommen wir anschließend sowohl den aktuellen Status als auch den prozentualen Anteil der Verfügbarkeit in dem angegebenen Monatszeitraum.
post12_screen1Da die Darstellung unter Verwendung eines Kuchendiagramms erfolgen soll, ist dieses über die Palette in den Detailbereich des Reports einzufügen.
Die Datenübergabe an das Diagramm erfolgt wie in den vorhergehenden Beispielen mittels Kontextmenü. Wichtig ist, dass das Kuchendiagramm mit zwei Serien bestückt wird.
Serie Availability:
Key expression: „Availability“
Value expression:
[code lang=“java“]
$F{sla_availability_percent}
[/code]
Serie Outage:
Key expression: „Outage“
Value expression:
[code lang=“java“]
$F{sla_outage_percent}
[/code]
post12_screen2Wenn das Diagramm korrekt im Detailbereich platziert worden ist, wird die entsprechende Verfügbarkeit nun pro definiertem Service dargestellt. Um bei der Anzeige mit Ausfallkandidaten zu beginnen, genügt es dem Statement noch ein „order by e.sla_outage_percent“ anzuhängen.
Hier kann der erstellte Beispielbericht wie gewohnt geladen werden. Die Vorlage gibt es bei netways.org und auf unserem Demo-System.
Der nächste Teil der Serie ergänzt das Thema Verfügbarkeit noch mit der Integration des Business Process Addons for Nagios.

Bernd Erk
Bernd Erk
CEO

Bernd ist Geschäftsführer der NETWAYS Gruppe und verantwortet die Strategie und das Tagesgeschäft. Bei NETWAYS kümmert er sich eigentlich um alles, was andere nicht machen wollen oder können (meistens eher wollen). Darüber hinaus startete er früher das wöchentliche Lexware-Backup, welches er nun endlich automatisiert hat. So investiert er seine ganze Energie in den Rest der Truppe und versucht für kollektives Glück zu sorgen. In seiner Freizeit macht er mit sinnlosen Ideen seine Frau verrückt und verbündet sich dafür mit seinen beiden Söhnen und seiner Tochter.