XPL Logger MongoDB

De DomoTiki.eu, le wiki de la domotique
Aller à : navigation, rechercher

Permet d'archiver les messages Xpl dans une base de données de type MongoDB.

XPL-Logger-MongoDB sur GitHub

Import des données[modifier]

A l'aide du script convert-xpl-logger-mysql-to-mongodb.pl :

$ ./convert-xpl-logger-mysql-to-mongodb.pl --usage        
Usage:
     convert-xpl-logger-mysql-to-mongodb.pl [options]
     where valid options are (default shown in brackets):
       -usage - show this help text
       -in_host - input hostname (localhost)
   	-in_db - input database name (xpl)
   	-in_user - input username (root)
   	-in_password - input password (me)
   	-out_host - output hostname (localhost)
   	-out_db - output database name (xpl)
   	-out_collection - output collection (msg)

Exemple d'exécution :

$ ./convert-xpl-logger-mysql-to-mongodb.pl
./convert-xpl-logger-mysql-to-mongodb.pl -in_password 
Found 7757017 xPL messages...
Found 119756 xPL messages elements ...
Loading xPL messages elements ... done
Converting [ 13000 / 7757017 ] ~ 0.168% Elapsed     1s ETA:   810s.

Le message d'erreur suivant :

can't map file memory - mongo requires 64 bit build for larger datasets

Signifie que vous avez atteint la limite d'une instance 32 bits de MonogoDB. Voir 32-bit limitations.

Analyse des données[modifier]

Nombre de messages[modifier]

db.msg.count();
1223940123

Messages par classe[modifier]

db.msg.distinct("class");
[ "hbeat", "homeeasy", "security", "sensor", "x10" ]

Liste des périphériques[modifier]

db.msg.distinct("device");
[ "10.0C6570010800", "10.416670010800" ]

Nombre de heart beats[modifier]

db.msg.find({class:"hbeat", class_type: "app"}).count();
34344561

Liste des sources[modifier]

db.msg.distinct("source");
[ "bnz-ccost.tof", "bnz-owfs.meuh" ]