PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Slobberbone : check_bdd_request : Plugin Nagios tout terrain pour requêter des bases de données

vendredi 1 mars 2013 à 17:00

Bonjour à tous, j'ai eu un besoin particulier concernant le monitoring en place au sein d'Opti-Time. du coup, ni une, ni deux après une brève recherche, je n'ai pas trouvé mon bonheur, alors hier soir , j'ai pris mes 2 mains et hop au boulot ! Ce fût rapide et vous le verrez il n'y a rien d'extraordinaire ! Mais voilà que ça a donnée naissance à un projet de plus : http://www.slobberbone.net/dotclear/index.php?pages/check_bdd_request

Je vous recopie la page ici même pour en faire profiter un maximum ;) !

Présentation

Ce projet est un projet sous licence GPL v2. Cette commande est un plugin pour Nagios 3.x, développé en PERL.

Son objectif est de permettre d’exécuter n'importe quelle requête à un serveur de base de données. Dans un premier temps, cela ne fonctionne qu'avec un serveur MySQL, mais ça ne doit aps être compliqué de faire ce qu'il faut pour PostgreSQL, Oracle, ect ...

Ce plugin permet 2 choses pour le moment :

Pour le reste, je vous laisse parcourir le fichier, tout doit être dedans ;)  et assez explicite ! Sinon, vous savez où me trouver ;)

Installation

Vous l'aurez compris, pour l'utiliser, il suffit d'un serveur Nagios (Installer Nagios sur CentOS sans RPM) sur lequel vous aurez installé les packages suivant :

# yum install perl perl-DBD-MySQL perl-DBI

Une fois fais, il ne vous reste qu'à placer check_bdd_request.pl dans le répertoire libexec de votre arborescence Nagios :

# chmod +x check_bdd_request.pl

Et voilà, le tour est joué !

$ perl check_bdd_request.pl --help

Check_MySQL_request for Nagios, version 1.0
GPL licence, (c)2013 Slobberbone

Site http://www.slobberbone.net

Usage: ./check_bdd_request.pl -H -u -p -d -P -q request -t check_type -o [-w -c -T ] -V
-h, --help
print this help message
-H, --hostname=HOST
name or IP address of MySQL server
-u, --user=USER
mysql user to login
-p, --password=PASSWORD
mysql password
-d, --database=DATABASE
mysql database name
-P, --port=PORT
Http port
-q, --request="REQUEST"
Request to execute on the server
-t, --check_type=TYPE
Type of return :
NUMERIC,
TEXT
-o, --operator=OPERATOR
Operator :
EQ for =,
LT for <,
GT for >,
LE for <=,
GE for >=,
DIF for !=
-w, --warn=INTEGER
number that will cause a warning completed by the OPERATOR
-1 for no warning
-c, --critical=INTEGER
number that will cause an error completed by the OPERATOR
-T, --timeout=INTEGER
timeout in seconds (Default: 15)
-V, --version
prints version number
Note :
The script will return
* With warn and critical options:
OK if we are able to connect to the MySQL server and #request count result respect ,
WARNING if we are able to connect to the MySQL server and #request count result unrespect ,
CRITICAL if we are able to connect to the MySQL server and #request count result unrespect ,
UNKNOWN if we aren't able to connect to the MySQL server

Configuration

Pour que ce plugin soit opérationnel avec notre serveur de supervision Nagios (ou Shinken), il faut ajouter dans le fichier commands.cfg :

# 'check_bdd_request_numeric' command definition
define command{
    command_name    check_bdd_request_numeric
    command_line    $USER1$/check_bdd_request.pl -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d $ARG3$ -P $ARG4$ -q $ARG5$ -t $ARG6$ -o $ARG7$ -w $ARG8$ -c $ARG9$
    }

# 'check_bdd_request_text' command definition
define command{
    command_name    check_bdd_request_text
    command_line    $USER1$/check_bdd_request.pl -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d $ARG3$ -P $ARG4$ -q $ARG5$ -t $ARG6$
    }

Puis, il ne vous reste plus qu'à l'appeler de la manière suivante :

define service{
    use            generic-service
    host_name        my_bdd_server
    service_description    A text value for display information like a version for example
    check_command        check_bdd_request_text!user!password!database!3307!"Select column_name from my table where row_text='value'"!TEXT
    normal_check_interval    60
}

define service{
    use            generic-service
    host_name        srv-heb-saria1
    service_description    A numeric value for display information and compare with operator to the Warning or Critical values
    check_command        check_bdd_request_text!user!password!database!3307!"Select column_name from my table where row_text='value'"!NUMERIC!LT!2!5
    normal_check_interval    60
}

Et voilà, il ne reste plus qu'à modifier ce projet pour vos propres besoins ! Pour ça, direction SourceForge.net !
Pour le reste, les commentaires sont ouverts sur la page du projet !

Gravatar de Slobberbone
Original post of Slobberbone.Votez pour ce billet sur Planet Libre.

Articles similaires

mozillaZine-fr : Firefox OS aurait-il échappé au radar de France Inter ?

vendredi 1 mars 2013 à 15:24

Les auditeurs du journal de 13h de France Inter ont eu la chance d'entendre aujourd'hui un reportage sur le Mobile World Congress (Congrès mondial du mobile) qui vient de se tenir à Barcelone, mais ils seront sans doute restés sur leur faim quant au contenu du reportage. En effet, pas un mot sur un des événements majeurs de ce salon : la présence d'un nouveau système pour téléphones mobiles, à savoir Firefox OS bien entendu. Le stand de Mozilla était-il trop orange au goût de M. Colombain, journaliste spécialiste des Nouvelles Technologies à Radio France ? ou bien juge-t-il qu'il est plus intéressant d'entendre une responsable marketing de Samsung annoncer la convergence des tablettes et des smartphones vers la taille de 7 pouces. On sait bien que les questions de taille intéressent tout le monde, mais enfin il y avait plus important à annoncer aux auditeurs de France Inter, dont probablement près de 30 % sont des utilisateurs de Firefox (si on en croit les statistiques de StatCounter pour la France). On n'ose pas imaginer que M. Colombain pourrait oublier de nous annoncer la sortie d'une nouvelle version de Windows Mobile, alors pourquoi passer sous silence celle d'un concurrent sérieux ? (pour le moment les perspectives de vente de Windows 8 Mobile ne sont pas extraordinaires). Bref, un rendez-vous raté. Mais ne désespérons pas, Firefox OS n'a pas fini de faire parler de lui.

Gravatar de mozillaZine-fr
Original post of mozillaZine-fr.Votez pour ce billet sur Planet Libre.

Articles similaires

Full Circle Magazine FR : Encore un Numéro spécial Python

vendredi 1 mars 2013 à 14:16

Bonjour à tous les fans de la série Programmer en Python !

Le numéro spécial Python, volume 6, est maintenant disponible sur la page Lire ou télécharger les numéros ou en cliquant directement sur l'image ci-dessous.

Python6fr.png

Ce numéro reprend les parties 32 à 38, parues précédemment dans les numéros 60 à 67 du FCM.

Bonne lecture et à bientôt !

Toute l'équipe du FCMfr

Gravatar de Full Circle Magazine FR
Original post of Full Circle Magazine FR.Votez pour ce billet sur Planet Libre.

Articles similaires

T. BRIOLET : openSUSE 12.3 RC2

jeudi 28 février 2013 à 15:36

La Release candidate 2 d’openSUSE 12.3 vient de sortir. Dans une semaine est prévue la Gold Master puis la version finale la semaine d’après, le 13 mars si tout va bien.

Grub2-opensuse12.3

Plusieurs bugs ont encore été corrigés mais c’est maintenant un travail de mise à jour de tous les paquets qui est en cours pour fournir un environnement le plus complet possible pour openSUSE 12.3.

Coté mise à jour, Firefox passe en version 19, PulseAudio passe en version 3.0 et le noyau Linux est livré en 3.7.9.

Voici le détail de cette RC2 :

 

UEFI et Secure Boot

Il devrait être possible d’installer openSUSE 12.3 sur une machine UEFI sans problèmes. Durant l’installation vous pouvez voir YaST décider d’utiliser la partition EFI comme la partition de boot avec /boot/efi comme point de montage. YaST va créer une nouvelle entrée « opensuse » dans le firmware qui gère le démarrage. Les développeurs travaillent activement à terminer le support de Secure Boot qui peut être testé dès cette RC2. Une option « Enable Secure Boot » est proposée à l’installation.

Changement dans les Live-openSUSE

De plus en plus de monde utilisant les clés USB, les images Lives dépassent maintenant la capacité d’un CD pour atteindre presque 1 Go.

Elles sont donc maintenant plus riches en contenu, avec notamment l’ajout de :

rhythmbox a également remplacé banshee pour la version GNOME.

Contribuez !

N’hésitez pas à tester cette CR2, vous pouvez la télécharger ici : http://software.opensuse.org/developer/fr

Retrouvez la méthode pour tester efficacement cette version ici : [en] http://en.opensuse.org/openSUSE:Testing

Et retrouver la liste des bugs déjà rencontrés ici : [en] http://en.opensuse.org/openSUSE:Most_annoying_bugs_12.3_dev

 

Les captures d’écrans ont été ajoutées pour openSUSE 12.3 ici : http://en.opensuse.org/Screenshots_12.3

Je vous ajoute cette capture que je viens de faire de l’écran d’accueil de KDE, on voit aussi que l’icône pour afficher les activités à été modifiée (en bas à gauche) :

opensuse12.3_KDE

 

Syvolc

Gravatar de T. BRIOLET
Original post of T. BRIOLET.Votez pour ce billet sur Planet Libre.

David Mercereau : pongSmtp.pl – Tester le bon fonctionnement de votre serveur mail

jeudi 28 février 2013 à 13:11

J’ai mis en place un bébé service pour tester du bon fonctionnement d’un serveur SMTP. En gros vous envoyer un email à ping [arobase] zici [point] fr (en l’occurrence) et vous recevrez en retour un email “pong” avec les entêtes du message reçu par le serveur.

Le mettre en place à la maison

Pré-requis : Perl & un serveur smtp configuré (pour moi c’est Postfix)

Ensuite 4 commandes et c’est réglé :

$ mkdir /opt/pongsmtp
$ wget "http://forge.zici.fr/p/pongsmtp/source/file/master/pongSmtp.pl" -O /opt/pongsmtp/pongSmtp.pl
$ echo "ping: \\"| perl /opt/pongsmtp/pongSmtp.pl\\"" >> /etc/aliases
$ newaliases

Note : Si vous mettez en place ce script n’hésitez pas à m’en faire part. Une petite liste de “ping@dom1.com, ping@dom2.com….” peut être intéressante…

Rien de plus à ajouter… si vous voyez des améliorations n’hésite pas !

Gravatar de David Mercereau
Original post of David Mercereau.Votez pour ce billet sur Planet Libre.