Giter VIP home page Giter VIP logo

tendermint-prometheus-exporter's Introduction

Tendermint Exporter Version

GitHub Actions Coverage Status Security Rating Build Automation Image Pulls

Tendermint exporter for Prometheus

Table of Contents

Download

docker pull dmi7ry/tendermint-prometheus-exporter:latest

See DockerHub Image

Run

docker run

docker run -d -—name tendermint-exporter --rm \
  -p 9697:9697 \
  dmi7ry/tendermint-prometheus-exporter:latest \
  serve [--port N] [--timeout N] \
  [--target scrape_url_1 [--status|--no-status] [--net-info|--no-net-info] [--candidates|--no-candidates] --]
  [--target scrape_url_2 [--status|--no-status] [--net-info|--no-net-info] [--candidates|--no-candidates] --]

Example

docker run -d -—name tendermint-exporter --rm \
  -p 9697:9697 \
  dmi7ry/tendermint-prometheus-exporter:latest \
  serve --port 9697 --timeout 5000 \
  --target https://api.minter.one --status --net-info --candidates --
  --target http://my-host:8841 --status --net-info --

docker-compose

See docker-compose.yml

Manual Build

Requirement: Just

just build-c

or

just build-nc

Flags

flag name defaults description
port 9697 port to listen at (should be exposed with -p arg)
timeout 1000 max response time to exporter waiting for in milliseconds
target null API url to scrape (port for Minter = 8841, for Cosmos = 26657)
status or no-status false enable scrape for /status url
net-info or no-net-info false enable scrape for /net_info url
candidates or no-candidates false enable scrape for /candidates url

NOTE

each target should be denoted with double dash after defenition (see docker run)

Minter Auto Provision

You can install & setup full stack just in one script

git clone https://github.com/dmitry-ee/tendermint-prometheus-exporter.git
cd tendermint-prometheus-exporter/provision/

then run:

  • ./provision-with-node.sh for deploy Minter-Node (with enabled Prometheus), Exporter, Grafana (with Dashboard) and Prometheus
  • ./provision-simply.sh for deploy only Exporter, Grafana (with Dashboard) and Prometheus

See provision with node and provision simply

Check & Set Minter API urls here or here

For manual dashboard import see Grafana Dashboard)

Supported Blockchains

Minter

Supported urls:

  • /status enables with --status flag
  • /net_info enables with --net-info flag
  • /candidates enables with --candidates flag

Grafana Dashboard

here (importable via Import Dashboard)

Metrics Sample

here

Cosmos

NOTE: Cosmos is not supported yet

Supported urls:

  • /net_info enables with --net-info flag

Metrics Sample

here

Preview

Dashboard Preview

Donate

BIP: Mx65bb9548ecde11e10cd823e365fd2fb0f4f03b25

QR

tendermint-prometheus-exporter's People

Contributors

dmitry-ee avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

tendermint-prometheus-exporter's Issues

candidates returned undefined

2020-09-06 11:04:40.073 disclaimer [index.js]: @@@@
2020-09-06 11:04:40.074 disclaimer [index.js]: Hello There!	This is Tendermint Prometheus Exporter v0.9.31
2020-09-06 11:04:40.074 disclaimer [index.js]: Project:		https://github.com/dmitry-ee/tendermint-prometheus-exporter
2020-09-06 11:04:40.074 disclaimer [index.js]: Donate:		BIP:Mx65bb9548ecde11e10cd823e365fd2fb0f4f03b25
2020-09-06 11:04:40.074 disclaimer [index.js]: @@@@
2020-09-06 11:04:40.075 warn [index.js]: starting with options {"_":["serve"],"port":9697,"target":["https://api.minter.one"],"t":["https://api.minter.one"],"status":[true],"net-info":[true],"netInfo":[true],"candidates":[true],"$0":"index","targets":[{"url":"https://api.minter.one","status":true,"net-info":true,"netInfo":true,"candidates":true}]}
2020-09-06 11:04:40.083 warn [index.js]: Starting exporter at port 9697...
2020-09-06 11:04:40.085 warn [index.js]: Exporter started at port 9697
2020-09-06 11:04:40.085 warn [index.js]: Setting retention timeout for 3600000 ms. (60 min.)
2020-09-06 11:10:07.745 error [index.js]: scrape:async -> response from https://api.minter.one/status returned undefined
2020-09-06 11:10:07.745 error [index.js]: undefined
2020-09-06 11:10:07.749 error [index.js]: scrape:async -> response from https://api.minter.one/candidates returned undefined
2020-09-06 11:10:07.749 error [index.js]: undefined

alpine install error

/app # apk add curl
ERROR: Unable to lock database: No such file or directory
ERROR: Failed to open apk database: No such file or directory
/app # 

remove line

rm -rf /lib/apk/db

or create an empty directory after rm

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.