Fast Server Monitor in Go
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config
rest
route
service
stream
util
vendor
view
.gitignore
.travis.yml
Build.sh
BuildMulti.sh
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Dockerbuild.sh
Dockerfile
Dockerpush.sh
Gopkg.lock
Gopkg.toml
LICENSE
Makefile
README.md
coverage.sh
main.go

README.md

Fast Server Monitor in Go

Build Status codecov Go Report Card GoDoc License

Gonitor is fast server monitor service that make monitoring servers easy and simple. Gonitor provides many cool features for monitoring server CPU, Memory, GPU, Disk, Load, Network, etc. If you like or use Gonitor, please star or share it !

Features

  • Provides server CPU, Memory, GPU, Disk, Load, Network, Host and Runtime information
  • Supports REST API and Swagger UI
  • Supports real-time monitoring with Stream
  • Supports mutiple-platform build (darwin, windows and linux)
  • Supports Docker build and Travis CI

Installation

Get the gonitor repository

go get github.com/gonitor/gonitor

cd echo $GOPATH/src/github.com/gonitor/gonitor

And install dependencies

go get -u github.com/golang/dep/cmd/dep

dep ensure

Running the tests

Run all tests

go test ./...

Or run all tests with coverage

bash coverage.sh

Build and Run

Run main.go

go run main.go
# serve at localhost:9000
# serve REST API at localhost:9000/rest
# serve Stream API at localhost:9000/stream (IE browser is not supported)

Build and run native binary

bash Build.sh

./gonitor.out

Build native binary for multiple platforms (darwin, windows and linux)

bash BuildMulti.sh

Environment variables

    # enable production mode, default is false
    env GONI_PRODMODE=true
    
    # disable REST API, default is true
    env GONI_REST=false

    # disable Stream API, default is true
    env GONI_STREAM=false

    # combine three environment variables
    env GONI_PRODMODE=true GONI_REST=false GONI_STREAM=false

Docker support

Build docker image

bash Dockerbuild.sh

Run docker container

docker run -d --name gonitor -p 9000:9000 gonitor/gonitor

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the MIT License - see the LICENSE file for details