Skip to content
A full featured Generic SNMP data collector with Web Administration Interface for InfluxDB
Branch: master
Clone or download
toni-moreno Merge pull request #398 from yytsui/master
fix #397: build failure - Cannot find name 'Exclude'
Latest commit 3c62474 Mar 23, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github released version 0.7.3 and updated CHANGELOG Jun 26, 2017
Godeps updated GoSNMP library with improved debug messaging system Sep 23, 2017
conf device stats refactor, also added inheritDeviceTags option to send de… May 1, 2017
docker added arch/dist variables in the docker build script, fix #360 Aug 16, 2018
e2e changed npm dependencies moved sources to src, added standar angular-… Dec 21, 2016
log added log dir Jun 8, 2016
packaging added rpm and deb packaging options to the build system Dec 31, 2016
pkg Improvement: refactor code comments Nov 14, 2018
src fix UI Conversion Selector , fixes #379 Nov 14, 2018
vendor updated GoSNMP library with improved debug messaging system Sep 23, 2017
.bra.toml device stats refactor, also added inheritDeviceTags option to send de… May 1, 2017
.editorconfig cleaning old unnused files Dec 20, 2016
.gitignore minor memory improvements Jan 17, 2018
CHANGELOG.md released 0.8 version Nov 5, 2018
LICENSE first commit: client and server skeleton Apr 15, 2016
README.md Fix mispelling in readme Oct 25, 2018
TODO.md switch from grunt to gulp task automation system Jun 10, 2016
angular-cli.json UI Initial Angular 4 migration Dec 1, 2017
build.go fix docker package name May 24, 2018
karma.conf.js changed npm dependencies moved sources to src, added standar angular-… Dec 21, 2016
package.json fix #397: build failure - Cannot find name 'Exclude' Mar 22, 2019
protractor.conf.js changed npm dependencies moved sources to src, added standar angular-… Dec 21, 2016
proxy.conf.json UI API refactor, updated all components with the new defined API Jan 25, 2017
tslint.json cleaning old unnused files Dec 20, 2016

README.md

SnmpCollector Go Report Card

SnmpCollector is a full featured Generic SNMP data collector with Web Administration Interface Open Source tool which has as main goal simplify the configuration for getting data from any device which snmp protocol support and send resulting data to an influxdb backend.

For complete information on installation from binary package and configuration you could read the snmpcollector wiki.

If you wish to compile from source code you can follow the next steps

Run from master

If you want to build a package yourself, or contribute. Here is a guide for how to do that.

Dependencies

  • Go 1.5 for snmpcollector < 0.8
  • Go 1.11 for snmpcollector >= 0.8
  • NodeJS >=6.2.1

Get Code

go get -d github.com/toni-moreno/snmpcollector/...

Building the backend

cd $GOPATH/src/github.com/toni-moreno/snmpcollector
go run build.go setup            # only needed once to install godep
godep restore                    # will pull down all golang lib dependencies in your current GOPATH

Building frontend and backend in production mode

npm install
PATH=$(npm bin):$PATH            # or export PATH=$(npm bin):$PATH depending on your shell
npm run build:prod               # will build fronted and backend

Creating minimal package tar.gz

After building frontend and backend you wil do

npm run postbuild #will build fronted and backend

Creating rpm and deb packages

you will need previously installed the fpm/rpm and deb packaging tools. After building frontend and backend you will do.

go run build.go latest

Running first time

To execute without any configuration you need a minimal config.toml file on the conf directory.

cp conf/sample.config.toml conf/config.toml
./bin/snmpcollector

This will create a default user with username adm1 and password adm1pass (don't forget to change them!).

Recompile backend on source change (only for developers)

To rebuild on source change (requires that you executed godep restore)

go get github.com/Unknwon/bra
npm start

will init a change autodetect webserver with angular-cli (ng serve) and also a autodetect and recompile process with bra for the backend

Online config

Now you wil be able to configure metrics/measuremnets and devices from the builting web server at http://localhost:8090 or http://localhost:4200 if working in development mode (npm start)

Offline configuration.

You will be able also insert data directly on the sqlite db that snmpcollector has been created at first execution on config/snmpcollector.db examples on example_config.sql

cat conf/example_config.sql |sqlite3 conf/snmpcollector.db
You can’t perform that action at this time.