Le listener-rest est une source qui expose une API REST permettant d'ajouter de nouveaux hôtes via des requêtes HTTP contenant un objet décrivant un hôte au format JSON.
Voici un exemple de requête avec cURL :
curl -u USER:PASSWORD \
-H "Content-Type: application/json" \
-d '{"host_name":"my_host", "use":"linux", "address":"192.168.1.254"}' \
-X PUT 'http://SYNCHRONIZER-IP-INTERFACE:7761/shinken/listener-rest/v1/hosts/' |
Voici le fichier CFG de configuration présent dans : /etc/shinken/listeners/listener-rest.cfg
|
#===============================================================================
# listener-rest
#===============================================================================
# Daemons that can load this listener:
# - synchronizer
#===============================================================================
define listener {
listener_name listener-rest
#======== Module identity =========
# Listener type (to load module code). Do not edit.
module_type listener-rest
order 5
import_interval 0
# enabled: is this listener enabled or not
enabled 0
# description: display a description on the interface for this source
description The listener-rest allow listening by HTTP(s)/REST hosts
#======== Listening address =========
# host: IP address to listen to.
# note: 0.0.0.0 = all interfaces.
host 0.0.0.0
# port to listen
port 7761
} |
Il est possible de définir plusieurs instances de listener de type listener-rest, le paramètre module_name permet d'identifier une instance donnée.
| nom | type | défaut | commentaire | |
|---|---|---|---|---|
| Texte | listener-rest | Valeur obligatoire. Chaîne de caractères composée de lettres, de chiffres et des caractères _ et -, commençant par une lettre.
| |
| Texte | listener-rest | Valeur obligatoire et non modifiable ( permet au Synchronizer de charger le code logiciel correspondant ). |
| nom | type | défaut | commentaire | |
|---|---|---|---|---|
| Nombre | 0 | Intervalle de temps en minutes entre les imports automatiques de la source.
| |
| Nombre | 5 | L'ordre de la source dans l'interface de configuration ( A un impact dans la fusion des données lors des imports de sources ).
Remarque : Si vous changez l'ordre depuis l'interface ( page d’accueil ), le fichier .cfg sera mis à jour. |
Permet de préciser comment communiquer avec l'API ( son adresse et son port )
| nom | type | défaut | commentaire | |
|---|---|---|---|---|
| Texte ( adresse IP ) | 0.0.0.0 | Interface réseau sur la quelle l'API REST va écouter. Il n'est possible de mettre qu'une seule valeur. Remarque : L'adresse 0.0.0.0 correspond à toutes les interfaces réseau. | |
| Texte ( port réseau ) | 7761 | Le port réseau sur le quel l'API REST va écouter. |