__ __ _
\ \ / /_ _ _ __ (_) ___
\ V / _` | '_ \| |/ __|
| | (_| | | | | | (__
|_|\__,_|_| |_|_|\___|
Yet another node info collector
yanic
is a respondd client that fetches, stores and publishes information about a Freifunk network. The goals:
- Generating JSON for Meshviewer
- Storing statistics in InfluxDB or Graphite to be analyzed by Grafana
- Provide a little webserver for a standalone installation with a meshviewer
In the first step Yanic sends a multicast message to the group ff02:0:0:0:0:0:2:1001
and port 1001
.
Recently seen nodes that does not reply are requested via a unicast message.
Read comments in config_example.toml for more information.
Yanic provides several commands:
Run Yanic without any arguments to get the usage information:
Usage:
yanic [command]
Available Commands:
help Help about any command
import Imports global statistics from the given RRD files, requires InfluxDB
query Sends a query on the interface to the destination and waits for a response
serve Runs the yanic server
Flags:
-h, --help help for yanic
--timestamps Enables timestamps for log output
Use "yanic [command] --help" for more information about a command.
Usage:
yanic serve [flags]
Examples:
yanic serve --config /etc/yanic.toml
Flags:
-c, --config string Path to configuration file (default "config.toml")
-h, --help help for serve
Usage:
yanic import <file.rrd> [flags]
Examples:
yanic import --config /etc/yanic.toml olddata.rrd
Flags:
-c, --config string Path to configuration file (default "config.toml")
-h, --help help for import
Usage:
yanic query <interface> <destination> [flags]
Examples:
yanic query wlan0 "fe80::eade:27ff:dead:beef"
Flags:
-h, --help help for query
--wait int Seconds to wait for a response (default 1)
- meshviewer Freifunk Bremen with a patch to show state-version of
nodes.json
- grafana Freifunk Bremen show data of InfluxDB
Collecting data from respondd:
- HopGlass Server written in Node.js
Respondd for servers:
- ffnord-alfred-announce from FreiFunkNord
- respondd from Sunz3r