GithubHelp home page GithubHelp logo

eos-toolkit's Introduction

eos-toolkit

  • cpu,memory,connecitons monitor
python /path/eos-toolkit/monitor/eos_process_monitor.py
  • node alive,height check
python /path/eos-toolkit/monitor/node_monitor.py
  • bp status(rank,votes,reward,claim_time) monitor
python /path/eos-toolkit/monitor/bp_status_monitor.py
  • bidname status monitor
python /path/eos-toolkit/monitor/bidname_status.py
  • bp produce monitor
python /path/eos-toolkit/monitor/bp_block_monitor.py
  • auto claim
1) setup permission claim for claimrewards and import claim's private key
2) use 'verbose-http-errors = true' get verbose error output when claim failed
3) /path/eos-toolkit/claim/auto_claim.sh
  • log parser and trxs,latency metrics collect
1) change config eos_log_file
2) python /path/eos-toolkit/log_monitor/eos_log_monitor.py

Environment

python 2.7

Requirements

apt-get install bc jq
pip install -r requirements

Configuration

config/config.conf
[eos]
bp_account      = eosantpoolbp
bidname_list    =                            # e.g. eos,one
process_name    = nodeos                     # node process name to get pid
eos_log_file    = /path/eos.log
remote_api_list = http://api.bp.antpool.com, # external api list for height check
local_api       = http://127.0.0.1:8888      # local api
max_height_diff = 5                          # max diff for alarm

[claim]
eos_client      = /path/cleos
wallet_name     = default
wallet_password =
wallet_api      = http://127.0.0.1:8900

[monitor]
# monitor process enable or not for start/monitor_start.py
node_monitor      = true
process_monitor   = true
bp_block_monitor  = false
bp_status_monitor = false
bidname_monitor   = false
auto_claim        = false

[metrics]
prometheus_host_port =

[logger]
log_home         = default                   # default is /path/eos-toolkit/logs
monitor_log_file = monitor.log
console_enable   = true
file_enable      = true

# add own info or add other notify tools slack/sms/email...
[notify]
beary_id            =    # for bp status or other normal status notify
beary_token         =
ding_talk_token     =
err_beary_id        =    # for exception info notify
err_beary_token     =
err_ding_talk_token =
telegram_chat_id    =
telegram_token      =

Notify

utils/notify.py
add other tools e.g. sms/email...

Metric

utils/metric.py
add metric collector

Auto Install & Run

install
/path/eos-tookit/start/install.sh
1) auto install requirements
2) auto install systemctl service

run
/path/eos-tookit/start/start_all_service.sh

LogParser & Monitor

choose any one:
1./path/eos-tookit/log_monitor/eos_log_monitor.py

2.systemctl
create /usr/lib/systemd/system/eoslogmonitor.service
e.g. eos-toolkit/systemctl/eoslogmonitor.service

systemctl start eoslogmonitor.service
systemctl restart eoslogmonitor.service
systemctl stop eoslogmonitor.service

Monitor

choose any one:
1./path/eos-tookit/start/monitor_start.py

2.systemctl
create /usr/lib/systemd/system/eosmonitor.service
e.g. eos-toolkit/systemctl/eosmonitor.service

systemctl start eosmonitor.service
systemctl restart eosmonitor.service
systemctl stop eosmonitor.service

3.crontab
*/1 * * * * python /path/eos-toolkit/monitor/eos_process_monitor.py
*/5 * * * * python /path/eos-toolkit/monitor/node_monitor.py
*/10 * * * * python /path/eos-toolkit/monitor/bp_status_monitor.py
*/30 * * * * python /path/eos-toolkit/monitor/bidname_status.py
*/3 * * * * python /path/eos-toolkit/monitor/bp_block_monitor.py
0 */1 * * * /path/eos-toolkit/claim/auto_claim.sh

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.