Welcome to ConSol* Labs

Labs is a technical playing field sponsored by ConSol* where we – the employees – can share our Open Source involvement. We use this site to blog about our area of personal interest, from the daily business at work and from our spare time projects.

Citrus and Arquillian both refer to themselves as integration test frameworks. Following from that you might think these frameworks somehow ship the same package but this is not the case. In fact the frameworks work brilliant together when it comes to automate the integration testing of JEE applications.

Arquillian has a focus on simplifying the archive deployment with the ability to run integration test cases inside the boundaries of an application container. The tests are literally part of a server deployment. This approach brings great advantages such as accessing deployment and container resources within the test case. The application is deployed to a real application server (e.g. Tomcat, Wildfly) which is a good idea as we then also test our application server configuration and we load the application with all container managed resources such as database connections, JNDI resources and so on. Secondly the test case itself is able to directly use the container managed resources with injection in the Arquillian test case which is a great thing to do! It becomes very easy to invoke your services in a close to production nature then.

more...

Author:

Jeder Icinga-Admin kennt das: Ein Gerät, eine Applikation oder eine Datenbank soll überwacht werden, es gibt auch eine extra Monitoring-Kennung dafür, aber das zugehörige Passwort ist einfach nur grauenhaft. Sei es aufgrund einer Vorschrift oder weil der DBA ein Sadist ist, häufig enthält das Passwort Zeichen, welche bei der Ausführung des Plugins durch eine Shell Probleme bereiten können. Dazu zählen alle Arten von Anführungszeichen, Strichpunkt, Kaufmanns-Und oder gar nicht druckbare Zeichen.
So eine Command-Definition

define command {
  command_name check_mssql_health
  command_line $USER1$/check_mssql_health \--hostname $ARG1$ \--username '$ARG2$' \--password '$ARG3$' ...
}

schließt zwar den ganzen Dreck in einfache Hochkommas ein, aber was, wenn das Passwort selber ein Hochkomma enthält?

Current Status:WARNING (for 0d 0h 6m 3s)
Status Information:[sh: -c: line 0: unexpected EOF while looking for matching `''
sh: -c: line 1: syntax error: unexpected end of file]


Damit das nicht passiert und auch die Icinga-Konfigurationsdateien von Sonder- und Schmierzeichen aller Art verschont bleiben, können die Plugins aus der check_*_health-Familie sowie check_hpasm seit den letzten Releases mit encodierten Passwörtern versorgt werden. Man hantiert also nur noch mit [A-Za-z0-9].

more...

Author:Gerhard Laußer
Tags:Nagios, check_oracle_health, check_mssql_health, check_hpasm, coshsh
Categories:nagios, omd

Eine neue Ausgabe der ConSol*-Monitoring-Minutes ist seit heute bei Youtube online. Matthias Gallinger erklärt, wie man in einer DMZ einen Gearman-Worker einrichtet, ohne daß man sich beim Firewall-Admin unbeliebt macht.

Author:Gerhard Laußer
Tags:Nagios, mod-gearman, dmz
Categories:nagios, omd

Just recently I gave a presentation on Git (the version control system, not the British pejorative). I introduced newbies to the Git world and the concepts behind it and demonstrated advanced users some lesser known Git features.

Additionally, I introduced my personal workflow when working on small scale features, let’s say the size of one commit to the main line. Some of my colleagues found this workflow to be particularly interesting, so I’d like to share it here and discuss its benefits and drawbacks.

more...

Author:Christian Guggenmos
Tags:git, workflow
Categories:git

Beim Monitoring von SAP mit check_sap_health wurden bisher die Bereiche CCMS, Verbuchungssystem und Shortdumps abgedeckt. Mit der neuen Version können nun auch Hintergrundjobs überwacht werden. Folgende Anforderungen wurden implementiert:

  • check_sap_health soll Jobs melden, welche einen fehlerhaften Status haben. Würde man in SM37 nachschauen, dann würde man bei diese(n) Job(s) den Status aborted angezeigt bekommen
  • Defaultmäßig interessiert sich das Plugin nur für die vergangenen 60 Minuten, also die Jobs die in der letzten Stunde fertig geworden (oder abgebrochen) sind. Eine andere Zeitspanne ist einstellbar (so gibt es das auch beim Shortdump-Check). Dadurch hat der Service bei einem üblichen 5-Minuten-Check-1-Minute-Retry-Intervall die Gelegenheit, kritisch zu werden und eine Notification zu verschicken und nach kurzer Zeit wieder grün zu werden.
  • Die Sicht des Plugins kann mit Hilfe des Parameters --name auch auf bestimmte Jobs eingegrenzt werden. Es interessiert sich dann ausschließlich für Jobs dieses Namens. Damit lassen sich eigene Services einrichten, die speziell die Jobs bestimmter Applikationen bzw. des Systeme überwachen.
  • Bei allen Jobs, die in den letzten 30 Minuten fertig geworden sind, wird die Laufzeit mit vorgegebenen Schwellwerten verglichen. (--warning/critical). Bei Überschreitung gibt es Alarm. Die Laufzeit wird als <jobname>_runtime=… in den Performancedaten auftauchen.

more...

Author:Gerhard Laußer
Tags:Nagios, SAP, omd, Icinga, naemon, Netweaver
Categories:nagios, omd

In this post I will continue with the Apache Camel integration testing scenario that we have worked on in part one and part two of this series.
This time we focus on exception handling in Camel routes. First of all let’s add exception handling to our Camel route.

more...

Author:Christoph
Tags:Citrus
Categories:citrus

In part one of this blog series we have used Citrus in combination with Apache Camel for setting up a complete integration test scenario. Remember we have interacted with our Camel route
via JMS as client and via SOAP Http WebService as a server.
Now in the second part we want to interact with a Camel route using direct and Seda in memory message transports. First of all we need a Camel route to test.

more...

Author:Christoph
Tags:Citrus
Categories:citrus

One of the most often requested features is the possibility to place hosts, services and host/servicegroups on a geomap.
Now with release 1.88 Thruk made a major change in its panorama dashboard to support this kind of map too.

more...

Author:Sven Nierlein
Tags:Nagios, Thruk, omd, Icinga, naemon, Dashboard, GeoMap
Categories:nagios, omd, thruk, naemon

Eine Konferenz in einem Vergnügungspark? Klang zunächst so ungewöhnlich, wie spannend. Zugegebenermaßen konnten wir uns im Vorfeld auch nicht genau vorstellen, wie so etwas aussehen wird. Und bereits beim Check-In im Hotel wurde klar: Das wird kein rein monotoner Talk-Marathon. Die beiden Hotels, welche von ConSol* bezogen wurden, hatten jeweils ein Motto (asiatisch und afrikanisch) und wussten dieses auch für die Gäste, teils sehr detailverliebt, darzustellen. Nachfolgend wollen wir ein paar unserer persönlichen Eindrück schildern:

more...

Author:Tobias Schneck

This blog post shows how to set up the new Docker plugin for Intellij IDEA 14.1 on Ubuntu Linux 14.10.
**1. Install Docker
If you haven’t installed Docker already, use the following command to install it:

wget -qO- https://get.docker.com/ | sudo sh

more...

Author:Fabian Stäber
Categories:docker