# README
nmon2influxdb
This application take a nmon file and upload it in a InfluxDB database. It generates also a dashboard to allow data visualization in Grafana. It's working on linux only for now.
Demo
A live demo is available at : demo.nmon2influxdb.org
user/password: demo/demo
It's a read only editor user. You can change anything but cannot save it.
Download
Go to my github repository Releases section
You can build the binary from source. You need to have a working GO environment, see golang.org installation instructions. Check GOPATH environment variable to be sure it's defined.
go get -u github.com/adejoux/nmon2influxdb
cd $GOPATH/src/github.com/adejoux/nmon2influxdb
go build
FULL Documentation available here
Copyright
The code is licensed as GNU AGPLv3. See the LICENSE file for the full license.
Copyright (c) 2014 Alain Dejoux [email protected]
# Functions
BuildGrafanaGraphPanel generates a grafana graph panel.
BuildGrafanaRow generate a row composed of panels.
BuildGrafanaTablePanel generates a grafana graph panel.
DisplayStats displays metrics statistics in text mode.
GetCfgFile returns the current configuration file path.
InitConfig setup initial configuration with sane values.
InitNmon init nmon structure for nmon file import.
InitNmonTemplate init nmon structure when creating dashboard.
InitSFTP init sftp session.
IsNotFile returns true if the file doesn't exist.
NameFilter add a Grafana filter on name tag.
NewNmon initialize a Nmon structure.
NmonDashboard entry point for nmon dashboard sub command.
NmonDashboardFile export dashboard to file.
NmonDashboardTemplate generates dashboard from toml template.
NmonImport is the entry point for subcommand nmon import.
NmonListMeasurement list all measurements in INFLUXDB database.
NmonStat get and display metrics statistics.
ParseParameters parse parameter from command line in Config struct.
ReplaceComma replaces comma by html tabs tag.
TagsFilter add a standard grafana filter.
# Structs
Config is the configuration structure used by nmon2influxdb.
DataSerie structure contains the columns and points to insert in InfluxDB.
FileScanner struct to manage.
Nmon structure used to manage nmon files.
NmonFile structure used to select nmon files to import.
NmonPanel custom Panel fro Grafana.
RemoteFileScanner struct for remote files.
SSHConfig contains SSH parameters.