tendermint/tm-monitor
Zach 47256cfda2 update ports from 466* to 266* (#104)
* updates ports from 466* to 266*

* missed a port
2018-06-22 19:55:07 +04:00
..
eventmeter Rename queries to queryToMetricMap 2018-03-28 18:37:39 +08:00
mock upgrade tendermint to v0.19.0 (#88) 2018-04-18 13:57:30 +02:00
monitor update ports from 466* to 266* (#104) 2018-06-22 19:55:07 +04:00
Dockerfile [tm-monitor] update docker alpine version 2017-07-29 13:50:09 -04:00
Dockerfile.dev [monitor/bench] fix Dockerfile.dev 2018-04-03 13:19:21 +02:00
Gopkg.lock upgrade tendermint to v0.19.0 (#88) 2018-04-18 13:57:30 +02:00
Gopkg.toml upgrade tendermint to v0.19.0 (#88) 2018-04-18 13:57:30 +02:00
LICENSE [tm-monitor] update Makefile 2017-12-06 14:21:02 -06:00
Makefile [monitor] update Makefile 2018-04-03 11:05:28 +02:00
README.md update ports from 466* to 266* (#104) 2018-06-22 19:55:07 +04:00
main.go update ports from 466* to 266* (#104) 2018-06-22 19:55:07 +04:00
rpc.go upgrade tendermint to v0.19.0 (#88) 2018-04-18 13:57:30 +02:00
ton.go [tm-monitor] extract lib to monitor/ dir 2017-03-16 14:53:32 +04:00
wire.go upgrade tendermint to v0.19.0 (#88) 2018-04-18 13:57:30 +02:00

README.md

tm-monitor

Tendermint blockchain monitoring tool; watches over one or more nodes, collecting and providing various statistics to the user:

Quick Start

Docker

Assuming your application is running in another container with the name app:

docker run -it --rm -v "/tmp:/tendermint" tendermint/tendermint init
docker run -it --rm -v "/tmp:/tendermint" -p "26657:26657" --name=tm --link=app tendermint/tendermint node --proxy_app=tcp://app:26658

docker run -it --rm -p "26670:26670" --link=tm tendermint/monitor tm:26657

If you don't have an application yet, but still want to try monitor out, use kvstore:

docker run -it --rm -v "/tmp:/tendermint" tendermint/tendermint init
docker run -it --rm -v "/tmp:/tendermint" -p "26657:26657" --name=tm tendermint/tendermint node --proxy_app=kvstore

docker run -it --rm -p "26670:26670" --link=tm tendermint/monitor tm:26657

Using Binaries

Install Tendermint

then run:

tendermint init
tendermint node --proxy_app=kvstore

tm-monitor localhost:26657

with the last command being in a seperate window.

Usage

tm-monitor [-v] [-no-ton] [-listen-addr="tcp://0.0.0.0:26670"] [endpoints]

Examples:
        # monitor single instance
        tm-monitor localhost:26657

        # monitor a few instances by providing comma-separated list of RPC endpoints
        tm-monitor host1:26657,host2:26657
Flags:
  -listen-addr string
        HTTP and Websocket server listen address (default "tcp://0.0.0.0:26670")
  -no-ton
        Do not show ton (table of nodes)
  -v    verbose logging

RPC UI

Run tm-monitor and visit http://localhost:26670 You should see the list of the available RPC endpoints:

http://localhost:26670/status
http://localhost:26670/status/network
http://localhost:26670/monitor?endpoint=_
http://localhost:26670/status/node?name=_
http://localhost:26670/unmonitor?endpoint=_

The API is available as GET requests with URI encoded parameters, or as JSONRPC POST requests. The JSONRPC methods are also exposed over websocket.

Development

make get_tools
make get_vendor_deps
make test