Yet another node info collector - for respondd to be used with meshviewer to Grafana (with influxdb or graphite) https://www.gitbook.com/book/freifunkbremen/yanic/details
Go to file
Julian Kornberger 35094c9d3d Rename -c to -config 2016-03-12 16:40:41 +01:00
data Copy data structs from node-informant/gluon-collector/data 2016-03-12 16:21:09 +01:00
models Copy data structs from node-informant/gluon-collector/data 2016-03-12 16:21:09 +01:00
respond Copy data structs from node-informant/gluon-collector/data 2016-03-12 16:21:09 +01:00
websocketserver Use direct assignment 2016-02-26 10:40:17 +01:00
.gitignore switch to config-file 2016-03-07 09:55:58 +01:00
.gitmodules switch to config-file 2016-03-07 09:52:52 +01:00
README.md extract webrootdir 2016-02-26 09:33:07 +01:00
config_example.yaml Store statistics to influxdb 2016-03-12 03:36:02 +01:00
main.go Rename -c to -config 2016-03-12 16:40:41 +01:00
stats_db.go Optimize batch insertion 2016-03-12 16:30:20 +01:00

README.md

README

micro-daemon is a respond daemon to fetch information for Freifunk Nodes and represent this information with Websocket- and JSON-APIs.

Issues/Features in the Future

It will also APIs for manipulate the fetched data and give a access for ansible to push changes to the nodes.

Also it's will push statistic informations to a influxdb.

Usage

Usage of ./micro-daemon:
  -collectInterval int
    	interval for data collections (default 15)
  -host string
    	path aliases.json file
  -httpdir string
    	a implemented static file webserver (default "webroot")
  -path-aliases string
    	path aliases.json file (default "webroot/aliases.json")
  -path-nodes string
    	path nodes.json file (default "webroot/nodes.json")
  -port string
    	path aliases.json file (default "8080")
  -saveInterval int
    	interval for data saving (default 60)

Development

respond

It send the gluon-neighbour-info request and collect them together.

It will send UDP packetes by the multicast group ff02:0:0:0:0:0:2:1001 and port 1001.

modes.Nodes

It cached the Informations of the Nodes and will save them periodical to a JSON file. The current nodes are saved default under nodes.json.

websocketserver

One Instance is running under /nodes which send updates or new Nodes, which are collected by respond.

Issues

Later there should be also /aliases Websocket with Authentification to manage the aliases.json with the request for changes.

A Implementation of the connection to influxdb are also needed, maybe log a little bit to telegraf from influxdb.