├── .editorconfig
├── .gitignore
├── .travis.yml
├── CONTRIBUTING.md
├── LICENSE
├── Makefile
├── NOTICE
├── README.md
├── _meta
├── beat.yml
├── fields.generated.yml
├── fields.yml
└── kibana
│ ├── 5
│ └── index-pattern
│ │ └── eosbeat.json
│ └── 6
│ └── index-pattern
│ └── eosbeat.json
├── beater
└── eosbeat.go
├── cmd
└── root.go
├── config
├── config.go
└── config_test.go
├── data
└── meta.json
├── docs
├── fields.asciidoc
└── index.asciidoc
├── eosbeat.conf.yml
├── eosbeat.pid
├── eosbeat.reference.yml
├── eosbeat.tar.gz
├── eosbeat.yml
├── err.log
├── fields.yml
├── logs
└── eosbeat
├── main.go
├── main_test.go
├── nodes.json
├── out.log
├── release
├── eosbeat
├── eosbeat.conf.yml
└── nodes.json
├── run-eosbeat.sh
├── stop-eosbeat.sh
└── tests
└── system
├── config
└── eosbeat.yml.j2
├── eosbeat.py
├── requirements.txt
└── test_base.py
/.editorconfig:
--------------------------------------------------------------------------------
1 | # See: http://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | charset = utf-8
6 | end_of_line = lf
7 | insert_final_newline = true
8 | trim_trailing_whitespace = true
9 |
10 | [*.json]
11 | indent_size = 4
12 | indent_style = space
13 |
14 | [*.py]
15 | indent_style = space
16 | indent_size = 4
17 |
18 | [*.yml]
19 | indent_style = space
20 | indent_size = 2
21 |
22 | [Makefile]
23 | indent_style = tab
24 |
25 | [Vagrantfile]
26 | indent_size = 2
27 | indent_style = space
28 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /.idea
2 | /build
3 | /vendor
4 | .DS_Store
5 | /eosbeat
6 | /eosbeat.test
7 | *.pyc
8 | /release
9 | eosbeat.pid
10 | eosbeat
11 | /logs
12 | *.log
13 | /data
14 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: required
2 | dist: trusty
3 | services:
4 | - docker
5 |
6 | language: go
7 |
8 | go:
9 | - 1.9.4
10 |
11 | os:
12 | - linux
13 | - osx
14 |
15 | env:
16 | matrix:
17 | - TARGETS="check"
18 | - TARGETS="testsuite"
19 |
20 | global:
21 | # Cross-compile for amd64 only to speed up testing.
22 | - GOX_FLAGS="-arch amd64"
23 |
24 | addons:
25 | apt:
26 | packages:
27 | - python-virtualenv
28 |
29 | before_install:
30 | - umask 022
31 | # Redo the travis setup but with the elastic/libbeat path. This is needed so the package path is correct
32 | - mkdir -p $HOME/gopath/src/github.com/eosrio/eosbeat/
33 | - rsync -az ${TRAVIS_BUILD_DIR}/ $HOME/gopath/src/github.com/eosrio/eosbeat/
34 | - export TRAVIS_BUILD_DIR=$HOME/gopath/src/github.com/eosrio/eosbeat/
35 | - cd $HOME/gopath/src/github.com/eosrio/eosbeat/
36 |
37 | install:
38 | - true
39 |
40 | script:
41 | - make $TARGETS
42 |
43 | after_success:
44 | # Copy full.cov to coverage.txt because codecov.io requires this file
45 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosrio/eosbeat/be21d595ee3a14c4d2f60dd026c3e9cc7692fa11/CONTRIBUTING.md
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2017 EOS Rio
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
14 |
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | BEAT_NAME=eosbeat
2 | BEAT_PATH=github.com/eosrio/eosbeat
3 | BEAT_GOPATH=$(firstword $(subst :, ,${GOPATH}))
4 | BEAT_URL=https://${BEAT_PATH}
5 | SYSTEM_TESTS=false
6 | TEST_ENVIRONMENT=false
7 | ES_BEATS?=./vendor/github.com/elastic/beats
8 | GOPACKAGES=$(shell govendor list -no-status +local)
9 | PREFIX?=.
10 | NOTICE_FILE=NOTICE
11 | GOBUILD_FLAGS=-i -ldflags "-X $(BEAT_PATH)/vendor/github.com/elastic/beats/libbeat/version.buildTime=$(NOW) -X $(BEAT_PATH)/vendor/github.com/elastic/beats/libbeat/version.commit=$(COMMIT_ID)"
12 | GOOS=darwin
13 | GOARCH=amd64
14 |
15 | # Path to the libbeat Makefile
16 | -include $(ES_BEATS)/libbeat/scripts/Makefile
17 |
18 | # Initial beat setup
19 | .PHONY: setup
20 | setup: copy-vendor
21 | $(MAKE) update
22 |
23 | # Copy beats into vendor directory
24 | .PHONY: copy-vendor
25 | copy-vendor:
26 | mkdir -p vendor/github.com/elastic/
27 | cp -R ${BEAT_GOPATH}/src/github.com/elastic/beats vendor/github.com/elastic/
28 | rm -rf vendor/github.com/elastic/beats/.git
29 |
30 | .PHONY: git-init
31 | git-init:
32 | git init
33 | git add README.md CONTRIBUTING.md
34 | git commit -m "Initial commit"
35 | git add LICENSE
36 | git commit -m "Add the LICENSE"
37 | git add .gitignore
38 | git commit -m "Add git settings"
39 | git add .
40 | git reset -- .travis.yml
41 | git commit -m "Add eosbeat"
42 | git add .travis.yml
43 | git commit -m "Add Travis CI"
44 |
45 | # This is called by the beats packer before building starts
46 | .PHONY: before-build
47 | before-build:
48 |
49 | # Collects all dependencies and then calls update
50 | .PHONY: collect
51 | collect:
52 |
--------------------------------------------------------------------------------
/NOTICE:
--------------------------------------------------------------------------------
1 | eosbeat
2 | Copyright 2017 EOS Rio
3 |
4 | This product includes software developed by The Apache Software
5 | Foundation (http://www.apache.org/).
6 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | eosbeat
4 |
5 |
6 |
7 | Network metrics tool for EOS.IO networks based on Elastic Beats
8 |
9 |
10 | *Made with :hearts: by [EOS Rio](https://steemit.com/@eosrio)*
11 |
12 | # Introduction
13 |
14 | Eosbeat will allow nodes on a EOS.IO network to consume data from an api that provides optimized topology information, thus being able to automatically set the optimal peers of a node.
15 |
16 | Eosbeat works by collecting response times from your server to all other nodes on your network, as defined by the nodes.json file. The data is sent to EOS Rio server, which will be processed later to provide an overall view of network performance from EOS.IO nodes.
17 | The ideal scenario is to have eosbeat running on all participating nodes of a network.
18 |
19 | We will be soon releasing a dashboard page with all data collected from the current test networks.
20 |
21 | A central elasticsearch server is useful to streamline the development process, but as soon as the topology optimization algorithm is tuned we can move it to a smart contract based solution.
22 |
23 | ## Running
24 |
25 | To run on your node simply download the latest release, there's no need to install any dependencies.
26 | ```
27 | $ wget https://github.com/eosrio/eosbeat/releases/download/v0.3.0/eosbeat-v0.3.0.tar.gz
28 | $ tar -xzvf eosbeat-v0.3.0.tar.gz
29 | $ cd release
30 | ```
31 | Edit `eosbeat.conf.yml` and set username and password
32 |
33 | The current nodes will be loaded from the node.json file, which is currently set to the Jungle Testnet
34 |
35 | To start eosbeat run:
36 | ```
37 | $ ./run-eosbeat.sh
38 | ```
39 |
40 | Check the output logs
41 | ```
42 | $ tail -f out.log
43 | ```
44 |
45 | Stop with:
46 | ```
47 | $ ./stop-eosbeat.sh
48 | ```
49 |
50 |
51 | ## Building Instructions
52 |
53 | Ensure that this folder is at the following location:
54 | `${GOPATH}/src/github.com/eosrio/eosbeat`
55 |
56 | ### Requirements
57 |
58 | * [Golang](https://golang.org/dl/) 1.7
59 |
60 | ### Init Project
61 | To get running with Eosbeat and also install the
62 | dependencies, run the following command:
63 |
64 | ```
65 | make setup
66 | ```
67 |
68 | It will create a clean git history for each major step. Note that you can always rewrite the history if you wish before pushing your changes.
69 |
70 | To push Eosbeat in the git repository, run the following commands:
71 |
72 | ```
73 | git remote set-url origin https://github.com/eosrio/eosbeat
74 | git push origin master
75 | ```
76 |
77 | For further development, check out the [beat developer guide](https://www.elastic.co/guide/en/beats/libbeat/current/new-beat.html).
78 |
79 | ### Build
80 |
81 | To build the binary for Eosbeat run the command below. This will generate a binary
82 | in the same directory with the name eosbeat.
83 |
84 | ```
85 | make
86 | ```
87 |
88 | ### Run
89 |
90 | To run Eosbeat with debugging output enabled, run:
91 |
92 | ```
93 | ./eosbeat -c eosbeat.yml -e -d "*"
94 | ```
95 |
96 |
97 | ### Test
98 |
99 | To test Eosbeat, run the following command:
100 |
101 | ```
102 | make testsuite
103 | ```
104 |
105 | alternatively:
106 | ```
107 | make unit-tests
108 | make system-tests
109 | make integration-tests
110 | make coverage-report
111 | ```
112 |
113 | The test coverage is reported in the folder `./build/coverage/`
114 |
115 | ### Update
116 |
117 | Each beat has a template for the mapping in elasticsearch and a documentation for the fields
118 | which is automatically generated based on `fields.yml` by running the following command.
119 |
120 | ```
121 | make update
122 | ```
123 |
124 |
125 | ### Cleanup
126 |
127 | To clean Eosbeat source code, run the following commands:
128 |
129 | ```
130 | make fmt
131 | make simplify
132 | ```
133 |
134 | To clean up the build directory and generated artifacts, run:
135 |
136 | ```
137 | make clean
138 | ```
139 |
140 |
141 | ### Clone
142 |
143 | To clone Eosbeat from the git repository, run the following commands:
144 |
145 | ```
146 | mkdir -p ${GOPATH}/src/github.com/eosrio/eosbeat
147 | git clone https://github.com/eosrio/eosbeat ${GOPATH}/src/github.com/eosrio/eosbeat
148 | ```
149 |
150 |
151 | For further development, check out the [beat developer guide](https://www.elastic.co/guide/en/beats/libbeat/current/new-beat.html).
152 |
153 |
154 | ## Packaging
155 |
156 | The beat frameworks provides tools to crosscompile and package your beat for different platforms. This requires [docker](https://www.docker.com/) and vendoring as described above. To build packages of your beat, run the following command:
157 |
158 | ```
159 | make package
160 | ```
161 |
162 | This will fetch and create all images required for the build process. The whole process to finish can take several minutes.
163 |
--------------------------------------------------------------------------------
/_meta/beat.yml:
--------------------------------------------------------------------------------
1 | ################### Eosbeat Configuration Example #########################
2 |
3 | ############################# Eosbeat ######################################
4 |
5 | eosbeat:
6 | # Defines how often an event is sent to the output
7 | period: 1s
8 |
--------------------------------------------------------------------------------
/_meta/fields.generated.yml:
--------------------------------------------------------------------------------
1 | - key: eosbeat
2 | title: eosbeat
3 | description:
4 | fields:
5 | - name: counter
6 | type: long
7 | required: true
8 | description: >
9 | PLEASE UPDATE DOCUMENTATION
10 |
--------------------------------------------------------------------------------
/_meta/fields.yml:
--------------------------------------------------------------------------------
1 | - key: eosbeat
2 | title: eosbeat
3 | description:
4 | fields:
5 | - name: counter
6 | type: long
7 | required: true
8 | description: >
9 | PLEASE UPDATE DOCUMENTATION
10 |
--------------------------------------------------------------------------------
/_meta/kibana/5/index-pattern/eosbeat.json:
--------------------------------------------------------------------------------
1 | {
2 | "fieldFormatMap": "{\"@timestamp\":{\"id\":\"date\"}}",
3 | "fields": "[{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.hostname\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.timezone\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.version\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"@timestamp\",\"scripted\":false,\"searchable\":true,\"type\":\"date\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"tags\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"fields\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"error.message\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"error.code\",\"scripted\":false,\"searchable\":true,\"type\":\"number\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"error.type\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.provider\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.instance_id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.instance_name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.machine_type\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.availability_zone\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.project_id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.region\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.image\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.labels\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.hostname\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.architecture\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.os.platform\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.os.version\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.os.family\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.pod.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.namespace\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.node.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.labels\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.annotations\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.container.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.container.image\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"counter\",\"scripted\":false,\"searchable\":true,\"type\":\"number\"},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_id\",\"scripted\":false,\"searchable\":false,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_type\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_index\",\"scripted\":false,\"searchable\":false,\"type\":\"string\"},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_score\",\"scripted\":false,\"searchable\":false,\"type\":\"number\"}]",
4 | "timeFieldName": "@timestamp",
5 | "title": "eosbeat-*"
6 | }
--------------------------------------------------------------------------------
/_meta/kibana/6/index-pattern/eosbeat.json:
--------------------------------------------------------------------------------
1 | {
2 | "objects": [
3 | {
4 | "attributes": {
5 | "fieldFormatMap": "{\"@timestamp\":{\"id\":\"date\"}}",
6 | "fields": "[{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.hostname\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.timezone\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"beat.version\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"@timestamp\",\"scripted\":false,\"searchable\":true,\"type\":\"date\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"tags\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"fields\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"error.message\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"error.code\",\"scripted\":false,\"searchable\":true,\"type\":\"number\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"error.type\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.provider\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.instance_id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.instance_name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.machine_type\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.availability_zone\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.project_id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"meta.cloud.region\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.image\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"docker.container.labels\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.hostname\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.id\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.architecture\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.os.platform\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.os.version\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"host.os.family\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.pod.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.namespace\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.node.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.labels\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.annotations\",\"scripted\":false,\"searchable\":true},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.container.name\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"kubernetes.container.image\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":true,\"indexed\":true,\"name\":\"counter\",\"scripted\":false,\"searchable\":true,\"type\":\"number\"},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_id\",\"scripted\":false,\"searchable\":false,\"type\":\"string\"},{\"aggregatable\":true,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_type\",\"scripted\":false,\"searchable\":true,\"type\":\"string\"},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_index\",\"scripted\":false,\"searchable\":false,\"type\":\"string\"},{\"aggregatable\":false,\"analyzed\":false,\"count\":0,\"doc_values\":false,\"indexed\":false,\"name\":\"_score\",\"scripted\":false,\"searchable\":false,\"type\":\"number\"}]",
7 | "timeFieldName": "@timestamp",
8 | "title": "eosbeat-*"
9 | },
10 | "id": "eosbeat-*",
11 | "type": "index-pattern",
12 | "version": 1
13 | }
14 | ],
15 | "version": "7.0.0-alpha1"
16 | }
--------------------------------------------------------------------------------
/beater/eosbeat.go:
--------------------------------------------------------------------------------
1 | package beater
2 |
3 | import (
4 | "fmt"
5 | "time"
6 | "github.com/elastic/beats/libbeat/beat"
7 | "github.com/elastic/beats/libbeat/common"
8 | "github.com/elastic/beats/libbeat/logp"
9 | "github.com/eosrio/eosbeat/config"
10 | "net/http"
11 | "encoding/json"
12 | "os"
13 | "io/ioutil"
14 | "net"
15 | "log"
16 | "net/http/httptrace"
17 | "strings"
18 | "crypto/tls"
19 | )
20 |
21 | type Eosbeat struct {
22 | done chan struct{}
23 | config config.Config
24 | client beat.Client
25 | }
26 |
27 | // Creates beater
28 | func New(b *beat.Beat, cfg *common.Config) (beat.Beater, error) {
29 | c := config.DefaultConfig
30 | if err := cfg.Unpack(&c); err != nil {
31 | return nil, fmt.Errorf("error reading config file: %v", err)
32 | }
33 |
34 | bt := &Eosbeat{
35 | done: make(chan struct{}),
36 | config: c,
37 | }
38 | return bt, nil
39 | }
40 |
41 | type GetInfoResponse struct {
42 | ServerVersion string `json:"server_version"`
43 | HeadBlockNum int `json:"head_block_num"`
44 | HeadBlockProducer string `json:"head_block_producer"`
45 | HeadBlockTime string `json:"head_block_time"`
46 | HeadBlockID string `json:"head_block_id"`
47 | LastIrreversibleBlockNum int `json:"last_irreversible_block_num"`
48 | }
49 |
50 | type DetailedTraceResponse struct {
51 | Dns float64
52 | Tls float64
53 | Conn float64
54 | Resp float64
55 | Full float64
56 | }
57 |
58 | type NodeList struct {
59 | Nodes []Node `json:"blockProducerList"`
60 | Network string `json:"network"`
61 | }
62 |
63 | type Node struct {
64 | Name string `json:"bp_name"`
65 | Org string `json:"organisation"`
66 | Location string `json:"location"`
67 | NodeAddress string `json:"node_addr"`
68 | PortHTTP string `json:"port_http"`
69 | PortSSL string `json:"port_ssl"`
70 | PortP2P string `json:"port_p2p"`
71 | ProducerName string `json:"bp_name"`
72 | Coordinates string
73 | Responses []float64
74 | AVR float64
75 | }
76 |
77 | // Define client with 5 second timeout
78 | var httpClient = &http.Client{Timeout: 5 * time.Second}
79 |
80 | func findPublicIP(server string) string {
81 | resp, err := httpClient.Get(server)
82 | if err != nil {
83 | os.Stderr.WriteString(err.Error())
84 | os.Stderr.WriteString("\n")
85 | os.Exit(1)
86 | }
87 | defer resp.Body.Close()
88 | if resp.StatusCode == http.StatusOK {
89 | bodyBytes, _ := ioutil.ReadAll(resp.Body)
90 | bodyString := string(bodyBytes)
91 | return bodyString
92 | } else {
93 | return "none"
94 | }
95 | }
96 |
97 | func trace(url string, target interface{}) (DetailedTraceResponse, error) {
98 | req, err := http.NewRequest("GET", url, nil)
99 | if err != nil {
100 | log.Fatal(err)
101 | }
102 |
103 | var startDNS time.Time
104 | var dnsTime time.Duration
105 |
106 | var startCONN time.Time
107 | var timeCONN time.Duration
108 |
109 | var refFRB time.Time
110 | var timeFRB time.Duration
111 |
112 | var refTLS time.Time
113 | var timeTLS time.Duration
114 |
115 | trace := &httptrace.ClientTrace{
116 | DNSStart: func(dnsInfo httptrace.DNSStartInfo) {
117 | startDNS = time.Now()
118 | },
119 | DNSDone: func(dnsDoneInfo httptrace.DNSDoneInfo) {
120 | dnsTime = time.Since(startDNS)
121 | },
122 | ConnectStart: func(network, addr string) {
123 | startCONN = time.Now()
124 | },
125 | ConnectDone: func(network, addr string, err error) {
126 | timeCONN = time.Since(startCONN)
127 | },
128 | TLSHandshakeStart: func() {
129 | refTLS = time.Now()
130 | },
131 | TLSHandshakeDone: func(state tls.ConnectionState, e error) {
132 | timeTLS = time.Since(refTLS)
133 | },
134 | GotConn: func(info httptrace.GotConnInfo) {
135 | refFRB = time.Now()
136 | },
137 | GotFirstResponseByte: func() {
138 | timeFRB = time.Since(refFRB)
139 | },
140 | }
141 | dialer := &net.Dialer{Timeout: 3 * time.Second}
142 | req = req.WithContext(httptrace.WithClientTrace(req.Context(), trace))
143 | transport := &http.Transport{
144 | DialContext: (dialer).DialContext,
145 | TLSHandshakeTimeout: 2 * time.Second,
146 | }
147 | client := &http.Client{
148 | Transport: transport,
149 | Timeout: time.Duration(5000) * time.Millisecond,
150 | }
151 | now := time.Now()
152 | res, err := client.Do(req)
153 | cost := time.Since(now)
154 | if err != nil {
155 | fmt.Println(err)
156 | return DetailedTraceResponse{}, err
157 | }
158 | defer res.Body.Close()
159 |
160 | response := DetailedTraceResponse{
161 | Dns: dnsTime.Seconds() * 1000,
162 | Tls: timeTLS.Seconds() * 1000,
163 | Conn: timeCONN.Seconds() * 1000,
164 | Resp: timeFRB.Seconds() * 1000,
165 | Full: cost.Seconds() * 1000,
166 | }
167 |
168 | fmt.Printf("DNS Resolution: %.2f ms\n", response.Dns)
169 | fmt.Printf("TLS Handshake: %.2f ms\n", response.Tls)
170 | fmt.Printf("Connection Time: %.2f ms\n", response.Conn)
171 | fmt.Printf("Response Time: %.2f ms\n", response.Resp)
172 | fmt.Printf("Client Cost: %.2f ms\n", response.Full)
173 |
174 | // Decode JSON
175 | if res.StatusCode == 200 {
176 | decErr := json.NewDecoder(res.Body).Decode(target)
177 | if decErr == nil {
178 | return response, err
179 | } else {
180 | fmt.Println("JSON Decode Error: ", decErr)
181 | return DetailedTraceResponse{}, err
182 | }
183 | } else {
184 | fmt.Println("HTTP Status Code: ", res.StatusCode)
185 | return DetailedTraceResponse{}, err
186 | }
187 | }
188 |
189 | var externalIP string
190 | var proto = "http://"
191 | var endpoint = "/v1/chain/get_info"
192 | var testnetName string
193 |
194 | func genEvent(listOfNodes NodeList, index int) beat.Event {
195 | element := listOfNodes.Nodes[index]
196 | nodeURL := element.NodeAddress + ":" + element.PortHTTP
197 | data := new(GetInfoResponse)
198 | // Call HTTP Tracer
199 | response, traceErr := trace(proto+nodeURL+endpoint, &data)
200 | if traceErr != nil {
201 | fmt.Println("Server (" + nodeURL + ") is down")
202 | return beat.Event{}
203 | } else {
204 | fmt.Println("Target: "+element.NodeAddress+" | Latency:", response.Full, "ms")
205 |
206 | // Create and submit beat event
207 | return beat.Event{
208 | Timestamp: time.Now(),
209 | Fields: common.MapStr{
210 | "network": testnetName,
211 | "target": element.NodeAddress,
212 | "source": externalIP,
213 | "latency_full": response.Full,
214 | "latency_dns": response.Dns,
215 | "latency_conn": response.Conn,
216 | "latency_resp": response.Resp,
217 | "block": data.HeadBlockNum,
218 | "current_producer": data.HeadBlockProducer,
219 | "bp_name": element.ProducerName,
220 | "lastirrb": data.LastIrreversibleBlockNum,
221 | "org": element.Org,
222 | "location": element.Location,
223 | },
224 | }
225 | }
226 | }
227 |
228 | func (bt *Eosbeat) Run(b *beat.Beat) error {
229 | logp.Info("eosbeat is running! Hit CTRL-C to stop it.")
230 |
231 | filePath := "nodes.json"
232 | jsonFile, openerr := os.Open(filePath)
233 | if openerr != nil {
234 | fmt.Println(openerr)
235 | }
236 | defer jsonFile.Close()
237 | byteValue, _ := ioutil.ReadAll(jsonFile)
238 | var nodeList NodeList
239 | json.Unmarshal(byteValue, &nodeList)
240 | testnetName = nodeList.Network
241 | fmt.Println("Active Testnet: ", testnetName)
242 | fmt.Println("Node count: ", len(nodeList.Nodes))
243 | externalIP = findPublicIP("https://api.ipify.org")
244 | externalIP = strings.TrimSuffix(externalIP, "\n")
245 | fmt.Println("Firing requests from:", externalIP)
246 |
247 | var err error
248 | bt.client, err = b.Publisher.Connect()
249 | if err != nil {
250 | return err
251 | }
252 |
253 | ticker := time.NewTicker(bt.config.Period)
254 | var index int
255 | nodeCount := len(nodeList.Nodes)
256 | index = 0
257 | for {
258 | select {
259 | case <-bt.done:
260 | return nil
261 | case <-ticker.C:
262 | }
263 | fmt.Println("\n--------------------", index+1, "/", nodeCount, "--------------------")
264 | evt := genEvent(nodeList, index)
265 | if evt.Fields != nil {
266 | bt.client.Publish(evt)
267 | }
268 | index++
269 | if index >= len(nodeList.Nodes) {
270 | index = 0
271 | }
272 | }
273 | }
274 |
275 | func (bt *Eosbeat) Stop() {
276 | bt.client.Close()
277 | close(bt.done)
278 | }
279 |
--------------------------------------------------------------------------------
/cmd/root.go:
--------------------------------------------------------------------------------
1 | package cmd
2 |
3 | import (
4 | "github.com/eosrio/eosbeat/beater"
5 |
6 | cmd "github.com/elastic/beats/libbeat/cmd"
7 | )
8 |
9 | // Name of this beat
10 | var Name = "eosbeat"
11 |
12 | // RootCmd to handle beats cli
13 | var RootCmd = cmd.GenRootCmd(Name, "", beater.New)
14 |
--------------------------------------------------------------------------------
/config/config.go:
--------------------------------------------------------------------------------
1 | // Config is put into a different package to prevent cyclic imports in case
2 | // it is needed in several locations
3 |
4 | package config
5 |
6 | import "time"
7 |
8 | type Config struct {
9 | Period time.Duration `config:"period"`
10 | }
11 |
12 | var DefaultConfig = Config{
13 | Period: 1 * time.Second,
14 | }
15 |
--------------------------------------------------------------------------------
/config/config_test.go:
--------------------------------------------------------------------------------
1 | // +build !integration
2 |
3 | package config
4 |
--------------------------------------------------------------------------------
/data/meta.json:
--------------------------------------------------------------------------------
1 | {"uuid":"6468972c-5756-46bb-8d0c-04c8fecb777d"}
2 |
--------------------------------------------------------------------------------
/docs/fields.asciidoc:
--------------------------------------------------------------------------------
1 |
2 | ////
3 | This file is generated! See _meta/fields.yml and scripts/generate_field_docs.py
4 | ////
5 |
6 | [[exported-fields]]
7 | = Exported fields
8 |
9 | [partintro]
10 |
11 | --
12 | This document describes the fields that are exported by eosbeat. They are
13 | grouped in the following categories:
14 |
15 | * <>
16 | * <>
17 | * <>
18 | * <>
19 | * <>
20 | * <>
21 |
22 | --
23 | [[exported-fields-beat]]
24 | == Beat fields
25 |
26 | Contains common beat fields available in all event types.
27 |
28 |
29 |
30 | [float]
31 | === `beat.name`
32 |
33 | The name of the Beat sending the log messages. If the Beat name is set in the configuration file, then that value is used. If it is not set, the hostname is used. To set the Beat name, use the `name` option in the configuration file.
34 |
35 |
36 | [float]
37 | === `beat.hostname`
38 |
39 | The hostname as returned by the operating system on which the Beat is running.
40 |
41 |
42 | [float]
43 | === `beat.timezone`
44 |
45 | The timezone as returned by the operating system on which the Beat is running.
46 |
47 |
48 | [float]
49 | === `beat.version`
50 |
51 | The version of the beat that generated this event.
52 |
53 |
54 | [float]
55 | === `@timestamp`
56 |
57 | type: date
58 |
59 | example: August 26th 2016, 12:35:53.332
60 |
61 | format: date
62 |
63 | required: True
64 |
65 | The timestamp when the event log record was generated.
66 |
67 |
68 | [float]
69 | === `tags`
70 |
71 | Arbitrary tags that can be set per Beat and per transaction type.
72 |
73 |
74 | [float]
75 | === `fields`
76 |
77 | type: object
78 |
79 | Contains user configurable fields.
80 |
81 |
82 | [float]
83 | == error fields
84 |
85 | Error fields containing additional info in case of errors.
86 |
87 |
88 |
89 | [float]
90 | === `error.message`
91 |
92 | type: text
93 |
94 | Error message.
95 |
96 |
97 | [float]
98 | === `error.code`
99 |
100 | type: long
101 |
102 | Error code.
103 |
104 |
105 | [float]
106 | === `error.type`
107 |
108 | type: keyword
109 |
110 | Error type.
111 |
112 |
113 | [[exported-fields-cloud]]
114 | == Cloud provider metadata fields
115 |
116 | Metadata from cloud providers added by the add_cloud_metadata processor.
117 |
118 |
119 |
120 | [float]
121 | === `meta.cloud.provider`
122 |
123 | example: ec2
124 |
125 | Name of the cloud provider. Possible values are ec2, gce, or digitalocean.
126 |
127 |
128 | [float]
129 | === `meta.cloud.instance_id`
130 |
131 | Instance ID of the host machine.
132 |
133 |
134 | [float]
135 | === `meta.cloud.instance_name`
136 |
137 | Instance name of the host machine.
138 |
139 |
140 | [float]
141 | === `meta.cloud.machine_type`
142 |
143 | example: t2.medium
144 |
145 | Machine type of the host machine.
146 |
147 |
148 | [float]
149 | === `meta.cloud.availability_zone`
150 |
151 | example: us-east-1c
152 |
153 | Availability zone in which this host is running.
154 |
155 |
156 | [float]
157 | === `meta.cloud.project_id`
158 |
159 | example: project-x
160 |
161 | Name of the project in Google Cloud.
162 |
163 |
164 | [float]
165 | === `meta.cloud.region`
166 |
167 | Region in which this host is running.
168 |
169 |
170 | [[exported-fields-docker-processor]]
171 | == Docker fields
172 |
173 | Docker stats collected from Docker.
174 |
175 |
176 |
177 |
178 | [float]
179 | === `docker.container.id`
180 |
181 | type: keyword
182 |
183 | Unique container id.
184 |
185 |
186 | [float]
187 | === `docker.container.image`
188 |
189 | type: keyword
190 |
191 | Name of the image the container was built on.
192 |
193 |
194 | [float]
195 | === `docker.container.name`
196 |
197 | type: keyword
198 |
199 | Container name.
200 |
201 |
202 | [float]
203 | === `docker.container.labels`
204 |
205 | type: object
206 |
207 | Image labels.
208 |
209 |
210 | [[exported-fields-eosbeat]]
211 | == eosbeat fields
212 |
213 | None
214 |
215 |
216 | [float]
217 | === `counter`
218 |
219 | type: long
220 |
221 | required: True
222 |
223 | PLEASE UPDATE DOCUMENTATION
224 |
225 |
226 | [[exported-fields-host-processor]]
227 | == Host fields
228 |
229 | Info collected for the host machine.
230 |
231 |
232 |
233 |
234 | [float]
235 | === `host.hostname`
236 |
237 | type: keyword
238 |
239 | Hostname.
240 |
241 |
242 | [float]
243 | === `host.id`
244 |
245 | type: keyword
246 |
247 | Unique host id.
248 |
249 |
250 | [float]
251 | === `host.architecture`
252 |
253 | type: keyword
254 |
255 | Host architecture (e.g. x86_64, arm, ppc, mips).
256 |
257 |
258 | [float]
259 | === `host.os.platform`
260 |
261 | type: keyword
262 |
263 | OS platform (e.g. centos, ubuntu, windows).
264 |
265 |
266 | [float]
267 | === `host.os.version`
268 |
269 | type: keyword
270 |
271 | OS version.
272 |
273 |
274 | [float]
275 | === `host.os.family`
276 |
277 | type: keyword
278 |
279 | OS family (e.g. redhat, debian, freebsd, windows).
280 |
281 |
282 | [[exported-fields-kubernetes-processor]]
283 | == Kubernetes fields
284 |
285 | Kubernetes metadata added by the kubernetes processor
286 |
287 |
288 |
289 |
290 | [float]
291 | === `kubernetes.pod.name`
292 |
293 | type: keyword
294 |
295 | Kubernetes pod name
296 |
297 |
298 | [float]
299 | === `kubernetes.namespace`
300 |
301 | type: keyword
302 |
303 | Kubernetes namespace
304 |
305 |
306 | [float]
307 | === `kubernetes.node.name`
308 |
309 | type: keyword
310 |
311 | Kubernetes node name
312 |
313 |
314 | [float]
315 | === `kubernetes.labels`
316 |
317 | type: object
318 |
319 | Kubernetes labels map
320 |
321 |
322 | [float]
323 | === `kubernetes.annotations`
324 |
325 | type: object
326 |
327 | Kubernetes annotations map
328 |
329 |
330 | [float]
331 | === `kubernetes.container.name`
332 |
333 | type: keyword
334 |
335 | Kubernetes container name
336 |
337 |
338 | [float]
339 | === `kubernetes.container.image`
340 |
341 | type: keyword
342 |
343 | Kubernetes container image
344 |
345 |
346 |
--------------------------------------------------------------------------------
/docs/index.asciidoc:
--------------------------------------------------------------------------------
1 | = Eosbeat Docs
2 |
3 | Welcome to the Eosbeat documentation.
4 |
5 |
6 |
--------------------------------------------------------------------------------
/eosbeat.conf.yml:
--------------------------------------------------------------------------------
1 | eosbeat:
2 | period: 5s
3 | output.elasticsearch:
4 | hosts: ["eosrio.io:9200"]
5 | protocol: "http"
6 | username: "changeME"
7 | password: "changeME"
8 |
--------------------------------------------------------------------------------
/eosbeat.pid:
--------------------------------------------------------------------------------
1 | 781
2 |
--------------------------------------------------------------------------------
/eosbeat.reference.yml:
--------------------------------------------------------------------------------
1 | ################### Eosbeat Configuration Example #########################
2 |
3 | ############################# Eosbeat ######################################
4 |
5 | eosbeat:
6 | # Defines how often an event is sent to the output
7 | period: 1s
8 |
9 | #================================ General ======================================
10 |
11 | # The name of the shipper that publishes the network data. It can be used to group
12 | # all the transactions sent by a single shipper in the web interface.
13 | # If this options is not defined, the hostname is used.
14 | #name:
15 |
16 | # The tags of the shipper are included in their own field with each
17 | # transaction published. Tags make it easy to group servers by different
18 | # logical properties.
19 | #tags: ["service-X", "web-tier"]
20 |
21 | # Optional fields that you can specify to add additional information to the
22 | # output. Fields can be scalar values, arrays, dictionaries, or any nested
23 | # combination of these.
24 | #fields:
25 | # env: staging
26 |
27 | # If this option is set to true, the custom fields are stored as top-level
28 | # fields in the output document instead of being grouped under a fields
29 | # sub-dictionary. Default is false.
30 | #fields_under_root: false
31 |
32 | # Internal queue configuration for buffering events to be published.
33 | #queue:
34 | # Queue type by name (default 'mem')
35 | # The memory queue will present all available events (up to the outputs
36 | # bulk_max_size) to the output, the moment the output is ready to server
37 | # another batch of events.
38 | #mem:
39 | # Max number of events the queue can buffer.
40 | #events: 4096
41 |
42 | # Hints the minimum number of events stored in the queue,
43 | # before providing a batch of events to the outputs.
44 | # The default value is set to 2048.
45 | # A value of 0 ensures events are immediately available
46 | # to be sent to the outputs.
47 | #flush.min_events: 2048
48 |
49 | # Maximum duration after which events are available to the outputs,
50 | # if the number of events stored in the queue is < min_flush_events.
51 | #flush.timeout: 1s
52 |
53 | # Sets the maximum number of CPUs that can be executing simultaneously. The
54 | # default is the number of logical CPUs available in the system.
55 | #max_procs:
56 |
57 | #================================ Processors ===================================
58 |
59 | # Processors are used to reduce the number of fields in the exported event or to
60 | # enhance the event with external metadata. This section defines a list of
61 | # processors that are applied one by one and the first one receives the initial
62 | # event:
63 | #
64 | # event -> filter1 -> event1 -> filter2 ->event2 ...
65 | #
66 | # The supported processors are drop_fields, drop_event, include_fields, and
67 | # add_cloud_metadata.
68 | #
69 | # For example, you can use the following processors to keep the fields that
70 | # contain CPU load percentages, but remove the fields that contain CPU ticks
71 | # values:
72 | #
73 | #processors:
74 | #- include_fields:
75 | # fields: ["cpu"]
76 | #- drop_fields:
77 | # fields: ["cpu.user", "cpu.system"]
78 | #
79 | # The following example drops the events that have the HTTP response code 200:
80 | #
81 | #processors:
82 | #- drop_event:
83 | # when:
84 | # equals:
85 | # http.code: 200
86 | #
87 | # The following example enriches each event with metadata from the cloud
88 | # provider about the host machine. It works on EC2, GCE, DigitalOcean,
89 | # Tencent Cloud, and Alibaba Cloud.
90 | #
91 | #processors:
92 | #- add_cloud_metadata: ~
93 | #
94 | # The following example enriches each event with the machine's local time zone
95 | # offset from UTC.
96 | #
97 | #processors:
98 | #- add_locale:
99 | # format: offset
100 | #
101 | # The following example enriches each event with docker metadata, it matches
102 | # given fields to an existing container id and adds info from that container:
103 | #
104 | #processors:
105 | #- add_docker_metadata:
106 | # host: "unix:///var/run/docker.sock"
107 | # match_fields: ["system.process.cgroup.id"]
108 | # match_pids: ["process.pid", "process.ppid"]
109 | # match_source: true
110 | # match_source_index: 4
111 | # match_short_id: false
112 | # cleanup_timeout: 60
113 | # # To connect to Docker over TLS you must specify a client and CA certificate.
114 | # #ssl:
115 | # # certificate_authority: "/etc/pki/root/ca.pem"
116 | # # certificate: "/etc/pki/client/cert.pem"
117 | # # key: "/etc/pki/client/cert.key"
118 | #
119 | # The following example enriches each event with docker metadata, it matches
120 | # container id from log path available in `source` field (by default it expects
121 | # it to be /var/lib/docker/containers/*/*.log).
122 | #
123 | #processors:
124 | #- add_docker_metadata: ~
125 | #- add_host_metadata: ~
126 |
127 | #============================= Elastic Cloud ==================================
128 |
129 | # These settings simplify using eosbeat with the Elastic Cloud (https://cloud.elastic.co/).
130 |
131 | # The cloud.id setting overwrites the `output.elasticsearch.hosts` and
132 | # `setup.kibana.host` options.
133 | # You can find the `cloud.id` in the Elastic Cloud web UI.
134 | #cloud.id:
135 |
136 | # The cloud.auth setting overwrites the `output.elasticsearch.username` and
137 | # `output.elasticsearch.password` settings. The format is `:`.
138 | #cloud.auth:
139 |
140 | #================================ Outputs ======================================
141 |
142 | # Configure what output to use when sending the data collected by the beat.
143 |
144 | #-------------------------- Elasticsearch output -------------------------------
145 | output.elasticsearch:
146 | # Boolean flag to enable or disable the output module.
147 | #enabled: true
148 |
149 | # Array of hosts to connect to.
150 | # Scheme and port can be left out and will be set to the default (http and 9200)
151 | # In case you specify and additional path, the scheme is required: http://localhost:9200/path
152 | # IPv6 addresses should always be defined as: https://[2001:db8::1]:9200
153 | hosts: ["localhost:9200"]
154 |
155 | # Set gzip compression level.
156 | #compression_level: 0
157 |
158 | # Optional protocol and basic auth credentials.
159 | #protocol: "https"
160 | #username: "elastic"
161 | #password: "changeme"
162 |
163 | # Dictionary of HTTP parameters to pass within the url with index operations.
164 | #parameters:
165 | #param1: value1
166 | #param2: value2
167 |
168 | # Number of workers per Elasticsearch host.
169 | #worker: 1
170 |
171 | # Optional index name. The default is "eosbeat" plus date
172 | # and generates [eosbeat-]YYYY.MM.DD keys.
173 | # In case you modify this pattern you must update setup.template.name and setup.template.pattern accordingly.
174 | #index: "eosbeat-%{[beat.version]}-%{+yyyy.MM.dd}"
175 |
176 | # Optional ingest node pipeline. By default no pipeline will be used.
177 | #pipeline: ""
178 |
179 | # Optional HTTP Path
180 | #path: "/elasticsearch"
181 |
182 | # Custom HTTP headers to add to each request
183 | #headers:
184 | # X-My-Header: Contents of the header
185 |
186 | # Proxy server url
187 | #proxy_url: http://proxy:3128
188 |
189 | # The number of times a particular Elasticsearch index operation is attempted. If
190 | # the indexing operation doesn't succeed after this many retries, the events are
191 | # dropped. The default is 3.
192 | #max_retries: 3
193 |
194 | # The maximum number of events to bulk in a single Elasticsearch bulk API index request.
195 | # The default is 50.
196 | #bulk_max_size: 50
197 |
198 | # Configure http request timeout before failing an request to Elasticsearch.
199 | #timeout: 90
200 |
201 | # Use SSL settings for HTTPS.
202 | #ssl.enabled: true
203 |
204 | # Configure SSL verification mode. If `none` is configured, all server hosts
205 | # and certificates will be accepted. In this mode, SSL based connections are
206 | # susceptible to man-in-the-middle attacks. Use only for testing. Default is
207 | # `full`.
208 | #ssl.verification_mode: full
209 |
210 | # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
211 | # 1.2 are enabled.
212 | #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
213 |
214 | # SSL configuration. By default is off.
215 | # List of root certificates for HTTPS server verifications
216 | #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
217 |
218 | # Certificate for SSL client authentication
219 | #ssl.certificate: "/etc/pki/client/cert.pem"
220 |
221 | # Client Certificate Key
222 | #ssl.key: "/etc/pki/client/cert.key"
223 |
224 | # Optional passphrase for decrypting the Certificate Key.
225 | #ssl.key_passphrase: ''
226 |
227 | # Configure cipher suites to be used for SSL connections
228 | #ssl.cipher_suites: []
229 |
230 | # Configure curve types for ECDHE based cipher suites
231 | #ssl.curve_types: []
232 |
233 | # Configure what types of renegotiation are supported. Valid options are
234 | # never, once, and freely. Default is never.
235 | #ssl.renegotiation: never
236 |
237 |
238 | #----------------------------- Logstash output ---------------------------------
239 | #output.logstash:
240 | # Boolean flag to enable or disable the output module.
241 | #enabled: true
242 |
243 | # The Logstash hosts
244 | #hosts: ["localhost:5044"]
245 |
246 | # Number of workers per Logstash host.
247 | #worker: 1
248 |
249 | # Set gzip compression level.
250 | #compression_level: 3
251 |
252 | # Optional maximum time to live for a connection to Logstash, after which the
253 | # connection will be re-established. A value of `0s` (the default) will
254 | # disable this feature.
255 | #
256 | # Not yet supported for async connections (i.e. with the "pipelining" option set)
257 | #ttl: 30s
258 |
259 | # Optional load balance the events between the Logstash hosts. Default is false.
260 | #loadbalance: false
261 |
262 | # Number of batches to be sent asynchronously to logstash while processing
263 | # new batches.
264 | #pipelining: 2
265 |
266 | # If enabled only a subset of events in a batch of events is transferred per
267 | # transaction. The number of events to be sent increases up to `bulk_max_size`
268 | # if no error is encountered.
269 | #slow_start: false
270 |
271 | # Optional index name. The default index name is set to eosbeat
272 | # in all lowercase.
273 | #index: 'eosbeat'
274 |
275 | # SOCKS5 proxy server URL
276 | #proxy_url: socks5://user:password@socks5-server:2233
277 |
278 | # Resolve names locally when using a proxy server. Defaults to false.
279 | #proxy_use_local_resolver: false
280 |
281 | # Enable SSL support. SSL is automatically enabled, if any SSL setting is set.
282 | #ssl.enabled: true
283 |
284 | # Configure SSL verification mode. If `none` is configured, all server hosts
285 | # and certificates will be accepted. In this mode, SSL based connections are
286 | # susceptible to man-in-the-middle attacks. Use only for testing. Default is
287 | # `full`.
288 | #ssl.verification_mode: full
289 |
290 | # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
291 | # 1.2 are enabled.
292 | #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
293 |
294 | # Optional SSL configuration options. SSL is off by default.
295 | # List of root certificates for HTTPS server verifications
296 | #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
297 |
298 | # Certificate for SSL client authentication
299 | #ssl.certificate: "/etc/pki/client/cert.pem"
300 |
301 | # Client Certificate Key
302 | #ssl.key: "/etc/pki/client/cert.key"
303 |
304 | # Optional passphrase for decrypting the Certificate Key.
305 | #ssl.key_passphrase: ''
306 |
307 | # Configure cipher suites to be used for SSL connections
308 | #ssl.cipher_suites: []
309 |
310 | # Configure curve types for ECDHE based cipher suites
311 | #ssl.curve_types: []
312 |
313 | # Configure what types of renegotiation are supported. Valid options are
314 | # never, once, and freely. Default is never.
315 | #ssl.renegotiation: never
316 |
317 | #------------------------------- Kafka output ----------------------------------
318 | #output.kafka:
319 | # Boolean flag to enable or disable the output module.
320 | #enabled: true
321 |
322 | # The list of Kafka broker addresses from where to fetch the cluster metadata.
323 | # The cluster metadata contain the actual Kafka brokers events are published
324 | # to.
325 | #hosts: ["localhost:9092"]
326 |
327 | # The Kafka topic used for produced events. The setting can be a format string
328 | # using any event field. To set the topic from document type use `%{[type]}`.
329 | #topic: beats
330 |
331 | # The Kafka event key setting. Use format string to create unique event key.
332 | # By default no event key will be generated.
333 | #key: ''
334 |
335 | # The Kafka event partitioning strategy. Default hashing strategy is `hash`
336 | # using the `output.kafka.key` setting or randomly distributes events if
337 | # `output.kafka.key` is not configured.
338 | #partition.hash:
339 | # If enabled, events will only be published to partitions with reachable
340 | # leaders. Default is false.
341 | #reachable_only: false
342 |
343 | # Configure alternative event field names used to compute the hash value.
344 | # If empty `output.kafka.key` setting will be used.
345 | # Default value is empty list.
346 | #hash: []
347 |
348 | # Authentication details. Password is required if username is set.
349 | #username: ''
350 | #password: ''
351 |
352 | # Kafka version eosbeat is assumed to run against. Defaults to the oldest
353 | # supported stable version (currently version 0.8.2.0)
354 | #version: 0.8.2
355 |
356 | # Metadata update configuration. Metadata do contain leader information
357 | # deciding which broker to use when publishing.
358 | #metadata:
359 | # Max metadata request retry attempts when cluster is in middle of leader
360 | # election. Defaults to 3 retries.
361 | #retry.max: 3
362 |
363 | # Waiting time between retries during leader elections. Default is 250ms.
364 | #retry.backoff: 250ms
365 |
366 | # Refresh metadata interval. Defaults to every 10 minutes.
367 | #refresh_frequency: 10m
368 |
369 | # The number of concurrent load-balanced Kafka output workers.
370 | #worker: 1
371 |
372 | # The number of times to retry publishing an event after a publishing failure.
373 | # After the specified number of retries, the events are typically dropped.
374 | # Some Beats, such as Filebeat, ignore the max_retries setting and retry until
375 | # all events are published. Set max_retries to a value less than 0 to retry
376 | # until all events are published. The default is 3.
377 | #max_retries: 3
378 |
379 | # The maximum number of events to bulk in a single Kafka request. The default
380 | # is 2048.
381 | #bulk_max_size: 2048
382 |
383 | # The number of seconds to wait for responses from the Kafka brokers before
384 | # timing out. The default is 30s.
385 | #timeout: 30s
386 |
387 | # The maximum duration a broker will wait for number of required ACKs. The
388 | # default is 10s.
389 | #broker_timeout: 10s
390 |
391 | # The number of messages buffered for each Kafka broker. The default is 256.
392 | #channel_buffer_size: 256
393 |
394 | # The keep-alive period for an active network connection. If 0s, keep-alives
395 | # are disabled. The default is 0 seconds.
396 | #keep_alive: 0
397 |
398 | # Sets the output compression codec. Must be one of none, snappy and gzip. The
399 | # default is gzip.
400 | #compression: gzip
401 |
402 | # The maximum permitted size of JSON-encoded messages. Bigger messages will be
403 | # dropped. The default value is 1000000 (bytes). This value should be equal to
404 | # or less than the broker's message.max.bytes.
405 | #max_message_bytes: 1000000
406 |
407 | # The ACK reliability level required from broker. 0=no response, 1=wait for
408 | # local commit, -1=wait for all replicas to commit. The default is 1. Note:
409 | # If set to 0, no ACKs are returned by Kafka. Messages might be lost silently
410 | # on error.
411 | #required_acks: 1
412 |
413 | # The configurable ClientID used for logging, debugging, and auditing
414 | # purposes. The default is "beats".
415 | #client_id: beats
416 |
417 | # Enable SSL support. SSL is automatically enabled, if any SSL setting is set.
418 | #ssl.enabled: true
419 |
420 | # Optional SSL configuration options. SSL is off by default.
421 | # List of root certificates for HTTPS server verifications
422 | #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
423 |
424 | # Configure SSL verification mode. If `none` is configured, all server hosts
425 | # and certificates will be accepted. In this mode, SSL based connections are
426 | # susceptible to man-in-the-middle attacks. Use only for testing. Default is
427 | # `full`.
428 | #ssl.verification_mode: full
429 |
430 | # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
431 | # 1.2 are enabled.
432 | #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
433 |
434 | # Certificate for SSL client authentication
435 | #ssl.certificate: "/etc/pki/client/cert.pem"
436 |
437 | # Client Certificate Key
438 | #ssl.key: "/etc/pki/client/cert.key"
439 |
440 | # Optional passphrase for decrypting the Certificate Key.
441 | #ssl.key_passphrase: ''
442 |
443 | # Configure cipher suites to be used for SSL connections
444 | #ssl.cipher_suites: []
445 |
446 | # Configure curve types for ECDHE based cipher suites
447 | #ssl.curve_types: []
448 |
449 | # Configure what types of renegotiation are supported. Valid options are
450 | # never, once, and freely. Default is never.
451 | #ssl.renegotiation: never
452 |
453 | #------------------------------- Redis output ----------------------------------
454 | #output.redis:
455 | # Boolean flag to enable or disable the output module.
456 | #enabled: true
457 |
458 | # The list of Redis servers to connect to. If load balancing is enabled, the
459 | # events are distributed to the servers in the list. If one server becomes
460 | # unreachable, the events are distributed to the reachable servers only.
461 | #hosts: ["localhost:6379"]
462 |
463 | # The Redis port to use if hosts does not contain a port number. The default
464 | # is 6379.
465 | #port: 6379
466 |
467 | # The name of the Redis list or channel the events are published to. The
468 | # default is eosbeat.
469 | #key: eosbeat
470 |
471 | # The password to authenticate with. The default is no authentication.
472 | #password:
473 |
474 | # The Redis database number where the events are published. The default is 0.
475 | #db: 0
476 |
477 | # The Redis data type to use for publishing events. If the data type is list,
478 | # the Redis RPUSH command is used. If the data type is channel, the Redis
479 | # PUBLISH command is used. The default value is list.
480 | #datatype: list
481 |
482 | # The number of workers to use for each host configured to publish events to
483 | # Redis. Use this setting along with the loadbalance option. For example, if
484 | # you have 2 hosts and 3 workers, in total 6 workers are started (3 for each
485 | # host).
486 | #worker: 1
487 |
488 | # If set to true and multiple hosts or workers are configured, the output
489 | # plugin load balances published events onto all Redis hosts. If set to false,
490 | # the output plugin sends all events to only one host (determined at random)
491 | # and will switch to another host if the currently selected one becomes
492 | # unreachable. The default value is true.
493 | #loadbalance: true
494 |
495 | # The Redis connection timeout in seconds. The default is 5 seconds.
496 | #timeout: 5s
497 |
498 | # The number of times to retry publishing an event after a publishing failure.
499 | # After the specified number of retries, the events are typically dropped.
500 | # Some Beats, such as Filebeat, ignore the max_retries setting and retry until
501 | # all events are published. Set max_retries to a value less than 0 to retry
502 | # until all events are published. The default is 3.
503 | #max_retries: 3
504 |
505 | # The maximum number of events to bulk in a single Redis request or pipeline.
506 | # The default is 2048.
507 | #bulk_max_size: 2048
508 |
509 | # The URL of the SOCKS5 proxy to use when connecting to the Redis servers. The
510 | # value must be a URL with a scheme of socks5://.
511 | #proxy_url:
512 |
513 | # This option determines whether Redis hostnames are resolved locally when
514 | # using a proxy. The default value is false, which means that name resolution
515 | # occurs on the proxy server.
516 | #proxy_use_local_resolver: false
517 |
518 | # Enable SSL support. SSL is automatically enabled, if any SSL setting is set.
519 | #ssl.enabled: true
520 |
521 | # Configure SSL verification mode. If `none` is configured, all server hosts
522 | # and certificates will be accepted. In this mode, SSL based connections are
523 | # susceptible to man-in-the-middle attacks. Use only for testing. Default is
524 | # `full`.
525 | #ssl.verification_mode: full
526 |
527 | # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
528 | # 1.2 are enabled.
529 | #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
530 |
531 | # Optional SSL configuration options. SSL is off by default.
532 | # List of root certificates for HTTPS server verifications
533 | #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
534 |
535 | # Certificate for SSL client authentication
536 | #ssl.certificate: "/etc/pki/client/cert.pem"
537 |
538 | # Client Certificate Key
539 | #ssl.key: "/etc/pki/client/cert.key"
540 |
541 | # Optional passphrase for decrypting the Certificate Key.
542 | #ssl.key_passphrase: ''
543 |
544 | # Configure cipher suites to be used for SSL connections
545 | #ssl.cipher_suites: []
546 |
547 | # Configure curve types for ECDHE based cipher suites
548 | #ssl.curve_types: []
549 |
550 | # Configure what types of renegotiation are supported. Valid options are
551 | # never, once, and freely. Default is never.
552 | #ssl.renegotiation: never
553 |
554 | #------------------------------- File output -----------------------------------
555 | #output.file:
556 | # Boolean flag to enable or disable the output module.
557 | #enabled: true
558 |
559 | # Path to the directory where to save the generated files. The option is
560 | # mandatory.
561 | #path: "/tmp/eosbeat"
562 |
563 | # Name of the generated files. The default is `eosbeat` and it generates
564 | # files: `eosbeat`, `eosbeat.1`, `eosbeat.2`, etc.
565 | #filename: eosbeat
566 |
567 | # Maximum size in kilobytes of each file. When this size is reached, and on
568 | # every eosbeat restart, the files are rotated. The default value is 10240
569 | # kB.
570 | #rotate_every_kb: 10000
571 |
572 | # Maximum number of files under path. When this number of files is reached,
573 | # the oldest file is deleted and the rest are shifted from last to first. The
574 | # default is 7 files.
575 | #number_of_files: 7
576 |
577 | # Permissions to use for file creation. The default is 0600.
578 | #permissions: 0600
579 |
580 |
581 | #----------------------------- Console output ---------------------------------
582 | #output.console:
583 | # Boolean flag to enable or disable the output module.
584 | #enabled: true
585 |
586 | # Pretty print json event
587 | #pretty: false
588 |
589 | #================================= Paths ======================================
590 |
591 | # The home path for the eosbeat installation. This is the default base path
592 | # for all other path settings and for miscellaneous files that come with the
593 | # distribution (for example, the sample dashboards).
594 | # If not set by a CLI flag or in the configuration file, the default for the
595 | # home path is the location of the binary.
596 | #path.home:
597 |
598 | # The configuration path for the eosbeat installation. This is the default
599 | # base path for configuration files, including the main YAML configuration file
600 | # and the Elasticsearch template file. If not set by a CLI flag or in the
601 | # configuration file, the default for the configuration path is the home path.
602 | #path.config: ${path.home}
603 |
604 | # The data path for the eosbeat installation. This is the default base path
605 | # for all the files in which eosbeat needs to store its data. If not set by a
606 | # CLI flag or in the configuration file, the default for the data path is a data
607 | # subdirectory inside the home path.
608 | #path.data: ${path.home}/data
609 |
610 | # The logs path for a eosbeat installation. This is the default location for
611 | # the Beat's log files. If not set by a CLI flag or in the configuration file,
612 | # the default for the logs path is a logs subdirectory inside the home path.
613 | #path.logs: ${path.home}/logs
614 |
615 | #============================== Dashboards =====================================
616 | # These settings control loading the sample dashboards to the Kibana index. Loading
617 | # the dashboards are disabled by default and can be enabled either by setting the
618 | # options here, or by using the `-setup` CLI flag or the `setup` command.
619 | #setup.dashboards.enabled: false
620 |
621 | # The directory from where to read the dashboards. The default is the `kibana`
622 | # folder in the home path.
623 | #setup.dashboards.directory: ${path.home}/kibana
624 |
625 | # The URL from where to download the dashboards archive. It is used instead of
626 | # the directory if it has a value.
627 | #setup.dashboards.url:
628 |
629 | # The file archive (zip file) from where to read the dashboards. It is used instead
630 | # of the directory when it has a value.
631 | #setup.dashboards.file:
632 |
633 | # In case the archive contains the dashboards from multiple Beats, this lets you
634 | # select which one to load. You can load all the dashboards in the archive by
635 | # setting this to the empty string.
636 | #setup.dashboards.beat: eosbeat
637 |
638 | # The name of the Kibana index to use for setting the configuration. Default is ".kibana"
639 | #setup.dashboards.kibana_index: .kibana
640 |
641 | # The Elasticsearch index name. This overwrites the index name defined in the
642 | # dashboards and index pattern. Example: testbeat-*
643 | #setup.dashboards.index:
644 |
645 | # Always use the Kibana API for loading the dashboards instead of autodetecting
646 | # how to install the dashboards by first querying Elasticsearch.
647 | #setup.dashboards.always_kibana: false
648 |
649 | # If true and Kibana is not reachable at the time when dashboards are loaded,
650 | # it will retry to reconnect to Kibana instead of exiting with an error.
651 | #setup.dashboards.retry.enabled: false
652 |
653 | # Duration interval between Kibana connection retries.
654 | #setup.dashboards.retry.interval: 1s
655 |
656 | # Maximum number of retries before exiting with an error, 0 for unlimited retrying.
657 | #setup.dashboards.retry.maximum: 0
658 |
659 |
660 | #============================== Template =====================================
661 |
662 | # A template is used to set the mapping in Elasticsearch
663 | # By default template loading is enabled and the template is loaded.
664 | # These settings can be adjusted to load your own template or overwrite existing ones.
665 |
666 | # Set to false to disable template loading.
667 | #setup.template.enabled: true
668 |
669 | # Template name. By default the template name is "eosbeat-%{[beat.version]}"
670 | # The template name and pattern has to be set in case the elasticsearch index pattern is modified.
671 | #setup.template.name: "eosbeat-%{[beat.version]}"
672 |
673 | # Template pattern. By default the template pattern is "-%{[beat.version]}-*" to apply to the default index settings.
674 | # The first part is the version of the beat and then -* is used to match all daily indices.
675 | # The template name and pattern has to be set in case the elasticsearch index pattern is modified.
676 | #setup.template.pattern: "eosbeat-%{[beat.version]}-*"
677 |
678 | # Path to fields.yml file to generate the template
679 | #setup.template.fields: "${path.config}/fields.yml"
680 |
681 | # Overwrite existing template
682 | #setup.template.overwrite: false
683 |
684 | # Elasticsearch template settings
685 | setup.template.settings:
686 |
687 | # A dictionary of settings to place into the settings.index dictionary
688 | # of the Elasticsearch template. For more details, please check
689 | # https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping.html
690 | #index:
691 | #number_of_shards: 1
692 | #codec: best_compression
693 | #number_of_routing_shards: 30
694 |
695 | # A dictionary of settings for the _source field. For more details, please check
696 | # https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-source-field.html
697 | #_source:
698 | #enabled: false
699 |
700 | #============================== Kibana =====================================
701 |
702 | # Starting with Beats version 6.0.0, the dashboards are loaded via the Kibana API.
703 | # This requires a Kibana endpoint configuration.
704 | setup.kibana:
705 |
706 | # Kibana Host
707 | # Scheme and port can be left out and will be set to the default (http and 5601)
708 | # In case you specify and additional path, the scheme is required: http://localhost:5601/path
709 | # IPv6 addresses should always be defined as: https://[2001:db8::1]:5601
710 | #host: "localhost:5601"
711 |
712 | # Optional protocol and basic auth credentials.
713 | #protocol: "https"
714 | #username: "elastic"
715 | #password: "changeme"
716 |
717 | # Optional HTTP Path
718 | #path: ""
719 |
720 | # Use SSL settings for HTTPS. Default is true.
721 | #ssl.enabled: true
722 |
723 | # Configure SSL verification mode. If `none` is configured, all server hosts
724 | # and certificates will be accepted. In this mode, SSL based connections are
725 | # susceptible to man-in-the-middle attacks. Use only for testing. Default is
726 | # `full`.
727 | #ssl.verification_mode: full
728 |
729 | # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
730 | # 1.2 are enabled.
731 | #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
732 |
733 | # SSL configuration. By default is off.
734 | # List of root certificates for HTTPS server verifications
735 | #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
736 |
737 | # Certificate for SSL client authentication
738 | #ssl.certificate: "/etc/pki/client/cert.pem"
739 |
740 | # Client Certificate Key
741 | #ssl.key: "/etc/pki/client/cert.key"
742 |
743 | # Optional passphrase for decrypting the Certificate Key.
744 | #ssl.key_passphrase: ''
745 |
746 | # Configure cipher suites to be used for SSL connections
747 | #ssl.cipher_suites: []
748 |
749 | # Configure curve types for ECDHE based cipher suites
750 | #ssl.curve_types: []
751 |
752 |
753 |
754 | #================================ Logging ======================================
755 | # There are four options for the log output: file, stderr, syslog, eventlog
756 | # The file output is the default.
757 |
758 | # Sets log level. The default log level is info.
759 | # Available log levels are: error, warning, info, debug
760 | #logging.level: info
761 |
762 | # Enable debug output for selected components. To enable all selectors use ["*"]
763 | # Other available selectors are "beat", "publish", "service"
764 | # Multiple selectors can be chained.
765 | #logging.selectors: [ ]
766 |
767 | # Send all logging output to syslog. The default is false.
768 | #logging.to_syslog: false
769 |
770 | # Send all logging output to Windows Event Logs. The default is false.
771 | #logging.to_eventlog: false
772 |
773 | # If enabled, eosbeat periodically logs its internal metrics that have changed
774 | # in the last period. For each metric that changed, the delta from the value at
775 | # the beginning of the period is logged. Also, the total values for
776 | # all non-zero internal metrics are logged on shutdown. The default is true.
777 | #logging.metrics.enabled: true
778 |
779 | # The period after which to log the internal metrics. The default is 30s.
780 | #logging.metrics.period: 30s
781 |
782 | # Logging to rotating files. Set logging.to_files to false to disable logging to
783 | # files.
784 | logging.to_files: true
785 | logging.files:
786 | # Configure the path where the logs are written. The default is the logs directory
787 | # under the home path (the binary location).
788 | #path: /var/log/eosbeat
789 |
790 | # The name of the files where the logs are written to.
791 | #name: eosbeat
792 |
793 | # Configure log file size limit. If limit is reached, log file will be
794 | # automatically rotated
795 | #rotateeverybytes: 10485760 # = 10MB
796 |
797 | # Number of rotated log files to keep. Oldest files will be deleted first.
798 | #keepfiles: 7
799 |
800 | # The permissions mask to apply when rotating log files. The default value is 0600.
801 | # Must be a valid Unix-style file permissions mask expressed in octal notation.
802 | #permissions: 0600
803 |
804 | # Set to true to log messages in json format.
805 | #logging.json: false
806 |
807 |
808 | #============================== Xpack Monitoring =====================================
809 | # eosbeat can export internal metrics to a central Elasticsearch monitoring cluster.
810 | # This requires xpack monitoring to be enabled in Elasticsearch.
811 | # The reporting is disabled by default.
812 |
813 | # Set to true to enable the monitoring reporter.
814 | #xpack.monitoring.enabled: false
815 |
816 | # Uncomment to send the metrics to Elasticsearch. Most settings from the
817 | # Elasticsearch output are accepted here as well. Any setting that is not set is
818 | # automatically inherited from the Elasticsearch output configuration, so if you
819 | # have the Elasticsearch output configured, you can simply uncomment the
820 | # following line, and leave the rest commented out.
821 | #xpack.monitoring.elasticsearch:
822 |
823 | # Array of hosts to connect to.
824 | # Scheme and port can be left out and will be set to the default (http and 9200)
825 | # In case you specify and additional path, the scheme is required: http://localhost:9200/path
826 | # IPv6 addresses should always be defined as: https://[2001:db8::1]:9200
827 | #hosts: ["localhost:9200"]
828 |
829 | # Set gzip compression level.
830 | #compression_level: 0
831 |
832 | # Optional protocol and basic auth credentials.
833 | #protocol: "https"
834 | #username: "beats_system"
835 | #password: "changeme"
836 |
837 | # Dictionary of HTTP parameters to pass within the url with index operations.
838 | #parameters:
839 | #param1: value1
840 | #param2: value2
841 |
842 | # Custom HTTP headers to add to each request
843 | #headers:
844 | # X-My-Header: Contents of the header
845 |
846 | # Proxy server url
847 | #proxy_url: http://proxy:3128
848 |
849 | # The number of times a particular Elasticsearch index operation is attempted. If
850 | # the indexing operation doesn't succeed after this many retries, the events are
851 | # dropped. The default is 3.
852 | #max_retries: 3
853 |
854 | # The maximum number of events to bulk in a single Elasticsearch bulk API index request.
855 | # The default is 50.
856 | #bulk_max_size: 50
857 |
858 | # Configure http request timeout before failing an request to Elasticsearch.
859 | #timeout: 90
860 |
861 | # Use SSL settings for HTTPS.
862 | #ssl.enabled: true
863 |
864 | # Configure SSL verification mode. If `none` is configured, all server hosts
865 | # and certificates will be accepted. In this mode, SSL based connections are
866 | # susceptible to man-in-the-middle attacks. Use only for testing. Default is
867 | # `full`.
868 | #ssl.verification_mode: full
869 |
870 | # List of supported/valid TLS versions. By default all TLS versions 1.0 up to
871 | # 1.2 are enabled.
872 | #ssl.supported_protocols: [TLSv1.0, TLSv1.1, TLSv1.2]
873 |
874 | # SSL configuration. By default is off.
875 | # List of root certificates for HTTPS server verifications
876 | #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
877 |
878 | # Certificate for SSL client authentication
879 | #ssl.certificate: "/etc/pki/client/cert.pem"
880 |
881 | # Client Certificate Key
882 | #ssl.key: "/etc/pki/client/cert.key"
883 |
884 | # Optional passphrase for decrypting the Certificate Key.
885 | #ssl.key_passphrase: ''
886 |
887 | # Configure cipher suites to be used for SSL connections
888 | #ssl.cipher_suites: []
889 |
890 | # Configure curve types for ECDHE based cipher suites
891 | #ssl.curve_types: []
892 |
893 | # Configure what types of renegotiation are supported. Valid options are
894 | # never, once, and freely. Default is never.
895 | #ssl.renegotiation: never
896 |
897 | #================================ HTTP Endpoint ======================================
898 | # Each beat can expose internal metrics through a HTTP endpoint. For security
899 | # reasons the endpoint is disabled by default. This feature is currently experimental.
900 | # Stats can be access through http://localhost:5066/stats . For pretty JSON output
901 | # append ?pretty to the URL.
902 |
903 | # Defines if the HTTP endpoint is enabled.
904 | #http.enabled: false
905 |
906 | # The HTTP endpoint will bind to this hostname or IP address. It is recommended to use only localhost.
907 | #http.host: localhost
908 |
909 | # Port on which the HTTP endpoint will bind. Default is 5066.
910 | #http.port: 5066
911 |
--------------------------------------------------------------------------------
/eosbeat.tar.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosrio/eosbeat/be21d595ee3a14c4d2f60dd026c3e9cc7692fa11/eosbeat.tar.gz
--------------------------------------------------------------------------------
/eosbeat.yml:
--------------------------------------------------------------------------------
1 | eosbeat:
2 | period: 5s
3 | output.elasticsearch:
4 | hosts: ["eosrio.io:9200"]
5 | protocol: "http"
6 | username: "changeME"
7 | password: "changeME"
8 |
--------------------------------------------------------------------------------
/err.log:
--------------------------------------------------------------------------------
1 | 2018/04/27 19:20:19 dial tcp 93.176.188.7:8888: connect: connection refused
2 | 2018/04/27 19:20:20 dial tcp 93.176.188.7:8888: connect: connection refused
3 | 2018/04/27 19:21:46 dial tcp 145.239.252.91:8888: connect: connection refused
4 | 2018/04/27 19:21:47 dial tcp 145.239.252.91:8888: connect: connection refused
5 | 2018/04/27 19:22:12 dial tcp 156.38.160.92:8888: connect: connection refused
6 | 2018/04/27 19:22:33 dial tcp 156.38.160.92:8888: connect: connection refused
7 | 2018/04/27 19:22:43 dial tcp 154.48.249.19:8888: connect: connection refused
8 | 2018/04/27 19:22:45 dial tcp 154.48.249.19:8888: connect: connection refused
9 | 2018/04/27 19:22:51 dial tcp 83.96.252.111:8888: connect: connection refused
10 | 2018/04/27 19:22:53 dial tcp 83.96.252.111:8888: connect: connection refused
11 | 2018/04/27 19:23:04 dial tcp 211.159.182.240:8888: connect: connection refused
12 | 2018/04/27 19:23:07 dial tcp 211.159.182.240:8888: connect: connection refused
13 | 2018/04/27 19:23:11 dial tcp 35.189.11.13:8888: connect: connection refused
14 | 2018/04/27 19:23:13 dial tcp 35.189.11.13:8888: connect: connection refused
15 | 2018/04/27 19:23:19 dial tcp 39.108.231.157:8888: connect: connection refused
16 | 2018/04/27 19:23:21 dial tcp 39.108.231.157:8888: connect: connection refused
17 | 2018/04/27 19:23:30 dial tcp 193.93.219.219:6888: connect: connection refused
18 | 2018/04/27 19:23:32 dial tcp 193.93.219.219:6888: connect: connection refused
19 | 2018/04/27 19:23:35 EOF
20 | 2018/04/27 19:24:33 dial tcp 107.191.60.146:7780: connect: connection refused
21 | 2018/04/27 19:24:35 dial tcp 107.191.60.146:7780: connect: connection refused
22 | 2018/04/27 19:25:16 dial tcp 34.209.174.121:8888: connect: connection refused
23 | 2018/04/27 19:25:37 dial tcp 34.209.174.121:8888: connect: connection refused
24 | 2018/04/27 19:25:48 dial tcp 113.208.116.110:8888: connect: connection refused
25 | 2018/04/27 19:25:50 dial tcp 113.208.116.110:8888: connect: connection refused
26 | 2018/04/27 19:26:13 dial tcp 35.192.58.50:8888: connect: connection refused
27 | 2018/04/27 19:26:34 dial tcp 35.192.58.50:8888: connect: connection refused
28 | 2018/04/27 19:27:10 dial tcp 93.176.188.7:8888: connect: connection refused
29 | 2018/04/27 19:27:11 dial tcp 93.176.188.7:8888: connect: connection refused
30 | 2018/04/27 19:27:32 dial tcp 81.110.247.37:8427: connect: connection refused
31 | 2018/04/27 19:27:34 dial tcp 81.110.247.37:8427: connect: connection refused
32 | 2018/04/27 19:27:47 dial tcp 145.239.252.91:8888: connect: connection refused
33 | 2018/04/27 19:27:49 dial tcp 145.239.252.91:8888: connect: connection refused
34 | 2018/04/27 19:28:14 dial tcp 156.38.160.92:8888: connect: connection refused
35 | 2018/04/27 19:28:35 dial tcp 156.38.160.92:8888: connect: connection refused
36 | 2018/04/27 19:28:45 dial tcp 154.48.249.19:8888: connect: connection refused
37 | 2018/04/27 19:28:47 dial tcp 154.48.249.19:8888: connect: connection refused
38 | 2018/04/27 19:28:53 dial tcp 83.96.252.111:8888: connect: connection refused
39 | 2018/04/27 19:28:55 dial tcp 83.96.252.111:8888: connect: connection refused
40 | 2018/04/27 19:29:00 dial tcp 13.126.171.157:8888: connect: connection refused
41 | 2018/04/27 19:29:02 dial tcp 13.126.171.157:8888: connect: connection refused
42 |
--------------------------------------------------------------------------------
/fields.yml:
--------------------------------------------------------------------------------
1 |
2 | - key: beat
3 | title: Beat
4 | description: >
5 | Contains common beat fields available in all event types.
6 | fields:
7 |
8 | - name: beat.name
9 | description: >
10 | The name of the Beat sending the log messages. If the Beat name is
11 | set in the configuration file, then that value is used. If it is not
12 | set, the hostname is used. To set the Beat name, use the `name`
13 | option in the configuration file.
14 | - name: beat.hostname
15 | description: >
16 | The hostname as returned by the operating system on which the Beat is
17 | running.
18 | - name: beat.timezone
19 | description: >
20 | The timezone as returned by the operating system on which the Beat is
21 | running.
22 | - name: beat.version
23 | description: >
24 | The version of the beat that generated this event.
25 |
26 | - name: "@timestamp"
27 | type: date
28 | required: true
29 | format: date
30 | example: August 26th 2016, 12:35:53.332
31 | description: >
32 | The timestamp when the event log record was generated.
33 |
34 | - name: tags
35 | description: >
36 | Arbitrary tags that can be set per Beat and per transaction
37 | type.
38 |
39 | - name: fields
40 | type: object
41 | object_type: keyword
42 | description: >
43 | Contains user configurable fields.
44 |
45 | - name: error
46 | type: group
47 | description: >
48 | Error fields containing additional info in case of errors.
49 | fields:
50 | - name: message
51 | type: text
52 | description: >
53 | Error message.
54 | - name: code
55 | type: long
56 | description: >
57 | Error code.
58 | - name: type
59 | type: keyword
60 | description: >
61 | Error type.
62 | - key: cloud
63 | title: Cloud provider metadata
64 | description: >
65 | Metadata from cloud providers added by the add_cloud_metadata processor.
66 | fields:
67 |
68 | - name: meta.cloud.provider
69 | example: ec2
70 | description: >
71 | Name of the cloud provider. Possible values are ec2, gce, or digitalocean.
72 |
73 | - name: meta.cloud.instance_id
74 | description: >
75 | Instance ID of the host machine.
76 |
77 | - name: meta.cloud.instance_name
78 | description: >
79 | Instance name of the host machine.
80 |
81 | - name: meta.cloud.machine_type
82 | example: t2.medium
83 | description: >
84 | Machine type of the host machine.
85 |
86 | - name: meta.cloud.availability_zone
87 | example: us-east-1c
88 | description: >
89 | Availability zone in which this host is running.
90 |
91 | - name: meta.cloud.project_id
92 | example: project-x
93 | description: >
94 | Name of the project in Google Cloud.
95 |
96 | - name: meta.cloud.region
97 | description: >
98 | Region in which this host is running.
99 | - key: docker
100 | title: Docker
101 | description: >
102 | Docker stats collected from Docker.
103 | short_config: false
104 | anchor: docker-processor
105 | fields:
106 | - name: docker
107 | type: group
108 | fields:
109 | - name: container.id
110 | type: keyword
111 | description: >
112 | Unique container id.
113 | - name: container.image
114 | type: keyword
115 | description: >
116 | Name of the image the container was built on.
117 | - name: container.name
118 | type: keyword
119 | description: >
120 | Container name.
121 | - name: container.labels
122 | type: object
123 | object_type: keyword
124 | description: >
125 | Image labels.
126 | - key: host
127 | title: Host
128 | description: >
129 | Info collected for the host machine.
130 | anchor: host-processor
131 | fields:
132 | - name: host
133 | type: group
134 | fields:
135 | - name: hostname
136 | type: keyword
137 | description: >
138 | Hostname.
139 | - name: id
140 | type: keyword
141 | description: >
142 | Unique host id.
143 | - name: architecture
144 | type: keyword
145 | description: >
146 | Host architecture (e.g. x86_64, arm, ppc, mips).
147 | - name: os.platform
148 | type: keyword
149 | description: >
150 | OS platform (e.g. centos, ubuntu, windows).
151 | - name: os.version
152 | type: keyword
153 | description: >
154 | OS version.
155 | - name: os.family
156 | type: keyword
157 | description: >
158 | OS family (e.g. redhat, debian, freebsd, windows).
159 | - key: kubernetes
160 | title: Kubernetes
161 | description: >
162 | Kubernetes metadata added by the kubernetes processor
163 | short_config: false
164 | anchor: kubernetes-processor
165 | fields:
166 | - name: kubernetes
167 | type: group
168 | fields:
169 | - name: pod.name
170 | type: keyword
171 | description: >
172 | Kubernetes pod name
173 |
174 | - name: namespace
175 | type: keyword
176 | description: >
177 | Kubernetes namespace
178 |
179 | - name: node.name
180 | type: keyword
181 | description: >
182 | Kubernetes node name
183 |
184 | - name: labels
185 | type: object
186 | description: >
187 | Kubernetes labels map
188 |
189 | - name: annotations
190 | type: object
191 | description: >
192 | Kubernetes annotations map
193 |
194 | - name: container.name
195 | type: keyword
196 | description: >
197 | Kubernetes container name
198 |
199 | - name: container.image
200 | type: keyword
201 | description: >
202 | Kubernetes container image
203 | - key: eosbeat
204 | title: eosbeat
205 | description:
206 | fields:
207 | - name: counter
208 | type: long
209 | required: true
210 | description: >
211 | PLEASE UPDATE DOCUMENTATION
212 |
--------------------------------------------------------------------------------
/logs/eosbeat:
--------------------------------------------------------------------------------
1 | 2018-04-27T19:20:06.329-0300 INFO instance/beat.go:479 Home path: [/home/igor/go-eosbeat] Config path: [/home/igor/go-eosbeat] Data path: [/home/igor/go-eosbeat/data] Logs path: [/home/igor/go-eosbeat/logs]
2 | 2018-04-27T19:20:06.336-0300 INFO instance/beat.go:486 Beat UUID: 6468972c-5756-46bb-8d0c-04c8fecb777d
3 | 2018-04-27T19:20:06.336-0300 INFO instance/beat.go:222 Setup Beat: eosbeat; Version: 7.0.0-alpha1
4 | 2018-04-27T19:20:06.336-0300 INFO elasticsearch/client.go:145 Elasticsearch url: http://eosrio.io:9200
5 | 2018-04-27T19:20:06.337-0300 INFO pipeline/module.go:76 Beat name: W230ST
6 | 2018-04-27T19:20:06.338-0300 INFO instance/beat.go:312 eosbeat start running.
7 | 2018-04-27T19:20:06.338-0300 INFO beater/eosbeat.go:207 eosbeat is running! Hit CTRL-C to stop it.
8 | 2018-04-27T19:20:06.338-0300 INFO [monitoring] log/log.go:97 Starting metrics logging every 30s
9 | 2018-04-27T19:20:10.985-0300 INFO elasticsearch/client.go:690 Connected to Elasticsearch version 6.2.4
10 | 2018-04-27T19:20:11.738-0300 INFO template/load.go:73 Template already exists and will not be overwritten.
11 | 2018-04-27T19:20:36.344-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":90,"time":{"ms":93}},"total":{"ticks":180,"time":{"ms":186},"value":180},"user":{"ticks":90,"time":{"ms":93}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":30017}},"memstats":{"gc_next":4194304,"memory_alloc":2019360,"memory_total":4950760,"rss":14630912}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":9,"batches":4,"total":9},"read":{"bytes":2650},"type":"elasticsearch","write":{"bytes":4778}},"pipeline":{"clients":1,"events":{"active":0,"published":9,"retry":1,"total":9},"queue":{"acked":9}}},"system":{"cpu":{"cores":8},"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
12 | 2018-04-27T19:21:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":90},"total":{"ticks":180,"value":180},"user":{"ticks":90}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":60018}},"memstats":{"gc_next":4194304,"memory_alloc":2239232,"memory_total":5170632,"rss":94208}},"libbeat":{"config":{"module":{"running":0}},"output":{"read":{"errors":1}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
13 | 2018-04-27T19:21:36.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":100,"time":{"ms":16}},"total":{"ticks":190,"time":{"ms":16},"value":190},"user":{"ticks":90}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":90017}},"memstats":{"gc_next":4194304,"memory_alloc":3180096,"memory_total":6111496,"rss":188416}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":2,"active":1,"batches":2,"total":3},"read":{"bytes":479},"write":{"bytes":1655}},"pipeline":{"clients":1,"events":{"active":2,"published":4,"total":4},"queue":{"acked":2}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
14 | 2018-04-27T19:22:06.340-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":150,"time":{"ms":47}},"total":{"ticks":270,"time":{"ms":79},"value":270},"user":{"ticks":120,"time":{"ms":32}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":120017}},"memstats":{"gc_next":4416224,"memory_alloc":2956336,"memory_total":7677816,"rss":479232}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":7,"active":-1,"batches":5,"total":6},"read":{"bytes":2811,"errors":2},"write":{"bytes":3514}},"pipeline":{"clients":1,"events":{"active":0,"published":5,"total":5},"queue":{"acked":7}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
15 | 2018-04-27T19:22:36.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":150},"total":{"ticks":270,"value":270},"user":{"ticks":120}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":150017}},"memstats":{"gc_next":4416224,"memory_alloc":3185384,"memory_total":7906864,"rss":8192}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
16 | 2018-04-27T19:23:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":170,"time":{"ms":15}},"total":{"ticks":310,"time":{"ms":30},"value":310},"user":{"ticks":140,"time":{"ms":15}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":180018}},"memstats":{"gc_next":4194304,"memory_alloc":1996656,"memory_total":10148080,"rss":421888}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":7,"batches":7,"total":7},"read":{"bytes":3253,"errors":2},"write":{"bytes":4359}},"pipeline":{"clients":1,"events":{"active":0,"published":7,"total":7},"queue":{"acked":7}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
17 | 2018-04-27T19:23:36.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":200,"time":{"ms":32}},"total":{"ticks":350,"time":{"ms":48},"value":350},"user":{"ticks":150,"time":{"ms":16}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":210017}},"memstats":{"gc_next":4194304,"memory_alloc":3119432,"memory_total":11270856,"rss":49152}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":2,"active":1,"batches":3,"total":3},"read":{"bytes":929,"errors":2},"write":{"bytes":1881}},"pipeline":{"clients":1,"events":{"active":1,"published":3,"total":3},"queue":{"acked":2}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
18 | 2018-04-27T19:24:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":280,"time":{"ms":78}},"total":{"ticks":430,"time":{"ms":78},"value":430},"user":{"ticks":150}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":240018}},"memstats":{"gc_next":4293168,"memory_alloc":3355472,"memory_total":14812288,"rss":458752}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":14,"active":-1,"batches":11,"total":13},"read":{"bytes":5604},"write":{"bytes":7651}},"pipeline":{"clients":1,"events":{"active":0,"published":13,"total":13},"queue":{"acked":14}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
19 | 2018-04-27T19:24:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":290,"time":{"ms":15}},"total":{"ticks":540,"time":{"ms":109},"value":540},"user":{"ticks":250,"time":{"ms":94}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":270018}},"memstats":{"gc_next":4916224,"memory_alloc":2665152,"memory_total":16962600,"rss":57344}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":7,"active":1,"batches":6,"total":8},"read":{"bytes":2357,"errors":1},"write":{"bytes":4495}},"pipeline":{"clients":1,"events":{"active":5,"published":12,"total":12},"queue":{"acked":7}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
20 | 2018-04-27T19:25:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":310,"time":{"ms":16}},"total":{"ticks":560,"time":{"ms":16},"value":560},"user":{"ticks":250}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":300017}},"memstats":{"gc_next":4916224,"memory_alloc":3890040,"memory_total":18187488,"rss":24576}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":13,"active":-1,"batches":3,"total":12},"read":{"bytes":1942,"errors":1},"write":{"bytes":5348}},"pipeline":{"clients":1,"events":{"active":0,"published":8,"total":8},"queue":{"acked":13}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
21 | 2018-04-27T19:25:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":310},"total":{"ticks":560,"value":560},"user":{"ticks":250}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":330018}},"memstats":{"gc_next":4916224,"memory_alloc":4111400,"memory_total":18408848,"rss":12288}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
22 | 2018-04-27T19:26:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":350,"time":{"ms":47}},"total":{"ticks":640,"time":{"ms":93},"value":640},"user":{"ticks":290,"time":{"ms":46}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":360017}},"memstats":{"gc_next":4611872,"memory_alloc":2823256,"memory_total":19208520,"rss":319488}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":2,"batches":2,"total":2},"read":{"bytes":930,"errors":1},"write":{"bytes":1254}},"pipeline":{"clients":1,"events":{"active":0,"published":2,"total":2},"queue":{"acked":2}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
23 | 2018-04-27T19:26:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":350},"total":{"ticks":640,"value":640},"user":{"ticks":290}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":390019}},"memstats":{"gc_next":4611872,"memory_alloc":3141232,"memory_total":19526496}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
24 | 2018-04-27T19:27:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":400,"time":{"ms":47}},"total":{"ticks":740,"time":{"ms":94},"value":740},"user":{"ticks":340,"time":{"ms":47}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":420018}},"memstats":{"gc_next":4997824,"memory_alloc":3262528,"memory_total":21182432,"rss":53248}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":3,"active":1,"batches":4,"total":4},"read":{"bytes":1396,"errors":1},"write":{"bytes":2501}},"pipeline":{"clients":1,"events":{"active":6,"published":9,"total":9},"queue":{"acked":3}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
25 | 2018-04-27T19:27:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":510,"time":{"ms":109}},"total":{"ticks":900,"time":{"ms":156},"value":900},"user":{"ticks":390,"time":{"ms":47}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":450019}},"memstats":{"gc_next":5181120,"memory_alloc":3525888,"memory_total":23219488,"rss":36864}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":13,"active":-1,"batches":7,"total":12},"read":{"bytes":3773,"errors":3},"write":{"bytes":6352}},"pipeline":{"clients":1,"events":{"active":0,"published":7,"total":7},"queue":{"acked":13}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
26 | 2018-04-27T19:28:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560,"time":{"ms":47}},"total":{"ticks":950,"time":{"ms":47},"value":950},"user":{"ticks":390}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":480018}},"memstats":{"gc_next":5473360,"memory_alloc":3701408,"memory_total":25232432,"rss":368640}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":6,"batches":6,"total":6},"read":{"bytes":2789,"errors":2},"write":{"bytes":3746}},"pipeline":{"clients":1,"events":{"active":0,"published":6,"total":6},"queue":{"acked":6}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
27 | 2018-04-27T19:28:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":950,"value":950},"user":{"ticks":390}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":510018}},"memstats":{"gc_next":5473360,"memory_alloc":3872536,"memory_total":25403560}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
28 | 2018-04-27T19:29:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"time":{"ms":63},"value":1010},"user":{"ticks":450,"time":{"ms":63}}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":540017}},"memstats":{"gc_next":5534448,"memory_alloc":3217680,"memory_total":26863296,"rss":385024}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":4,"batches":4,"total":4},"read":{"bytes":1863,"errors":3},"write":{"bytes":2497}},"pipeline":{"clients":1,"events":{"active":1,"published":5,"total":5},"queue":{"acked":4}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
29 | 2018-04-27T19:29:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":570018}},"memstats":{"gc_next":5534448,"memory_alloc":3697208,"memory_total":27342824,"rss":4096}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":1,"batches":1,"total":1},"read":{"bytes":463,"errors":1},"write":{"bytes":623}},"pipeline":{"clients":1,"events":{"active":0},"queue":{"acked":1}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
30 | 2018-04-27T19:30:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":600017}},"memstats":{"gc_next":5534448,"memory_alloc":3922968,"memory_total":27568584,"rss":4096}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
31 | 2018-04-27T19:30:36.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":630018}},"memstats":{"gc_next":5534448,"memory_alloc":4249304,"memory_total":27894920,"rss":20480}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
32 | 2018-04-27T19:31:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":660018}},"memstats":{"gc_next":5297216,"memory_alloc":2643424,"memory_total":28018648,"rss":4096}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
33 | 2018-04-27T19:31:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":690017}},"memstats":{"gc_next":5297216,"memory_alloc":2875848,"memory_total":28251072}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
34 | 2018-04-27T19:32:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":720018}},"memstats":{"gc_next":5297216,"memory_alloc":3096952,"memory_total":28472176}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
35 | 2018-04-27T19:32:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":750017}},"memstats":{"gc_next":5297216,"memory_alloc":3317352,"memory_total":28692576}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
36 | 2018-04-27T19:33:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":780018}},"memstats":{"gc_next":5297888,"memory_alloc":2643792,"memory_total":28921504,"rss":4096}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
37 | 2018-04-27T19:33:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":810017}},"memstats":{"gc_next":5297888,"memory_alloc":2876024,"memory_total":29153736}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
38 | 2018-04-27T19:34:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":840017}},"memstats":{"gc_next":5297888,"memory_alloc":3098408,"memory_total":29376120}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
39 | 2018-04-27T19:34:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":870020}},"memstats":{"gc_next":5297888,"memory_alloc":3320984,"memory_total":29598696}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
40 | 2018-04-27T19:35:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":900017}},"memstats":{"gc_next":5299552,"memory_alloc":2637840,"memory_total":29816968}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
41 | 2018-04-27T19:35:36.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":930017}},"memstats":{"gc_next":5299552,"memory_alloc":2876104,"memory_total":30055232,"rss":-458752}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
42 | 2018-04-27T19:36:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":960017}},"memstats":{"gc_next":5299552,"memory_alloc":3093080,"memory_total":30272208}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
43 | 2018-04-27T19:36:36.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":990017}},"memstats":{"gc_next":5299552,"memory_alloc":3324104,"memory_total":30503232,"rss":8192}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
44 | 2018-04-27T19:37:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1020017}},"memstats":{"gc_next":5298944,"memory_alloc":2644000,"memory_total":30725968}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
45 | 2018-04-27T19:37:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1050017}},"memstats":{"gc_next":5298944,"memory_alloc":2869448,"memory_total":30951416}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
46 | 2018-04-27T19:38:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1080018}},"memstats":{"gc_next":5298944,"memory_alloc":3100056,"memory_total":31182024,"rss":-958464}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
47 | 2018-04-27T19:38:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1110018}},"memstats":{"gc_next":5298944,"memory_alloc":3319512,"memory_total":31401480}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
48 | 2018-04-27T19:39:06.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1140018}},"memstats":{"gc_next":5298560,"memory_alloc":2744904,"memory_total":31728368}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
49 | 2018-04-27T19:39:36.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1170017}},"memstats":{"gc_next":5298560,"memory_alloc":2875960,"memory_total":31859424}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
50 | 2018-04-27T19:40:06.341-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1200017}},"memstats":{"gc_next":5298560,"memory_alloc":3098152,"memory_total":32081616}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
51 | 2018-04-27T19:40:36.342-0300 INFO [monitoring] log/log.go:124 Non-zero metrics in the last 30s {"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":560},"total":{"ticks":1010,"value":1010},"user":{"ticks":450}},"info":{"ephemeral_id":"63307086-4dc0-4bc6-a7db-0c2352308a95","uptime":{"ms":1230017}},"memstats":{"gc_next":5298560,"memory_alloc":3325544,"memory_total":32309008}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":0}}},"system":{"load":{"1":0.52,"15":0.59,"5":0.58,"norm":{"1":0.065,"15":0.0738,"5":0.0725}}}}}}
52 |
--------------------------------------------------------------------------------
/main.go:
--------------------------------------------------------------------------------
1 | package main
2 |
3 | import (
4 | "os"
5 | "github.com/eosrio/eosbeat/cmd"
6 | )
7 |
8 | func main() {
9 | if err := cmd.RootCmd.Execute(); err != nil {
10 | os.Exit(1)
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/main_test.go:
--------------------------------------------------------------------------------
1 | package main
2 |
3 | // This file is mandatory as otherwise the eosbeat.test binary is not generated correctly.
4 |
5 | import (
6 | "flag"
7 | "testing"
8 |
9 | "github.com/eosrio/eosbeat/cmd"
10 | )
11 |
12 | var systemTest *bool
13 |
14 | func init() {
15 | systemTest = flag.Bool("systemTest", false, "Set to true when running system tests")
16 |
17 | cmd.RootCmd.PersistentFlags().AddGoFlag(flag.CommandLine.Lookup("systemTest"))
18 | cmd.RootCmd.PersistentFlags().AddGoFlag(flag.CommandLine.Lookup("test.coverprofile"))
19 | }
20 |
21 | // Test started when the test binary is started. Only calls main.
22 | func TestSystem(t *testing.T) {
23 |
24 | if *systemTest {
25 | main()
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/nodes.json:
--------------------------------------------------------------------------------
1 | {
2 | "network": "jungle",
3 | "blockProducerList": [{
4 | "_id": "5acb5633b63b04532f14b351",
5 | "bp_name": "volcano",
6 | "organisation": "CryptoLions.io",
7 | "location": "Ukraine, Kyiv",
8 | "node_addr": "jungle.cryptolions.io",
9 | "port_http": "8888",
10 | "port_ssl": "",
11 | "port_p2p": "9876",
12 | "pub_key": "EOS7cXZfX7Rjt4WqARdE3MP7QUkgSyzagedq3WncpDb9W6zxvdTmx",
13 | "bp": true,
14 | "enabled": true,
15 | "comment": "",
16 | "telegram": ""
17 | }, {
18 | "_id": "5acb5633b63b04532f14b352",
19 | "bp_name": "lion",
20 | "organisation": "CryptoLions.io",
21 | "location": "Germany",
22 | "node_addr": "dev.cryptolions.io",
23 | "port_http": "8888",
24 | "port_ssl": "",
25 | "port_p2p": "7876",
26 | "pub_key": "EOS4uD43rw6sB46AKWkU5rtXZnnRJeYhAtpwvHszJ8QD3Eqbgg7TE",
27 | "bp": true,
28 | "enabled": true,
29 | "comment": "",
30 | "telegram": ""
31 | }, {
32 | "_id": "5acb5633b63b04532f14b353",
33 | "bp_name": "tiger",
34 | "organisation": "CryptoLions.io",
35 | "location": "Ukraine, Lviv",
36 | "node_addr": "193.93.219.219",
37 | "port_http": "8888",
38 | "port_ssl": "",
39 | "port_p2p": "9876",
40 | "pub_key": "EOS5LdoGyZyWKEnske2RXBfqFpqEnaoLJzmpJgryQrvUYWKRiAN5V",
41 | "bp": true,
42 | "enabled": true,
43 | "comment": "",
44 | "telegram": ""
45 | }, {
46 | "_id": "5acb5633b63b04532f14b354",
47 | "bp_name": "jaguar",
48 | "organisation": "EOS New York",
49 | "location": "Central Canada",
50 | "node_addr": "jungle.eosnewyork.io",
51 | "port_http": "8888",
52 | "port_ssl": "",
53 | "port_p2p": "9876",
54 | "pub_key": "EOS7btfRjDZGTLMcZR8cveHW2kURM8j8fK3VpyUm5muRFvCMhQpRv",
55 | "bp": true,
56 | "enabled": true,
57 | "comment": "",
58 | "telegram": ""
59 | }, {
60 | "_id": "5acb5633b63b04532f14b355",
61 | "bp_name": "bat",
62 | "organisation": "EOSio.se",
63 | "location": "Sweeden",
64 | "node_addr": "ctestnet.edenx.io",
65 | "port_http": "8062",
66 | "port_ssl": "",
67 | "port_p2p": "6602",
68 | "pub_key": "EOS5Fji6x8dgSPHzpi7NpYxQT8V1gxC7cEjKnan2CivHBikS4etyC",
69 | "bp": true,
70 | "enabled": true,
71 | "comment": "",
72 | "telegram": ""
73 | }, {
74 | "_id": "5acb5633b63b04532f14b356",
75 | "bp_name": "mowgli",
76 | "organisation": "roelandp.nl/eos",
77 | "location": "Germany",
78 | "node_addr": "mowgli.jungle3.eos.roelandp.nl",
79 | "port_http": "8765",
80 | "port_ssl": "",
81 | "port_p2p": "9876",
82 | "pub_key": "EOS7mwDoXcrtFzxXA2jmuVHd6LbnZ9tYBZFguSUmtqC5QVenYpE2m",
83 | "bp": true,
84 | "enabled": true,
85 | "comment": "",
86 | "telegram": ""
87 | }, {
88 | "_id": "5acb5633b63b04532f14b357",
89 | "bp_name": "dragonfly",
90 | "organisation": "EOSbcn",
91 | "location": "Barcelona",
92 | "node_addr": "93.176.188.7",
93 | "port_http": "8888",
94 | "port_ssl": "",
95 | "port_p2p": "9876",
96 | "pub_key": "EOS8g1MUTibV9KMD4hHRiA5pygcnVKScjVqB2EYjzz5Ypu5WuagX3",
97 | "bp": false,
98 | "enabled": false,
99 | "comment": "",
100 | "telegram": ""
101 | }, {
102 | "_id": "5acb5633b63b04532f14b358",
103 | "bp_name": "elephant2",
104 | "organisation": "Blockpro.one",
105 | "location": "USA",
106 | "node_addr": "18.188.52.250",
107 | "port_http": "8877",
108 | "port_ssl": "",
109 | "port_p2p": "9876",
110 | "pub_key": "EOS6B1NvFPAUobAJJ12QtLtbeYpSE6mJsotphbqH4n8dMi6jgX9D4",
111 | "bp": true,
112 | "enabled": true,
113 | "comment": "",
114 | "telegram": ""
115 | }, {
116 | "_id": "5acb5633b63b04532f14b359",
117 | "bp_name": "mosquito",
118 | "organisation": "IberEOS",
119 | "location": "Spain",
120 | "node_addr": "mosquito.prometeos.io",
121 | "port_http": "8889",
122 | "port_ssl": "",
123 | "port_p2p": "9877",
124 | "pub_key": "EOS6NDwXffptVFfEENu1iq3aYPpEGFKusoZUkfvr1rcfipdp67HuS",
125 | "bp": true,
126 | "enabled": true,
127 | "comment": "",
128 | "telegram": ""
129 | }, {
130 | "_id": "5acb5633b63b04532f14b35a",
131 | "bp_name": "wombat",
132 | "organisation": "pearls.capital",
133 | "location": "Russia, Moscow",
134 | "node_addr": "pearls.capital",
135 | "port_http": "8888",
136 | "port_ssl": "",
137 | "port_p2p": "9876",
138 | "pub_key": "EOS8bGyjUEAksVm7QY7YBsoHgwzZpxYQAZ6ZxunxxMeUm4KDpUkzi",
139 | "bp": true,
140 | "enabled": true,
141 | "comment": "",
142 | "telegram": ""
143 | }, {
144 | "_id": "5acb5633b63b04532f14b35b",
145 | "bp_name": "fox",
146 | "organisation": "EOS Rio",
147 | "location": "Brazil, Rio de Janeiro",
148 | "node_addr": "eosrio.entropia.in",
149 | "port_http": "8889",
150 | "port_ssl": "",
151 | "port_p2p": "9876",
152 | "pub_key": "EOS88KfcP3uMHg3BJ6skz3ja7S7nYc54Ki4k5nUzySgXuMXqEQAfd",
153 | "bp": true,
154 | "enabled": true,
155 | "comment": "",
156 | "telegram": ""
157 | }, {
158 | "_id": "5acb5633b63b04532f14b35c",
159 | "bp_name": "fox_node",
160 | "organisation": "EOS Rio",
161 | "location": "Brazil, Rio de Janeiro",
162 | "node_addr": "54.233.222.22",
163 | "port_http": "8886",
164 | "port_ssl": "",
165 | "port_p2p": "9874",
166 | "pub_key": "EOS88KfcP3uMHg3BJ6skz3ja7S7nYc54Ki4k5nUzySgXuMXqEQAfd",
167 | "bp": false,
168 | "enabled": true,
169 | "comment": "",
170 | "telegram": ""
171 | }, {
172 | "_id": "5acb5633b63b04532f14b35d",
173 | "bp_name": "gorilla",
174 | "organisation": "EOS UK",
175 | "location": "UK",
176 | "node_addr": "Jungle.eosuk.io",
177 | "port_http": "8427",
178 | "port_ssl": "",
179 | "port_p2p": "9927",
180 | "pub_key": "EOS8MoH5xdnrsvNo2bd2So7QZXZx6Uyvuq8yMBikfUVhFmNoqCnLH",
181 | "bp": true,
182 | "enabled": true,
183 | "comment": "",
184 | "telegram": "@EOS_Nottingham @DanBroad"
185 | }, {
186 | "_id": "5acb5633b63b04532f14b35e",
187 | "bp_name": "honeybadger",
188 | "organisation": "EOS42",
189 | "location": "Uk, London",
190 | "node_addr": "35.189.107.125",
191 | "port_http": "8888",
192 | "port_ssl": "",
193 | "port_p2p": "9876",
194 | "pub_key": "EOS72X4XCPT7tfRXATi9DdatFS1jwTeQZDksbiiDG3SKTvj3FxxXx",
195 | "bp": true,
196 | "enabled": true,
197 | "comment": "",
198 | "telegram": ""
199 | }, {
200 | "_id": "5acb5633b63b04532f14b35f",
201 | "bp_name": "sloth",
202 | "organisation": "EOS Botetourt",
203 | "location": "Singapore",
204 | "node_addr": "188.166.226.110",
205 | "port_http": "8888",
206 | "port_ssl": "",
207 | "port_p2p": "9876",
208 | "pub_key": "EOS6jW8JkdRjrjgXdF8Fm2ZVnys6rCJ4fqSCPk9QgEpS9Vksse3rc",
209 | "bp": true,
210 | "enabled": true,
211 | "comment": "",
212 | "telegram": ""
213 | }, {
214 | "_id": "5acb5633b63b04532f14b360",
215 | "bp_name": "langurs",
216 | "organisation": "EOSgreen.io",
217 | "location": "UK",
218 | "node_addr": "eosgreen.uk.to",
219 | "port_http": "8777",
220 | "port_ssl": "",
221 | "port_p2p": "9543",
222 | "pub_key": "EOS8f36VS4PFLhr4xnRMDSvnLjwpkNv4n9NZLf4cF1ZpbTjRsUC3Z",
223 | "bp": true,
224 | "enabled": true,
225 | "comment": "",
226 | "telegram": ""
227 | }, {
228 | "_id": "5acb5633b63b04532f14b361",
229 | "bp_name": "tokki",
230 | "organisation": "www.eosnodeone.io",
231 | "location": "Seoul",
232 | "node_addr": "bpseoul.eosnodeone.io",
233 | "port_http": "8888",
234 | "port_ssl": "",
235 | "port_p2p": "9876",
236 | "pub_key": "EOS7h6Cz39hUym1vQkofXn51Ctdz4mryZaydRs2ph4Z8BuzmX7vwV",
237 | "bp": true,
238 | "enabled": true,
239 | "comment": "",
240 | "telegram": ""
241 | }, {
242 | "_id": "5acb5633b63b04532f14b362",
243 | "bp_name": "whale",
244 | "organisation": "EOS.Cafe",
245 | "location": "Canada",
246 | "node_addr": "whale.eoscalgary.com",
247 | "port_http": "80",
248 | "port_ssl": "",
249 | "port_p2p": "9876",
250 | "pub_key": "EOS8Y754s6fgT2rhAidn7N9zXJUXCw6o8iv3Xyy7kdgaDNLoqxJhu",
251 | "bp": true,
252 | "enabled": true,
253 | "comment": "",
254 | "telegram": ""
255 | }, {
256 | "_id": "5acb5633b63b04532f14b363",
257 | "bp_name": "panther",
258 | "organisation": "EOS42.io",
259 | "location": "London",
260 | "node_addr": "bp4-d3.eos42.io",
261 | "port_http": "8888",
262 | "port_ssl": "",
263 | "port_p2p": "9876",
264 | "pub_key": "EOS7zhtk8CjvuuT33Uyn6oXHMKqcifiMuSomqT6BmL5ptNBrmTubo",
265 | "bp": true,
266 | "enabled": true,
267 | "comment": "",
268 | "telegram": ""
269 | }, {
270 | "_id": "5acb5633b63b04532f14b364",
271 | "bp_name": "tortoise",
272 | "organisation": "EOSdac.io",
273 | "location": "UK",
274 | "node_addr": "145.239.252.91",
275 | "port_http": "8888",
276 | "port_ssl": "",
277 | "port_p2p": "9877",
278 | "pub_key": "EOS8Eb76Wf2DcGZ58c8i5MZeEZvECz8dyGmR6LZRboeHue59k6a2B",
279 | "bp": true,
280 | "enabled": true,
281 | "comment": "",
282 | "telegram": ""
283 | }, {
284 | "_id": "5acb5633b63b04532f14b365",
285 | "bp_name": "galapago",
286 | "organisation": "bitcoineos.fun",
287 | "location": "Germany",
288 | "node_addr": "95.216.20.181",
289 | "port_http": "7010",
290 | "port_ssl": "",
291 | "port_p2p": "7015",
292 | "pub_key": "EOS7eLwiaN1tqqNLKE3wgfV3MWPPCsxY5PFVpFpvj8jpqVKTkqouH",
293 | "bp": true,
294 | "enabled": true,
295 | "comment": "",
296 | "telegram": ""
297 | }, {
298 | "_id": "5acb5633b63b04532f14b366",
299 | "bp_name": "mpenjati",
300 | "organisation": "EOS.IO Africa",
301 | "location": "Africa",
302 | "node_addr": "mpenjati.eosio.africa",
303 | "port_http": "8888",
304 | "port_ssl": "",
305 | "port_p2p": "9876",
306 | "pub_key": "EOS67Znu8W4sBH4RzYAPy3MekGsbwNK7pJhreQoZh58RU9sDGPYzm",
307 | "bp": true,
308 | "enabled": true,
309 | "comment": "",
310 | "telegram": ""
311 | }, {
312 | "_id": "5acb5633b63b04532f14b367",
313 | "bp_name": "cougars",
314 | "organisation": "EOSeoul.io",
315 | "location": "Korea, Seoul",
316 | "node_addr": "testnet01.eoseoul.io",
317 | "port_http": "8801",
318 | "port_ssl": "",
319 | "port_p2p": "9901",
320 | "pub_key": "EOS7n66sCn99KpCCZ3pucUzXRtGaa38brfoERB71uF7GTopXFiWE2",
321 | "bp": true,
322 | "enabled": true,
323 | "comment": "",
324 | "telegram": ""
325 | }, {
326 | "_id": "5acb5633b63b04532f14b368",
327 | "bp_name": "ladybird",
328 | "organisation": "EOSBcn",
329 | "location": "Barcelona",
330 | "node_addr": "46.101.95.5",
331 | "port_http": "8888",
332 | "port_ssl": "",
333 | "port_p2p": "9876",
334 | "pub_key": "EOS4yS1YPWHaeEXGaT6RP5Hunyea1SgFdAUqEARyHXV5C7FUzbvLC",
335 | "bp": true,
336 | "enabled": true,
337 | "comment": " virtual server on Digital Ocean",
338 | "telegram": ""
339 | }, {
340 | "_id": "5acb5633b63b04532f14b369",
341 | "bp_name": "giraffe",
342 | "organisation": "Niuchain",
343 | "location": "Hong Kong",
344 | "node_addr": "154.48.249.19",
345 | "port_http": "8888",
346 | "port_ssl": "",
347 | "port_p2p": "9876",
348 | "pub_key": "EOS6Sfi9XvXa4QN4DiTdZnNcCf6U4ubLmVTozK8DYvdPUqhmh7KMu",
349 | "bp": true,
350 | "enabled": true,
351 | "comment": "user: Funny",
352 | "telegram": ""
353 | }, {
354 | "_id": "5acb5633b63b04532f14b36a",
355 | "bp_name": "rhino",
356 | "organisation": "HKEOS",
357 | "location": "Hong Kong",
358 | "node_addr": "alessia.hkeos.com",
359 | "port_http": "8888",
360 | "port_ssl": "",
361 | "port_p2p": "9876",
362 | "pub_key": "EOS4tiVonwbmT6w5jZjxaWx8p1CkejsBtcwtn6YaqZRteKyYGQZAE",
363 | "bp": true,
364 | "enabled": true,
365 | "comment": "",
366 | "telegram": ""
367 | }, {
368 | "_id": "5acb5633b63b04532f14b36b",
369 | "bp_name": "cheetah",
370 | "organisation": "EOS Amsterdam",
371 | "location": "Amsterdam",
372 | "node_addr": "cheetah.jungle3.bptn.eosamsterdam.net",
373 | "port_http": "8888",
374 | "port_ssl": "",
375 | "port_p2p": "9876",
376 | "pub_key": "EOS5FFj3wh77cDmwS1X4QcJcB19mS2CPbiv4R4VmeBtKzLeZNYwP4",
377 | "bp": true,
378 | "enabled": true,
379 | "comment": "@monetashi Boy Maas - EOS Amsterdam",
380 | "telegram": ""
381 | }, {
382 | "_id": "5acb5633b63b04532f14b36c",
383 | "bp_name": "termite",
384 | "organisation": "EOS-East",
385 | "location": "London",
386 | "node_addr": "robotikalis.ddns.net",
387 | "port_http": "8888",
388 | "port_ssl": "",
389 | "port_p2p": "9876",
390 | "pub_key": "EOS6Evo5cBXjCyydTbLcssGyUtez31PvxB2UTxt5BFdsL5MTqAaeR",
391 | "bp": true,
392 | "enabled": true,
393 | "comment": "old ant (EOS6ZyjuB8ip1wkifPfVqj1Ran9nynNr4hVJUhU88mZpWPbUBZ4X2)",
394 | "telegram": "Matthew"
395 | }, {
396 | "_id": "5acb5633b63b04532f14b36d",
397 | "bp_name": "snake",
398 | "organisation": "EOSIndia",
399 | "location": "India",
400 | "node_addr": "testnet.eosindia.io",
401 | "port_http": "8888",
402 | "port_ssl": "",
403 | "port_p2p": "9876",
404 | "pub_key": "EOS5gGPXgn2BjqdmHxY2S47dD7eUE7GNdtPuFGQqQM8AqvZk7kMBB",
405 | "bp": true,
406 | "enabled": true,
407 | "comment": "",
408 | "telegram": "@taraldesai"
409 | }, {
410 | "_id": "5acb5633b63b04532f14b36e",
411 | "bp_name": "tapir",
412 | "organisation": "0xc0ffee",
413 | "location": "Germany",
414 | "node_addr": "195.201.131.218",
415 | "port_http": "8888",
416 | "port_ssl": "",
417 | "port_p2p": "9876",
418 | "pub_key": "EOS7JGLyU17YFMwUjUSj3Udq8ST1hxYzdvs8rxwrGqVmTuAp9eJ2S",
419 | "bp": true,
420 | "enabled": true,
421 | "comment": "",
422 | "telegram": "@maxblock"
423 | }, {
424 | "_id": "5acb5633b63b04532f14b36f",
425 | "bp_name": "boar",
426 | "organisation": "EOSBR",
427 | "location": "USA, San Francisco",
428 | "node_addr": "138.68.238.129",
429 | "port_http": "8890",
430 | "port_ssl": "",
431 | "port_p2p": "9876",
432 | "pub_key": "EOS8XecFVmptNZktRCLyBV71V2hXoxmTonpZtQG8TGcW7K9aVc3m6",
433 | "bp": true,
434 | "enabled": true,
435 | "comment": "",
436 | "telegram": "@eduardoelias"
437 | }, {
438 | "_id": "5acb5633b63b04532f14b370",
439 | "bp_name": "spider",
440 | "organisation": "北京星云比特科技有限公司",
441 | "location": "China , Beijing",
442 | "node_addr": "211.159.182.240",
443 | "port_http": "8888",
444 | "port_ssl": "",
445 | "port_p2p": "9876",
446 | "pub_key": "EOS7ez4g6m6jXh1fJND2hjFpfKr2f5Bj8fQq4eNWoRKErqYfvZyea",
447 | "bp": true,
448 | "enabled": true,
449 | "comment": "",
450 | "telegram": "@eduardoelias"
451 | }, {
452 | "_id": "5acbb445b63b04532f14b371",
453 | "bp_name": "koala",
454 | "organisation": "GenerEOS",
455 | "location": "Australia, Sydney",
456 | "node_addr": "jungle.genereos.io",
457 | "port_http": "8888",
458 | "port_ssl": "",
459 | "port_p2p": "9876",
460 | "pub_key": "EOS77uvbjTcBWvk9Le8gGYw7AxXEfibHdxNnREBHQQMEoNnYcWTtA",
461 | "bp": true,
462 | "enabled": true,
463 | "comment": "Google Cloud",
464 | "telegram": "@nsrempel"
465 | }, {
466 | "_id": "5acbd4294b43bf14300f9830",
467 | "bp_name": "beaver",
468 | "organisation": "EOS Calgary",
469 | "location": "Canada, Calgary",
470 | "node_addr": "54.200.153.106",
471 | "port_http": "8888",
472 | "port_ssl": "",
473 | "port_p2p": "9876",
474 | "pub_key": "EOS7PegBZsf9i9briyqsuwR7Hr2e2pkm9DYifogUnRb6ewZTbMNJt",
475 | "bp": true,
476 | "enabled": true,
477 | "comment": "",
478 | "telegram": "@n_doy"
479 | }, {
480 | "_id": "5acc92d44b43bf14300f9832",
481 | "bp_name": "unicorn",
482 | "organisation": "SuperONE.io",
483 | "location": "China",
484 | "node_addr": "39.108.231.157",
485 | "port_http": "8888",
486 | "port_ssl": "",
487 | "port_p2p": "9876",
488 | "pub_key": "EOS6e4KFmvuSyCudd8KhuEiSt19Bcoa6kUYCMaT5wBTVPnxyy5Aow",
489 | "bp": true,
490 | "enabled": true,
491 | "comment": "",
492 | "telegram": "@robinwen"
493 | }, {
494 | "_id": "5acc976c4b43bf14300f9833",
495 | "bp_name": "scorpion",
496 | "organisation": "EOS Zodiac",
497 | "location": "China, Peking",
498 | "node_addr": "139.198.3.99",
499 | "port_http": "8888",
500 | "port_ssl": "",
501 | "port_p2p": "9876",
502 | "pub_key": "EOS7Yspf9WSFLrY1VmDWf1Gxz3DzBndCq33PCNgFqmywcV6hG7u38",
503 | "bp": true,
504 | "enabled": true,
505 | "comment": "Qing Cloud",
506 | "telegram": "@liangcd"
507 | }, {
508 | "_id": "5acdca924b43bf14300f9834",
509 | "bp_name": "hummingbird",
510 | "organisation": "EOSeco",
511 | "location": "China, Shanghai",
512 | "node_addr": "jungle.eoseco.net",
513 | "port_http": "8888",
514 | "port_ssl": "",
515 | "port_p2p": "9876",
516 | "pub_key": "EOS85fDTxvb2P6cXuz5nQyaDwTPbemwcw6KyVDmHHZaGFNog5fBCK",
517 | "bp": true,
518 | "enabled": true,
519 | "comment": "",
520 | "telegram": "@Joshuaqiu"
521 | }, {
522 | "_id": "5acf1ae24b43bf14300f9835",
523 | "bp_name": "tiger-node",
524 | "organisation": "CryptoLions.io",
525 | "location": "Ukraine, Lviv",
526 | "node_addr": "193.93.219.219",
527 | "port_http": "6888",
528 | "port_ssl": "",
529 | "port_p2p": "7876",
530 | "pub_key": "",
531 | "bp": false,
532 | "enabled": false,
533 | "comment": "",
534 | "telegram": ""
535 | }, {
536 | "_id": "5acf27984b43bf14300f9836",
537 | "bp_name": "kangaroo",
538 | "organisation": "EOSphere.io",
539 | "location": "Australia",
540 | "node_addr": "jungle.eosphere.io",
541 | "port_http": "8888",
542 | "port_ssl": "",
543 | "port_p2p": "9876",
544 | "pub_key": "EOS6ahXXcoe7gku6tAguFviS9KB7yA9S74ayKrEva1p1aNvcEU3TB",
545 | "bp": true,
546 | "enabled": true,
547 | "comment": "",
548 | "telegram": "@walt_EOSphere"
549 | }, {
550 | "_id": "5acf29f74b43bf14300f9837",
551 | "bp_name": "leaf",
552 | "organisation": "Dynamics",
553 | "location": "Netherlands",
554 | "node_addr": "185.244.150.11",
555 | "port_http": "8888",
556 | "port_ssl": "",
557 | "port_p2p": "9876",
558 | "pub_key": "EOS6WMkjL2CDxqRwTGw9CftTVynzGQDZG87qQtNrDSu6PFLDyHVWP",
559 | "bp": true,
560 | "enabled": true,
561 | "comment": "",
562 | "telegram": "@Rick285"
563 | }, {
564 | "_id": "5acfaba54b43bf14300f9838",
565 | "bp_name": "macaw",
566 | "organisation": "EOSMX",
567 | "location": "USA",
568 | "node_addr": "52.44.113.122",
569 | "port_http": "80",
570 | "port_ssl": "",
571 | "port_p2p": "9876",
572 | "pub_key": "EOS7WDxeKKZWapFzHoKukzCoT3rt91DNRwNccAjDakmgPtrWmXsd3",
573 | "bp": true,
574 | "enabled": true,
575 | "comment": "",
576 | "telegram": "Rick"
577 | }, {
578 | "_id": "5acfc36b4b43bf14300f9839",
579 | "bp_name": "parrot",
580 | "organisation": "Todd Fleming",
581 | "location": "USA, Virginia",
582 | "node_addr": "testchain.jscut.org",
583 | "port_http": "8888",
584 | "port_ssl": "",
585 | "port_p2p": "9876",
586 | "pub_key": "EOS7noqKmnnuh1u1Ha35FqyJ8ZXm5rR5vPmr9L7Db6QB3qgHrF9hP",
587 | "bp": true,
588 | "enabled": true,
589 | "comment": "",
590 | "telegram": "Todd Fleming"
591 | }, {
592 | "_id": "5ad07b964b43bf14300f983a",
593 | "bp_name": "pug",
594 | "organisation": "ViaBTC",
595 | "location": "China, Shenzhen",
596 | "node_addr": "120.79.155.118",
597 | "port_http": "8888",
598 | "port_ssl": "",
599 | "port_p2p": "9877",
600 | "pub_key": "EOS589V9T9EBqMZoE8urrtDzaCu6YWwg7ZhY6HKgxtqWRPH19ABGA",
601 | "bp": true,
602 | "enabled": true,
603 | "comment": "",
604 | "telegram": "@Robin_lg"
605 | }, {
606 | "_id": "5ad098b54b43bf14300f983b",
607 | "bp_name": "capybara",
608 | "organisation": "EOSDublin.com",
609 | "location": "Dublin",
610 | "node_addr": "testnet.eosdublin.io",
611 | "port_http": "8444",
612 | "port_ssl": "8444",
613 | "port_p2p": "9878",
614 | "pub_key": "EOS6L6TyvSbPFfPNEoM8ZAs23xZK68yYUBqeSRbuZRu3EWsG3LUF8",
615 | "bp": true,
616 | "enabled": true,
617 | "comment": "",
618 | "telegram": "@samnoble"
619 | }, {
620 | "_id": "5ad127c04b43bf14300f983c",
621 | "bp_name": "bear",
622 | "organisation": "EOS SLC",
623 | "location": "USA, Bluffdale, UT",
624 | "node_addr": "eosslc.com",
625 | "port_http": "8889",
626 | "port_ssl": "",
627 | "port_p2p": "9877",
628 | "pub_key": "EOS6nU85ioXFHATeCCudwc3BUwAR5Ya68XpsP4uLqX9Lvjj2sPiFC",
629 | "bp": true,
630 | "enabled": true,
631 | "comment": "",
632 | "telegram": "@eluzgin"
633 | }, {
634 | "_id": "5ad1b8324b43bf14300f983d",
635 | "bp_name": "salamander",
636 | "organisation": "Worbli",
637 | "location": "USA Ohio",
638 | "node_addr": "jungle.worbli.io",
639 | "port_http": "8888",
640 | "port_ssl": "",
641 | "port_p2p": "9876",
642 | "pub_key": "EOS6GQUD2VZPdNJUyUNBGcgVT96CrnQmMRuCCf8vGESSk6ayE2nGG",
643 | "bp": true,
644 | "enabled": true,
645 | "comment": "",
646 | "telegram": "Robert DeWilder - Worbli"
647 | }, {
648 | "_id": "5ad1c1a24b43bf14300f983e",
649 | "bp_name": "crow",
650 | "organisation": "EOS UIP",
651 | "location": "China",
652 | "node_addr": "47.92.97.56",
653 | "port_http": "8888",
654 | "port_ssl": "",
655 | "port_p2p": "9876",
656 | "pub_key": "EOS693uVCr2rKpM7DisgghshmztgLiEuURj93q9ijeHWAN1SUV9Pt",
657 | "bp": true,
658 | "enabled": true,
659 | "comment": "",
660 | "telegram": "ben"
661 | }, {
662 | "_id": "5ad1c5fc4b43bf14300f983f",
663 | "bp_name": "wildcat",
664 | "organisation": "EOS Asia",
665 | "location": "Seoul",
666 | "node_addr": "bp-test.eosasia.one",
667 | "port_http": "8800",
668 | "port_ssl": "",
669 | "port_p2p": "6600",
670 | "pub_key": "EOS61JHByEJf3Ro6zJq6Xe2EG82tW4o365V1zYeWWK24WRxF13mwS",
671 | "bp": true,
672 | "enabled": true,
673 | "comment": "",
674 | "telegram": "@Gaijinjoe"
675 | }, {
676 | "_id": "5ad2106e4b43bf14300f9840",
677 | "bp_name": "elk",
678 | "organisation": "EOS Gravity",
679 | "location": "Hong Kong",
680 | "node_addr": "47.52.18.70",
681 | "port_http": "8388",
682 | "port_ssl": "",
683 | "port_p2p": "3389",
684 | "pub_key": "EOS61v6RWcFMuRMTVZUWYjPnhQBWqzBkXtHV8jrQ7bBTAry6etEhU",
685 | "bp": true,
686 | "enabled": true,
687 | "comment": "",
688 | "telegram": "@Gaijinjoe"
689 | }, {
690 | "_id": "5ad2707b4b43bf14300f9842",
691 | "bp_name": "tarsier",
692 | "organisation": "blckchnd.com",
693 | "location": "Germany, Falkenstein",
694 | "node_addr": "jungle.eos.blckchnd.com",
695 | "port_http": "8888",
696 | "port_ssl": "",
697 | "port_p2p": "9876",
698 | "pub_key": "EOS6VG88TsufLFhHYJscqXYQWFWgDCHUBYtvk6eXvpxEuYV9MUKGk",
699 | "bp": true,
700 | "enabled": true,
701 | "comment": "",
702 | "telegram": "@ruslansalikhov"
703 | }, {
704 | "_id": "5ad30fc14b43bf14300f9843",
705 | "bp_name": "toucan",
706 | "organisation": "wancloud",
707 | "location": "HongKong",
708 | "node_addr": "128.1.133.206",
709 | "port_http": "8888",
710 | "port_ssl": "",
711 | "port_p2p": "9876",
712 | "pub_key": "EOS7wUEGtMFCVo4QA3Rica9wEsuVz6DAtEyNFyah22SmuLqxVcdrt",
713 | "bp": true,
714 | "enabled": true,
715 | "comment": "",
716 | "telegram": "@ahlifei"
717 | }, {
718 | "_id": "5ad3101c4b43bf14300f9844",
719 | "bp_name": "bull",
720 | "organisation": "EOS.Hedging",
721 | "location": "Hong Kong",
722 | "node_addr": "47.52.64.9",
723 | "port_http": "8888",
724 | "port_ssl": "",
725 | "port_p2p": "9876",
726 | "pub_key": "EOS8kSPL1GDUFJqQbESNTTLAuERuNTUtNvj2EUTAFEf2U5iq5iyAA",
727 | "bp": true,
728 | "enabled": true,
729 | "comment": "",
730 | "telegram": "luyao zhang"
731 | }, {
732 | "_id": "5ad3114b4b43bf14300f9845",
733 | "bp_name": "doppelganger",
734 | "organisation": "James Sutherland",
735 | "location": "USA Oregon",
736 | "node_addr": "52.37.122.21",
737 | "port_http": "8888",
738 | "port_ssl": "",
739 | "port_p2p": "9876",
740 | "pub_key": "EOS5FFKwpH6HzCtndWMDi77BVF6yNrdz4sLp9vG6YFw3NpzFhrXiN",
741 | "bp": true,
742 | "enabled": true,
743 | "comment": "",
744 | "telegram": "James Sutherland"
745 | }, {
746 | "_id": "5ad311c94b43bf14300f9846",
747 | "bp_name": "eagle",
748 | "organisation": "EOS Beijing",
749 | "location": "Hongkong",
750 | "node_addr": "eosbeijing.one",
751 | "port_http": "8888",
752 | "port_ssl": "",
753 | "port_p2p": "9876",
754 | "pub_key": "EOS6q3CV1Wv4nxwjw1No7M22CcM7AeRM2eZdaaNqsEmouD3saMArj",
755 | "bp": true,
756 | "enabled": true,
757 | "comment": "",
758 | "telegram": "lucas shang"
759 | }, {
760 | "_id": "5ad315664b43bf14300f9847",
761 | "bp_name": "wolverine",
762 | "organisation": "BP Node",
763 | "location": "Canada, Monreal",
764 | "node_addr": "35.182.46.236",
765 | "port_http": "9879",
766 | "port_ssl": "",
767 | "port_p2p": "6879",
768 | "pub_key": "EOS4wGAn8b5Aw2e2H7Y3x7jspV2e5pkrMFdYfgwzUsmbENr33cmA2",
769 | "bp": true,
770 | "enabled": true,
771 | "comment": "",
772 | "telegram": "@ssekhon"
773 | }, {
774 | "_id": "5ad394c34b43bf14300f9848",
775 | "bp_name": "raven",
776 | "organisation": "EOS NL",
777 | "location": "Frankfurt",
778 | "node_addr": "52.58.245.131",
779 | "port_http": "8888",
780 | "port_ssl": "",
781 | "port_p2p": "9876",
782 | "pub_key": "EOS5E6qVDEVFe9ZE9fPxWTCdjTVcbxH11K5PqwZPPFwfFqwfD5DrY",
783 | "bp": true,
784 | "enabled": true,
785 | "comment": "",
786 | "telegram": "@ThomasStorm"
787 | }, {
788 | "_id": "5ad40a504b43bf14300f9849",
789 | "bp_name": "gazelle",
790 | "organisation": "BlockSmith",
791 | "location": "USA",
792 | "node_addr": "198.58.114.211",
793 | "port_http": "8888",
794 | "port_ssl": "",
795 | "port_p2p": "9876",
796 | "pub_key": "EOS7GpCZ7Sc5L5MMP18bNfqQH6Ga1tDaaN69ynUa1tfZQw32xWdzQ",
797 | "bp": true,
798 | "enabled": true,
799 | "comment": "",
800 | "telegram": "@JerryHuff"
801 | }, {
802 | "_id": "5ad477c54b43bf14300f984a",
803 | "bp_name": "marten",
804 | "organisation": "TestNode",
805 | "location": "Russia",
806 | "node_addr": "217.115.85.26",
807 | "port_http": "8888",
808 | "port_ssl": "",
809 | "port_p2p": "9876",
810 | "pub_key": "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
811 | "bp": true,
812 | "enabled": true,
813 | "comment": "",
814 | "telegram": "@sss_CRS_sss"
815 | }, {
816 | "_id": "5ad4a9f54b43bf14300f984b",
817 | "bp_name": "hippo",
818 | "organisation": "EOSBlock.co",
819 | "location": "USA, Los Angeles",
820 | "node_addr": "107.150.102.38",
821 | "port_http": "8888",
822 | "port_ssl": "",
823 | "port_p2p": "9876",
824 | "pub_key": "EOS7QjAfxo5Rkjh6KoudvaJMasCvE41CKy1uQTZdDfqgAwqa2LCvy",
825 | "bp": true,
826 | "enabled": true,
827 | "comment": "",
828 | "telegram": "@tyeenoprom"
829 | }, {
830 | "_id": "5ad4d07d4b43bf14300f984c",
831 | "bp_name": "racoon",
832 | "organisation": "eosemerge.io",
833 | "location": "Poland",
834 | "node_addr": "188.117.144.164",
835 | "port_http": "8889",
836 | "port_ssl": "",
837 | "port_p2p": "9877",
838 | "pub_key": "EOS8SmmiQj71JLJtfUenYb2S1y2gdfWCALnbRUXSeosc5R1GC4gpi",
839 | "bp": true,
840 | "enabled": true,
841 | "comment": "",
842 | "telegram": "@Om4tic"
843 | }, {
844 | "_id": "5ad6242c4b43bf14300f984d",
845 | "bp_name": "quokka",
846 | "organisation": "EOSREAL",
847 | "location": "Mumbai-AWS",
848 | "node_addr": "quokka.eosreal.io",
849 | "port_http": "8868",
850 | "port_ssl": "",
851 | "port_p2p": "9886",
852 | "pub_key": "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
853 | "bp": true,
854 | "enabled": true,
855 | "comment": "",
856 | "telegram": "mao EOSREAL"
857 | }, {
858 | "_id": "5ad7384b4b43bf14300f984e",
859 | "bp_name": "rabbit",
860 | "organisation": "EOS Cannon",
861 | "location": "China",
862 | "node_addr": "119.3.22.124",
863 | "port_http": "8888",
864 | "port_ssl": "",
865 | "port_p2p": "9876",
866 | "pub_key": "EOS5Cdoskbc6pY3M7TPg79utscwuME92CR7J7CwsKjHhgeDfoAPuQ",
867 | "bp": true,
868 | "enabled": true,
869 | "comment": "",
870 | "telegram": "@Luckybean"
871 | }, {
872 | "_id": "5ad891aa8faa930771489b34",
873 | "bp_name": "panther-node",
874 | "organisation": "EOS42",
875 | "location": "UK, London",
876 | "node_addr": "node-d3.eos42.io",
877 | "port_http": "8888",
878 | "port_ssl": "",
879 | "port_p2p": "9876",
880 | "pub_key": "EOS54VPto7BFG7taN5myqbtojAdSmvBU1wHhKkzBKmNUdGJGMuZpb",
881 | "bp": false,
882 | "enabled": true,
883 | "comment": "",
884 | "telegram": "@ankh2054 Charles H - EOS 42"
885 | }, {
886 | "_id": "5adb9b8c8faa930771489b73",
887 | "bp_name": "mamba",
888 | "organisation": "mamba",
889 | "location": "USA, Denver, CO",
890 | "node_addr": "5280.duckdns.org",
891 | "port_http": "8888",
892 | "port_ssl": "",
893 | "port_p2p": "9876",
894 | "pub_key": "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
895 | "bp": true,
896 | "enabled": true,
897 | "comment": "",
898 | "telegram": "James L"
899 | }, {
900 | "_id": "5adc73c88faa930771489b75",
901 | "bp_name": "monkey",
902 | "organisation": "EOSLaoMao.com",
903 | "location": "Japan, Tokyo",
904 | "node_addr": "meow.eoslaomao.com",
905 | "port_http": "80",
906 | "port_ssl": "",
907 | "port_p2p": "9876",
908 | "pub_key": "EOS5QT5g1t4PqpmTo4hzoj5rtc7j2CRjCJfbq3Sb2f4TdzgwXjxXC",
909 | "bp": true,
910 | "enabled": true,
911 | "comment": "",
912 | "telegram": "@zhaoyu"
913 | }, {
914 | "_id": "5adda414f7b72709b418669a",
915 | "bp_name": "glowwarm",
916 | "organisation": "ChainPool",
917 | "location": "Japan, Tokyo",
918 | "node_addr": "dev.chainpool.io",
919 | "port_http": "7780",
920 | "port_ssl": "",
921 | "port_p2p": "7781",
922 | "pub_key": "EOS7GEL7tGYSjLXJhnHhupeJY2grTz2U3SXwLRxFqrcvfryyPzauN",
923 | "bp": true,
924 | "enabled": true,
925 | "comment": "",
926 | "telegram": "@liuchengxu"
927 | }, {
928 | "_id": "5addd296f7b72709b418669b",
929 | "bp_name": "frog",
930 | "organisation": "Bitfinex",
931 | "location": "Switzerland, Zurich",
932 | "node_addr": "eos-bp.bitfinex.com",
933 | "port_http": "8888",
934 | "port_ssl": "",
935 | "port_p2p": "9876",
936 | "pub_key": "EOS64PTtiaVKf2zMWDuC93mFNPQaGzGeu2EgzaRcHhbALtXACh6KA",
937 | "bp": true,
938 | "enabled": true,
939 | "comment": "",
940 | "telegram": "@prdn0"
941 | }, {
942 | "_id": "5addff24f7b72709b418669c",
943 | "bp_name": "dolphin",
944 | "organisation": "EOSEOS",
945 | "location": "Ireland",
946 | "node_addr": "34.251.121.82",
947 | "port_http": "8888",
948 | "port_ssl": "",
949 | "port_p2p": "9876",
950 | "pub_key": "EOS7UddrMsaVTpJoWYg3YRzMLsD2QUCAaBskYcgDnka78d4mpxXhy",
951 | "bp": true,
952 | "enabled": true,
953 | "comment": "",
954 | "telegram": "It"
955 | }, {
956 | "_id": "5ade0099f7b72709b418669d",
957 | "bp_name": "lamb",
958 | "organisation": "EOSVibes",
959 | "location": "Germany, Kassel",
960 | "node_addr": "173.212.227.190",
961 | "port_http": "8888",
962 | "port_ssl": "",
963 | "port_p2p": "9876",
964 | "pub_key": "EOS7UP6X1dtetsL5hkCiC77sxadkLoJHvbk9hc1WAx7tVyGVrBwzb",
965 | "bp": true,
966 | "enabled": true,
967 | "comment": "",
968 | "telegram": "@boltxyz"
969 | }, {
970 | "_id": "5adefc42503ce85f129c1abd",
971 | "bp_name": "honeybadger-node",
972 | "organisation": "EOS42",
973 | "location": "UK, London",
974 | "node_addr": "node2-d3.eos42.io",
975 | "port_http": "8888",
976 | "port_ssl": "",
977 | "port_p2p": "9876",
978 | "pub_key": "EOS5yJ2N3U6viyrg7XLnhhVQQSdznLWqhekJfzgvCFoM9AyWBFQf1",
979 | "bp": false,
980 | "enabled": true,
981 | "comment": "",
982 | "telegram": "@ankh2054"
983 | }, {
984 | "_id": "5adf06468438a46066e14004",
985 | "bp_name": "alligator",
986 | "organisation": "eosONO",
987 | "location": "Japan, Tokyo",
988 | "node_addr": "bp-test.ono.chat",
989 | "port_http": "8888",
990 | "port_ssl": "",
991 | "port_p2p": "9876",
992 | "pub_key": "EOS8HLWem6rZQFRv8NYY3dxf6r3A5bmcazp8ydWqBrbnLcYurN435",
993 | "bp": true,
994 | "enabled": true,
995 | "comment": "",
996 | "telegram": "@yongbin"
997 | }, {
998 | "_id": "5adf0d4f8438a46066e14005",
999 | "bp_name": "ocelot",
1000 | "organisation": "sandwich.farm",
1001 | "location": "NL, Amsterdam",
1002 | "node_addr": "avocado-toast.sandwich.farm",
1003 | "port_http": "8888",
1004 | "port_ssl": "",
1005 | "port_p2p": "9876",
1006 | "pub_key": "EOS78HLh97rLHPEMknsgnYKtWAnQmbCCD9fRYAPHx3T6fS1caj36n",
1007 | "bp": true,
1008 | "enabled": true,
1009 | "comment": "",
1010 | "telegram": "@sandw1ch"
1011 | }, {
1012 | "_id": "5adf2afe8438a46066e14006",
1013 | "bp_name": "koalabear",
1014 | "organisation": "EosLove",
1015 | "location": "Singapore",
1016 | "node_addr": "18.219.28.205",
1017 | "port_http": "8886",
1018 | "port_ssl": "",
1019 | "port_p2p": "9876",
1020 | "pub_key": "EOS7kBkjG2ogTFDasfQ9VZobbpyEDrYiSW1PDhEkhUaGbJbvqoHj5",
1021 | "bp": true,
1022 | "enabled": true,
1023 | "comment": "",
1024 | "telegram": "@EosLove"
1025 | }, {
1026 | "_id": "5adf94f58438a46066e14007",
1027 | "bp_name": "axolotl",
1028 | "organisation": "EOS.Cafe",
1029 | "location": "Canada",
1030 | "node_addr": "axolotl.eoscalgary.com",
1031 | "port_http": "80",
1032 | "port_ssl": "",
1033 | "port_p2p": "9878",
1034 | "pub_key": "EOS7xu6d3GxLbw4CKhxCQeSxg8NV1wjPPrgkBTYeU94dbe7kbQddk",
1035 | "bp": false,
1036 | "enabled": true,
1037 | "comment": "",
1038 | "telegram": "@eoscalgary"
1039 | }, {
1040 | "_id": "5adfa1d78438a46066e14008",
1041 | "bp_name": "croc",
1042 | "organisation": "EOS Floripa",
1043 | "location": "USA, Oregon",
1044 | "node_addr": "34.209.174.121",
1045 | "port_http": "8888",
1046 | "port_ssl": "",
1047 | "port_p2p": "9876",
1048 | "pub_key": "EOS6LiB3hf5qA6EqrP1sTJVF7uq6Qg7DCYzpeFcHXb1pVzS5sh8rw",
1049 | "bp": true,
1050 | "enabled": false,
1051 | "comment": "",
1052 | "telegram": "@rogerioricha"
1053 | }, {
1054 | "_id": "5ae030f28438a46066e14009",
1055 | "bp_name": "duck",
1056 | "organisation": "EOSYS",
1057 | "location": "Korea, Seoul",
1058 | "node_addr": "test.eosys.io",
1059 | "port_http": "8888",
1060 | "port_ssl": "",
1061 | "port_p2p": "9874",
1062 | "pub_key": "EOS5PASRHa8rcZZ71FSwyMnqxtbhoiAvYwbe9T58WxCxU4x85rNfs",
1063 | "bp": true,
1064 | "enabled": true,
1065 | "comment": "",
1066 | "telegram": "@boseokkang"
1067 | }, {
1068 | "_id": "5ae032a78438a46066e1400a",
1069 | "bp_name": "pony",
1070 | "organisation": "www.eoshuobipool.com",
1071 | "location": "Japan",
1072 | "node_addr": "13.114.33.147",
1073 | "port_http": "8888",
1074 | "port_ssl": "",
1075 | "port_p2p": "9876",
1076 | "pub_key": "EOS8Z37zt7AxwhxbXhEDAM4uRJBhysqjnpCtmKGonoWw3hfw4c6Lw",
1077 | "bp": true,
1078 | "enabled": true,
1079 | "comment": "",
1080 | "telegram": "@Gaijinjoe"
1081 | }, {
1082 | "_id": "5ae053608438a46066e1400b",
1083 | "bp_name": "orca",
1084 | "organisation": "EOS Galaxy",
1085 | "location": "China",
1086 | "node_addr": "113.208.116.110",
1087 | "port_http": "8888",
1088 | "port_ssl": "",
1089 | "port_p2p": "9876",
1090 | "pub_key": "EOS5EmMynemBu8MuzyQKcFCM2pHgyaLfcvNi9aUzQxS2Xr1mr69cU",
1091 | "bp": true,
1092 | "enabled": true,
1093 | "comment": "",
1094 | "telegram": "Kevin Xu"
1095 | }, {
1096 | "_id": "5ae07d608438a46066e1400c",
1097 | "bp_name": "earthworm",
1098 | "organisation": "EOS Plane",
1099 | "location": "USA",
1100 | "node_addr": "35.192.58.50",
1101 | "port_http": "8888",
1102 | "port_ssl": "",
1103 | "port_p2p": "9876",
1104 | "pub_key": "EOS7CdNnZoaPtJaDdobHW1dE6AkYRkhq5mfrvBju65DwTmsdpS8Tr",
1105 | "bp": true,
1106 | "enabled": true,
1107 | "comment": "",
1108 | "telegram": "saomany"
1109 | }, {
1110 | "_id": "5ae093ee8438a46066e1400d",
1111 | "bp_name": "toad",
1112 | "organisation": "eosraychain.com",
1113 | "location": "Hong Kong",
1114 | "node_addr": "bptn.eosraychain.com",
1115 | "port_http": "80",
1116 | "port_ssl": "",
1117 | "port_p2p": "9888",
1118 | "pub_key": "EOS6hYcUS9sXuzpeSFLexasPjpp9b56EKDFHSV1F3WWA5ko7gvKSM",
1119 | "bp": true,
1120 | "enabled": true,
1121 | "comment": "",
1122 | "telegram": "Eos Raychain"
1123 | }, {
1124 | "_id": "5ae09a198438a46066e1400e",
1125 | "bp_name": "shark",
1126 | "organisation": "EOSNz",
1127 | "location": "Newzealand",
1128 | "node_addr": "13.211.63.122",
1129 | "port_http": "8888",
1130 | "port_ssl": "",
1131 | "port_p2p": "9876",
1132 | "pub_key": "EOS84sx3uUzZ4pzHznt3A1dLLewtr6dvu7nMTZbBCLmVxCvSba1Jo",
1133 | "bp": true,
1134 | "enabled": true,
1135 | "comment": "",
1136 | "telegram": "@KrisEOSnz"
1137 | }, {
1138 | "_id": "5ae139b98438a46066e1400f",
1139 | "bp_name": "puffin",
1140 | "organisation": "eosvan.com",
1141 | "location": "Canada, Vancouver",
1142 | "node_addr": "54.189.199.39",
1143 | "port_http": "8888",
1144 | "port_ssl": "",
1145 | "port_p2p": "9876",
1146 | "pub_key": "EOS7VURE7AErUDi8Pfb1fULiPNxGnqmkikhS4JhByj7LSzHBNWchq",
1147 | "bp": true,
1148 | "enabled": true,
1149 | "comment": "",
1150 | "telegram": "Chen (EOSVan)"
1151 | }, {
1152 | "_id": "5ae19f318438a46066e14010",
1153 | "bp_name": "fatmouse",
1154 | "organisation": "EOS HDTap",
1155 | "location": "China",
1156 | "node_addr": "eos.shangtv.cn",
1157 | "port_http": "28888",
1158 | "port_ssl": "",
1159 | "port_p2p": "29876",
1160 | "pub_key": "EOS7xMRvmUxk819FTdL5pdP9ytar9XaZ7JLzwvQnj3siHWA6nJA56",
1161 | "bp": true,
1162 | "enabled": true,
1163 | "comment": "",
1164 | "telegram": "@Yonsen"
1165 | }, {
1166 | "_id": "5ae1c2488438a46066e14011",
1167 | "bp_name": "dogo",
1168 | "organisation": "eosargentina.io",
1169 | "location": "USA, Miami",
1170 | "node_addr": "n2.eosargentina.io",
1171 | "port_http": "8888",
1172 | "port_ssl": "",
1173 | "port_p2p": "9876",
1174 | "pub_key": "EOS6NaEcWX3DSTf8jrjb5UNeZikL7RY4tJ8t4w4bC8Z2HbTveRLGb",
1175 | "bp": true,
1176 | "enabled": true,
1177 | "comment": "",
1178 | "telegram": "@JChitty"
1179 | }]
1180 | }
1181 |
--------------------------------------------------------------------------------
/out.log:
--------------------------------------------------------------------------------
1 | Node list loaded from "nodes.json"
2 | jungle.cryptolions.io:8888
3 | dev.cryptolions.io:8888
4 | 193.93.219.219:8888
5 | jungle.eosnewyork.io:8888
6 | ctestnet.edenx.io:8062
7 | mowgli.jungle3.eos.roelandp.nl:8765
8 | 93.176.188.7:8888
9 | 18.188.52.250:8877
10 | mosquito.prometeos.io:8889
11 | pearls.capital:8888
12 | eosrio.entropia.in:8889
13 | 54.233.222.22:8886
14 | Jungle.eosuk.io:8427
15 | 35.189.107.125:8888
16 | 188.166.226.110:8888
17 | eosgreen.uk.to:8777
18 | bpseoul.eosnodeone.io:8888
19 | whale.eoscalgary.com:80
20 | bp4-d3.eos42.io:8888
21 | 145.239.252.91:8888
22 | 95.216.20.181:7010
23 | mpenjati.eosio.africa:8888
24 | testnet01.eoseoul.io:8801
25 | 46.101.95.5:8888
26 | 154.48.249.19:8888
27 | alessia.hkeos.com:8888
28 | cheetah.jungle3.bptn.eosamsterdam.net:8888
29 | robotikalis.ddns.net:8888
30 | testnet.eosindia.io:8888
31 | 195.201.131.218:8888
32 | 138.68.238.129:8890
33 | 211.159.182.240:8888
34 | jungle.genereos.io:8888
35 | 54.200.153.106:8888
36 | 39.108.231.157:8888
37 | 139.198.3.99:8888
38 | jungle.eoseco.net:8888
39 | 193.93.219.219:6888
40 | jungle.eosphere.io:8888
41 | 185.244.150.11:8888
42 | 52.44.113.122:80
43 | testchain.jscut.org:8888
44 | 120.79.155.118:8888
45 | testnet.eosdublin.io:8444
46 | eosslc.com:8889
47 | jungle.worbli.io:8888
48 | 47.92.97.56:8888
49 | bp-test.eosasia.one:8800
50 | 47.52.18.70:8388
51 | jungle.eos.blckchnd.com:8888
52 | 128.1.133.206:8888
53 | 47.52.64.9:8888
54 | 52.37.122.21:8888
55 | eosbeijing.one:8888
56 | 35.182.46.236:9879
57 | 52.58.245.131:8888
58 | 198.58.114.211:8888
59 | 217.115.85.26:8888
60 | 107.150.102.38:8888
61 | 188.117.144.164:8889
62 | quokka.eosreal.io:8868
63 | 119.3.22.124:8888
64 | node-d3.eos42.io:8888
65 | 5280.duckdns.org:8888
66 | meow.eoslaomao.com:80
67 | dev.chainpool.io:7780
68 | eos-bp.bitfinex.com:8888
69 | 34.251.121.82:8888
70 | 173.212.227.190:8888
71 | node2-d3.eos42.io:8888
72 | bp-test.ono.chat:8888
73 | avocado-toast.sandwich.farm:8888
74 | 18.219.28.205:8886
75 | axolotl.eoscalgary.com:80
76 | 34.209.174.121:8888
77 | test.eosys.io:8888
78 | 13.114.33.147:8888
79 | 113.208.116.110:8888
80 | 35.192.58.50:8888
81 | bptn.eosraychain.com:80
82 | 13.211.63.122:8888
83 | 54.189.199.39:8888
84 | eos.shangtv.cn:28888
85 | n2.eosargentina.io:8888
86 | Firing requests from: 201.18.14.130
87 | 1 / 84
88 | Fetching data from http://jungle.cryptolions.io:8888/v1/chain/get_info
89 | Target: 94.154.212.15 | Latency: 750.378 ms
90 | 2 / 84
91 | Fetching data from http://dev.cryptolions.io:8888/v1/chain/get_info
92 | Target: 88.99.97.30 | Latency: 457.017 ms
93 | 3 / 84
94 | Fetching data from http://193.93.219.219:8888/v1/chain/get_info
95 | Target: 193.93.219.219 | Latency: 539.789 ms
96 | 4 / 84
97 | Fetching data from http://jungle.eosnewyork.io:8888/v1/chain/get_info
98 | Target: 35.182.242.240 | Latency: 285.794 ms
99 | 5 / 84
100 | Fetching data from http://ctestnet.edenx.io:8062/v1/chain/get_info
101 | Target: 79.136.20.192 | Latency: 450.487 ms
102 | 6 / 84
103 | Fetching data from http://mowgli.jungle3.eos.roelandp.nl:8765/v1/chain/get_info
104 | Target: 95.216.8.243 | Latency: 504.885 ms
105 | 7 / 84
106 | Fetching data from http://93.176.188.7:8888/v1/chain/get_info
107 | Server is down
108 | 8 / 84
109 | Fetching data from http://18.188.52.250:8877/v1/chain/get_info
110 | Target: 18.188.52.250 | Latency: 263.799 ms
111 | 9 / 84
112 | Fetching data from http://mosquito.prometeos.io:8889/v1/chain/get_info
113 | Target: 149.202.180.100 | Latency: 679.657 ms
114 | 10 / 84
115 | Fetching data from http://pearls.capital:8888/v1/chain/get_info
116 | Target: 95.213.195.96 | Latency: 493.055 ms
117 | 11 / 84
118 | Fetching data from http://eosrio.entropia.in:8889/v1/chain/get_info
119 | Target: 201.18.14.130 | Latency: 295.181 ms
120 | 12 / 84
121 | Fetching data from http://54.233.222.22:8886/v1/chain/get_info
122 | Target: 54.233.222.22 | Latency: 34.958 ms
123 | 13 / 84
124 | Fetching data from http://Jungle.eosuk.io:8427/v1/chain/get_info
125 | Target: 81.110.247.37 | Latency: 555.045 ms
126 | 14 / 84
127 | Fetching data from http://35.189.107.125:8888/v1/chain/get_info
128 | Target: 35.189.107.125 | Latency: 422.231 ms
129 | 15 / 84
130 | Fetching data from http://188.166.226.110:8888/v1/chain/get_info
131 | Target: 188.166.226.110 | Latency: 713.009 ms
132 | 16 / 84
133 | Fetching data from http://eosgreen.uk.to:8777/v1/chain/get_info
134 | Target: 86.181.185.47 | Latency: 651.593 ms
135 | 17 / 84
136 | Fetching data from http://bpseoul.eosnodeone.io:8888/v1/chain/get_info
137 | Target: 13.209.19.204 | Latency: 644.759 ms
138 | 18 / 84
139 | Fetching data from http://whale.eoscalgary.com:80/v1/chain/get_info
140 | Server is down
141 | 19 / 84
142 | Fetching data from http://bp4-d3.eos42.io:8888/v1/chain/get_info
143 | Target: 35.197.244.244 | Latency: 570.042 ms
144 | 20 / 84
145 | Fetching data from http://145.239.252.91:8888/v1/chain/get_info
146 | Server is down
147 | 21 / 84
148 | Fetching data from http://95.216.20.181:7010/v1/chain/get_info
149 | Target: 95.216.20.181 | Latency: 433.686 ms
150 | 22 / 84
151 | Fetching data from http://mpenjati.eosio.africa:8888/v1/chain/get_info
152 | Server is down
153 | 23 / 84
154 | Fetching data from http://testnet01.eoseoul.io:8801/v1/chain/get_info
155 | Target: 13.124.97.2 | Latency: 660.755 ms
156 | 24 / 84
157 | Fetching data from http://46.101.95.5:8888/v1/chain/get_info
158 | Target: 46.101.95.5 | Latency: 365.517 ms
159 | 25 / 84
160 | Fetching data from http://154.48.249.19:8888/v1/chain/get_info
161 | Server is down
162 | 26 / 84
163 | Fetching data from http://alessia.hkeos.com:8888/v1/chain/get_info
164 | Target: 218.253.69.190 | Latency: 868.657 ms
165 | 27 / 84
166 | Fetching data from http://cheetah.jungle3.bptn.eosamsterdam.net:8888/v1/chain/get_info
167 | Server is down
168 | 28 / 84
169 | Fetching data from http://robotikalis.ddns.net:8888/v1/chain/get_info
170 | Target: 173.212.219.222 | Latency: 589.594 ms
171 | 29 / 84
172 | Fetching data from http://testnet.eosindia.io:8888/v1/chain/get_info
173 | Target: 13.126.171.157 | Latency: 758.087 ms
174 | 30 / 84
175 | Fetching data from http://195.201.131.218:8888/v1/chain/get_info
176 | Target: 195.201.131.218 | Latency: 395.307 ms
177 | 31 / 84
178 | Fetching data from http://138.68.238.129:8890/v1/chain/get_info
179 | Target: 138.68.238.129 | Latency: 394.086 ms
180 | 32 / 84
181 | Fetching data from http://211.159.182.240:8888/v1/chain/get_info
182 | Server is down
183 | 33 / 84
184 | Fetching data from http://jungle.genereos.io:8888/v1/chain/get_info
185 | Server is down
186 | 34 / 84
187 | Fetching data from http://54.200.153.106:8888/v1/chain/get_info
188 | Target: 54.200.153.106 | Latency: 500.464 ms
189 | 35 / 84
190 | Fetching data from http://39.108.231.157:8888/v1/chain/get_info
191 | Server is down
192 | 36 / 84
193 | Fetching data from http://139.198.3.99:8888/v1/chain/get_info
194 | Target: 139.198.3.99 | Latency: 656.376 ms
195 | 37 / 84
196 | Fetching data from http://jungle.eoseco.net:8888/v1/chain/get_info
197 | Target: 52.199.160.95 | Latency: 1077.599 ms
198 | 38 / 84
199 | Fetching data from http://193.93.219.219:6888/v1/chain/get_info
200 | Server is down
201 | 39 / 84
202 | Fetching data from http://jungle.eosphere.io:8888/v1/chain/get_info
203 | Target: 52.62.218.130 | Latency: 732.006 ms
204 | 40 / 84
205 | Fetching data from http://185.244.150.11:8888/v1/chain/get_info
206 | Target: 185.244.150.11 | Latency: 417.842 ms
207 | 41 / 84
208 | Fetching data from http://52.44.113.122:80/v1/chain/get_info
209 | Target: 52.44.113.122 | Latency: 276.924 ms
210 | 42 / 84
211 | Fetching data from http://testchain.jscut.org:8888/v1/chain/get_info
212 | Target: 35.174.47.102 | Latency: 310.43 ms
213 | 43 / 84
214 | Fetching data from http://120.79.155.118:8888/v1/chain/get_info
215 | Target: 120.79.155.118 | Latency: 662.845 ms
216 | 44 / 84
217 | Fetching data from http://testnet.eosdublin.io:8444/v1/chain/get_info
218 | Server is down
219 | 45 / 84
220 | Fetching data from http://eosslc.com:8889/v1/chain/get_info
221 | Target: 209.41.67.115 | Latency: 492.053 ms
222 | 46 / 84
223 | Fetching data from http://jungle.worbli.io:8888/v1/chain/get_info
224 | Target: 18.219.212.80 | Latency: 320.463 ms
225 | 47 / 84
226 | Fetching data from http://47.92.97.56:8888/v1/chain/get_info
227 | Server is down
228 | 48 / 84
229 | Fetching data from http://bp-test.eosasia.one:8800/v1/chain/get_info
230 | Target: 13.125.42.74 | Latency: 643.917 ms
231 | 49 / 84
232 | Fetching data from http://47.52.18.70:8388/v1/chain/get_info
233 | Target: 47.52.18.70 | Latency: 663.07 ms
234 | 50 / 84
235 | Fetching data from http://jungle.eos.blckchnd.com:8888/v1/chain/get_info
236 | Target: 94.130.89.239 | Latency: 450.594 ms
237 | 51 / 84
238 | Fetching data from http://128.1.133.206:8888/v1/chain/get_info
239 | Target: 128.1.133.206 | Latency: 680.128 ms
240 | 52 / 84
241 | Fetching data from http://47.52.64.9:8888/v1/chain/get_info
242 | Target: 47.52.64.9 | Latency: 691.461 ms
243 | 53 / 84
244 | Fetching data from http://52.37.122.21:8888/v1/chain/get_info
245 | Target: 52.37.122.21 | Latency: 439.274 ms
246 | 54 / 84
247 | Fetching data from http://eosbeijing.one:8888/v1/chain/get_info
248 | Target: 150.109.65.114 | Latency: 905.437 ms
249 | 55 / 84
250 | Fetching data from http://35.182.46.236:9879/v1/chain/get_info
251 | Target: 35.182.46.236 | Latency: 248.189 ms
252 | 56 / 84
253 | Fetching data from http://52.58.245.131:8888/v1/chain/get_info
254 | Target: 52.58.245.131 | Latency: 393.879 ms
255 | 57 / 84
256 | Fetching data from http://198.58.114.211:8888/v1/chain/get_info
257 | Target: 198.58.114.211 | Latency: 319.047 ms
258 | 58 / 84
259 | Fetching data from http://217.115.85.26:8888/v1/chain/get_info
260 | Target: 217.115.85.26 | Latency: 578.391 ms
261 | 59 / 84
262 | Fetching data from http://107.150.102.38:8888/v1/chain/get_info
263 | Target: 107.150.102.38 | Latency: 379.302 ms
264 | 60 / 84
265 | Fetching data from http://188.117.144.164:8889/v1/chain/get_info
266 | Target: 188.117.144.164 | Latency: 459.22 ms
267 | 61 / 84
268 | Fetching data from http://quokka.eosreal.io:8868/v1/chain/get_info
269 | Target: 13.126.19.74 | Latency: 888.557 ms
270 | 62 / 84
271 | Fetching data from http://119.3.22.124:8888/v1/chain/get_info
272 | Target: 119.3.22.124 | Latency: 698.667 ms
273 | 63 / 84
274 | Fetching data from http://node-d3.eos42.io:8888/v1/chain/get_info
275 | Target: 35.189.101.183 | Latency: 700.55 ms
276 | 64 / 84
277 | Fetching data from http://5280.duckdns.org:8888/v1/chain/get_info
278 | Target: 71.211.246.214 | Latency: 636.737 ms
279 | 65 / 84
280 | Fetching data from http://meow.eoslaomao.com:80/v1/chain/get_info
281 | Target: 172.105.236.65 | Latency: 763.047 ms
282 | 66 / 84
283 | Fetching data from http://dev.chainpool.io:7780/v1/chain/get_info
284 | Server is down
285 | 67 / 84
286 | Fetching data from http://eos-bp.bitfinex.com:8888/v1/chain/get_info
287 | Target: 35.204.3.223 | Latency: 761.083 ms
288 | 68 / 84
289 | Fetching data from http://34.251.121.82:8888/v1/chain/get_info
290 | Target: 34.251.121.82 | Latency: 450.099 ms
291 | 69 / 84
292 | Fetching data from http://173.212.227.190:8888/v1/chain/get_info
293 | Target: 173.212.227.190 | Latency: 566.734 ms
294 | 70 / 84
295 | Fetching data from http://node2-d3.eos42.io:8888/v1/chain/get_info
296 | Target: 35.197.203.157 | Latency: 580.166 ms
297 | 71 / 84
298 | Fetching data from http://bp-test.ono.chat:8888/v1/chain/get_info
299 | Target: 13.115.235.41 | Latency: 784.192 ms
300 | 72 / 84
301 | Fetching data from http://avocado-toast.sandwich.farm:8888/v1/chain/get_info
302 | Target: 188.166.116.31 | Latency: 577.961 ms
303 | 73 / 84
304 | Fetching data from http://18.219.28.205:8886/v1/chain/get_info
305 | Target: 18.219.28.205 | Latency: 375.927 ms
306 | 74 / 84
307 | Fetching data from http://axolotl.eoscalgary.com:80/v1/chain/get_info
308 | Target: 35.185.242.132 | Latency: 519.835 ms
309 | 75 / 84
310 | Fetching data from http://34.209.174.121:8888/v1/chain/get_info
311 | Server is down
312 | 76 / 84
313 | Fetching data from http://test.eosys.io:8888/v1/chain/get_info
314 | Target: 13.125.137.48 | Latency: 694.159 ms
315 | 77 / 84
316 | Fetching data from http://13.114.33.147:8888/v1/chain/get_info
317 | Target: 13.114.33.147 | Latency: 598.898 ms
318 | 78 / 84
319 | Fetching data from http://113.208.116.110:8888/v1/chain/get_info
320 | Server is down
321 | 79 / 84
322 | Fetching data from http://35.192.58.50:8888/v1/chain/get_info
323 | Server is down
324 | 80 / 84
325 | Fetching data from http://bptn.eosraychain.com:80/v1/chain/get_info
326 | Target: 47.90.87.131 | Latency: 1184.901 ms
327 | 81 / 84
328 | Fetching data from http://13.211.63.122:8888/v1/chain/get_info
329 | Target: 13.211.63.122 | Latency: 762.153 ms
330 | 82 / 84
331 | Fetching data from http://54.189.199.39:8888/v1/chain/get_info
332 | Target: 54.189.199.39 | Latency: 437.958 ms
333 | 83 / 84
334 | Fetching data from http://eos.shangtv.cn:28888/v1/chain/get_info
335 | Target: 120.76.96.73 | Latency: 744.708 ms
336 | 84 / 84
337 | Fetching data from http://n2.eosargentina.io:8888/v1/chain/get_info
338 | Target: 207.246.67.103 | Latency: 434.506 ms
339 | 1 / 84
340 | Fetching data from http://94.154.212.15:8888/v1/chain/get_info
341 | Target: 94.154.212.15 | Latency: 492.851 ms
342 | 2 / 84
343 | Fetching data from http://88.99.97.30:8888/v1/chain/get_info
344 | Target: 88.99.97.30 | Latency: 403.637 ms
345 | 3 / 84
346 | Fetching data from http://193.93.219.219:8888/v1/chain/get_info
347 | Target: 193.93.219.219 | Latency: 474.956 ms
348 | 4 / 84
349 | Fetching data from http://35.182.242.240:8888/v1/chain/get_info
350 | Target: 35.182.242.240 | Latency: 242.14 ms
351 | 5 / 84
352 | Fetching data from http://79.136.20.192:8062/v1/chain/get_info
353 | Target: 79.136.20.192 | Latency: 476.156 ms
354 | 6 / 84
355 | Fetching data from http://95.216.8.243:8765/v1/chain/get_info
356 | Target: 95.216.8.243 | Latency: 453.659 ms
357 | 7 / 84
358 | Fetching data from http://93.176.188.7:8888/v1/chain/get_info
359 | Server is down
360 | 8 / 84
361 | Fetching data from http://18.188.52.250:8877/v1/chain/get_info
362 | Target: 18.188.52.250 | Latency: 283.511 ms
363 | 9 / 84
364 | Fetching data from http://149.202.180.100:8889/v1/chain/get_info
365 | Target: 149.202.180.100 | Latency: 1031.591 ms
366 | 10 / 84
367 | Fetching data from http://95.213.195.96:8888/v1/chain/get_info
368 | Target: 95.213.195.96 | Latency: 497.704 ms
369 | 11 / 84
370 | Fetching data from http://201.18.14.130:8889/v1/chain/get_info
371 | Target: 201.18.14.130 | Latency: 8.85 ms
372 | 12 / 84
373 | Fetching data from http://54.233.222.22:8886/v1/chain/get_info
374 | Target: 54.233.222.22 | Latency: 33.293 ms
375 | 13 / 84
376 | Fetching data from http://81.110.247.37:8427/v1/chain/get_info
377 | Server is down
378 | 14 / 84
379 | Fetching data from http://35.189.107.125:8888/v1/chain/get_info
380 | Target: 35.189.107.125 | Latency: 428.786 ms
381 | 15 / 84
382 | Fetching data from http://188.166.226.110:8888/v1/chain/get_info
383 | Target: 188.166.226.110 | Latency: 725.16 ms
384 | 16 / 84
385 | Fetching data from http://86.181.185.47:8777/v1/chain/get_info
386 | Target: 86.181.185.47 | Latency: 416.835 ms
387 | 17 / 84
388 | Fetching data from http://13.209.19.204:8888/v1/chain/get_info
389 | Target: 13.209.19.204 | Latency: 628.827 ms
390 | 18 / 84
391 | Fetching data from http://35.185.242.132:80/v1/chain/get_info
392 | Server is down
393 | 19 / 84
394 | Fetching data from http://35.197.244.244:8888/v1/chain/get_info
395 | Target: 35.197.244.244 | Latency: 425.556 ms
396 | 20 / 84
397 | Fetching data from http://145.239.252.91:8888/v1/chain/get_info
398 | Server is down
399 | 21 / 84
400 | Fetching data from http://95.216.20.181:7010/v1/chain/get_info
401 | Target: 95.216.20.181 | Latency: 434.635 ms
402 | 22 / 84
403 | Fetching data from http://mpenjati.eosio.africa:8888/v1/chain/get_info
404 | Server is down
405 | 23 / 84
406 | Fetching data from http://13.124.97.2:8801/v1/chain/get_info
407 | Target: 13.124.97.2 | Latency: 648.155 ms
408 | 24 / 84
409 | Fetching data from http://46.101.95.5:8888/v1/chain/get_info
410 | Target: 46.101.95.5 | Latency: 388.549 ms
411 | 25 / 84
412 | Fetching data from http://154.48.249.19:8888/v1/chain/get_info
413 | Server is down
414 | 26 / 84
415 | Fetching data from http://218.253.69.190:8888/v1/chain/get_info
416 | Target: 218.253.69.190 | Latency: 688.559 ms
417 | 27 / 84
418 | Fetching data from http://cheetah.jungle3.bptn.eosamsterdam.net:8888/v1/chain/get_info
419 | Server is down
420 | 28 / 84
421 | Fetching data from http://173.212.219.222:8888/v1/chain/get_info
422 | Target: 173.212.219.222 | Latency: 425.943 ms
423 | 29 / 84
424 | Fetching data from http://13.126.171.157:8888/v1/chain/get_info
425 | Server is down
426 | 30 / 84
427 | Fetching data from http://195.201.131.218:8888/v1/chain/get_info
428 | Target: 195.201.131.218 | Latency: 454.823 ms
429 | 31 / 84
430 |
--------------------------------------------------------------------------------
/release/eosbeat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosrio/eosbeat/be21d595ee3a14c4d2f60dd026c3e9cc7692fa11/release/eosbeat
--------------------------------------------------------------------------------
/release/eosbeat.conf.yml:
--------------------------------------------------------------------------------
1 | eosbeat:
2 | period: 5s
3 | output.elasticsearch:
4 | hosts: ["eosrio.io:9200"]
5 | protocol: "http"
6 | username: "changeME"
7 | password: "changeME"
8 |
--------------------------------------------------------------------------------
/release/nodes.json:
--------------------------------------------------------------------------------
1 | {
2 | "network": "jungle",
3 | "blockProducerList": [{
4 | "_id": "5acb5633b63b04532f14b351",
5 | "bp_name": "volcano",
6 | "organisation": "CryptoLions.io",
7 | "location": "Ukraine, Kyiv",
8 | "node_addr": "jungle.cryptolions.io",
9 | "port_http": "8888",
10 | "port_ssl": "",
11 | "port_p2p": "9876",
12 | "pub_key": "EOS7cXZfX7Rjt4WqARdE3MP7QUkgSyzagedq3WncpDb9W6zxvdTmx",
13 | "bp": true,
14 | "enabled": true,
15 | "comment": "",
16 | "telegram": ""
17 | }, {
18 | "_id": "5acb5633b63b04532f14b352",
19 | "bp_name": "lion",
20 | "organisation": "CryptoLions.io",
21 | "location": "Germany",
22 | "node_addr": "dev.cryptolions.io",
23 | "port_http": "8888",
24 | "port_ssl": "",
25 | "port_p2p": "7876",
26 | "pub_key": "EOS4uD43rw6sB46AKWkU5rtXZnnRJeYhAtpwvHszJ8QD3Eqbgg7TE",
27 | "bp": true,
28 | "enabled": true,
29 | "comment": "",
30 | "telegram": ""
31 | }, {
32 | "_id": "5acb5633b63b04532f14b353",
33 | "bp_name": "tiger",
34 | "organisation": "CryptoLions.io",
35 | "location": "Ukraine, Lviv",
36 | "node_addr": "193.93.219.219",
37 | "port_http": "8888",
38 | "port_ssl": "",
39 | "port_p2p": "9876",
40 | "pub_key": "EOS5LdoGyZyWKEnske2RXBfqFpqEnaoLJzmpJgryQrvUYWKRiAN5V",
41 | "bp": true,
42 | "enabled": true,
43 | "comment": "",
44 | "telegram": ""
45 | }, {
46 | "_id": "5acb5633b63b04532f14b354",
47 | "bp_name": "jaguar",
48 | "organisation": "EOS New York",
49 | "location": "Central Canada",
50 | "node_addr": "jungle.eosnewyork.io",
51 | "port_http": "8888",
52 | "port_ssl": "",
53 | "port_p2p": "9876",
54 | "pub_key": "EOS7btfRjDZGTLMcZR8cveHW2kURM8j8fK3VpyUm5muRFvCMhQpRv",
55 | "bp": true,
56 | "enabled": true,
57 | "comment": "",
58 | "telegram": ""
59 | }, {
60 | "_id": "5acb5633b63b04532f14b355",
61 | "bp_name": "bat",
62 | "organisation": "EOSio.se",
63 | "location": "Sweeden",
64 | "node_addr": "ctestnet.edenx.io",
65 | "port_http": "8062",
66 | "port_ssl": "",
67 | "port_p2p": "6602",
68 | "pub_key": "EOS5Fji6x8dgSPHzpi7NpYxQT8V1gxC7cEjKnan2CivHBikS4etyC",
69 | "bp": true,
70 | "enabled": true,
71 | "comment": "",
72 | "telegram": ""
73 | }, {
74 | "_id": "5acb5633b63b04532f14b356",
75 | "bp_name": "mowgli",
76 | "organisation": "roelandp.nl/eos",
77 | "location": "Germany",
78 | "node_addr": "mowgli.jungle3.eos.roelandp.nl",
79 | "port_http": "8765",
80 | "port_ssl": "",
81 | "port_p2p": "9876",
82 | "pub_key": "EOS7mwDoXcrtFzxXA2jmuVHd6LbnZ9tYBZFguSUmtqC5QVenYpE2m",
83 | "bp": true,
84 | "enabled": true,
85 | "comment": "",
86 | "telegram": ""
87 | }, {
88 | "_id": "5acb5633b63b04532f14b357",
89 | "bp_name": "dragonfly",
90 | "organisation": "EOSbcn",
91 | "location": "Barcelona",
92 | "node_addr": "93.176.188.7",
93 | "port_http": "8888",
94 | "port_ssl": "",
95 | "port_p2p": "9876",
96 | "pub_key": "EOS8g1MUTibV9KMD4hHRiA5pygcnVKScjVqB2EYjzz5Ypu5WuagX3",
97 | "bp": false,
98 | "enabled": false,
99 | "comment": "",
100 | "telegram": ""
101 | }, {
102 | "_id": "5acb5633b63b04532f14b358",
103 | "bp_name": "elephant2",
104 | "organisation": "Blockpro.one",
105 | "location": "USA",
106 | "node_addr": "18.188.52.250",
107 | "port_http": "8877",
108 | "port_ssl": "",
109 | "port_p2p": "9876",
110 | "pub_key": "EOS6B1NvFPAUobAJJ12QtLtbeYpSE6mJsotphbqH4n8dMi6jgX9D4",
111 | "bp": true,
112 | "enabled": true,
113 | "comment": "",
114 | "telegram": ""
115 | }, {
116 | "_id": "5acb5633b63b04532f14b359",
117 | "bp_name": "mosquito",
118 | "organisation": "IberEOS",
119 | "location": "Spain",
120 | "node_addr": "mosquito.prometeos.io",
121 | "port_http": "8889",
122 | "port_ssl": "",
123 | "port_p2p": "9877",
124 | "pub_key": "EOS6NDwXffptVFfEENu1iq3aYPpEGFKusoZUkfvr1rcfipdp67HuS",
125 | "bp": true,
126 | "enabled": true,
127 | "comment": "",
128 | "telegram": ""
129 | }, {
130 | "_id": "5acb5633b63b04532f14b35a",
131 | "bp_name": "wombat",
132 | "organisation": "pearls.capital",
133 | "location": "Russia, Moscow",
134 | "node_addr": "pearls.capital",
135 | "port_http": "8888",
136 | "port_ssl": "",
137 | "port_p2p": "9876",
138 | "pub_key": "EOS8bGyjUEAksVm7QY7YBsoHgwzZpxYQAZ6ZxunxxMeUm4KDpUkzi",
139 | "bp": true,
140 | "enabled": true,
141 | "comment": "",
142 | "telegram": ""
143 | }, {
144 | "_id": "5acb5633b63b04532f14b35b",
145 | "bp_name": "fox",
146 | "organisation": "EOS Rio",
147 | "location": "Brazil, Rio de Janeiro",
148 | "node_addr": "eosrio.entropia.in",
149 | "port_http": "8889",
150 | "port_ssl": "",
151 | "port_p2p": "9876",
152 | "pub_key": "EOS88KfcP3uMHg3BJ6skz3ja7S7nYc54Ki4k5nUzySgXuMXqEQAfd",
153 | "bp": true,
154 | "enabled": true,
155 | "comment": "",
156 | "telegram": ""
157 | }, {
158 | "_id": "5acb5633b63b04532f14b35c",
159 | "bp_name": "fox_node",
160 | "organisation": "EOS Rio",
161 | "location": "Brazil, Rio de Janeiro",
162 | "node_addr": "54.233.222.22",
163 | "port_http": "8886",
164 | "port_ssl": "",
165 | "port_p2p": "9874",
166 | "pub_key": "EOS88KfcP3uMHg3BJ6skz3ja7S7nYc54Ki4k5nUzySgXuMXqEQAfd",
167 | "bp": false,
168 | "enabled": true,
169 | "comment": "",
170 | "telegram": ""
171 | }, {
172 | "_id": "5acb5633b63b04532f14b35d",
173 | "bp_name": "gorilla",
174 | "organisation": "EOS UK",
175 | "location": "UK",
176 | "node_addr": "Jungle.eosuk.io",
177 | "port_http": "8427",
178 | "port_ssl": "",
179 | "port_p2p": "9927",
180 | "pub_key": "EOS8MoH5xdnrsvNo2bd2So7QZXZx6Uyvuq8yMBikfUVhFmNoqCnLH",
181 | "bp": true,
182 | "enabled": true,
183 | "comment": "",
184 | "telegram": "@EOS_Nottingham @DanBroad"
185 | }, {
186 | "_id": "5acb5633b63b04532f14b35e",
187 | "bp_name": "honeybadger",
188 | "organisation": "EOS42",
189 | "location": "Uk, London",
190 | "node_addr": "35.189.107.125",
191 | "port_http": "8888",
192 | "port_ssl": "",
193 | "port_p2p": "9876",
194 | "pub_key": "EOS72X4XCPT7tfRXATi9DdatFS1jwTeQZDksbiiDG3SKTvj3FxxXx",
195 | "bp": true,
196 | "enabled": true,
197 | "comment": "",
198 | "telegram": ""
199 | }, {
200 | "_id": "5acb5633b63b04532f14b35f",
201 | "bp_name": "sloth",
202 | "organisation": "EOS Botetourt",
203 | "location": "Singapore",
204 | "node_addr": "188.166.226.110",
205 | "port_http": "8888",
206 | "port_ssl": "",
207 | "port_p2p": "9876",
208 | "pub_key": "EOS6jW8JkdRjrjgXdF8Fm2ZVnys6rCJ4fqSCPk9QgEpS9Vksse3rc",
209 | "bp": true,
210 | "enabled": true,
211 | "comment": "",
212 | "telegram": ""
213 | }, {
214 | "_id": "5acb5633b63b04532f14b360",
215 | "bp_name": "langurs",
216 | "organisation": "EOSgreen.io",
217 | "location": "UK",
218 | "node_addr": "eosgreen.uk.to",
219 | "port_http": "8777",
220 | "port_ssl": "",
221 | "port_p2p": "9543",
222 | "pub_key": "EOS8f36VS4PFLhr4xnRMDSvnLjwpkNv4n9NZLf4cF1ZpbTjRsUC3Z",
223 | "bp": true,
224 | "enabled": true,
225 | "comment": "",
226 | "telegram": ""
227 | }, {
228 | "_id": "5acb5633b63b04532f14b361",
229 | "bp_name": "tokki",
230 | "organisation": "www.eosnodeone.io",
231 | "location": "Seoul",
232 | "node_addr": "bpseoul.eosnodeone.io",
233 | "port_http": "8888",
234 | "port_ssl": "",
235 | "port_p2p": "9876",
236 | "pub_key": "EOS7h6Cz39hUym1vQkofXn51Ctdz4mryZaydRs2ph4Z8BuzmX7vwV",
237 | "bp": true,
238 | "enabled": true,
239 | "comment": "",
240 | "telegram": ""
241 | }, {
242 | "_id": "5acb5633b63b04532f14b362",
243 | "bp_name": "whale",
244 | "organisation": "EOS.Cafe",
245 | "location": "Canada",
246 | "node_addr": "whale.eoscalgary.com",
247 | "port_http": "80",
248 | "port_ssl": "",
249 | "port_p2p": "9876",
250 | "pub_key": "EOS8Y754s6fgT2rhAidn7N9zXJUXCw6o8iv3Xyy7kdgaDNLoqxJhu",
251 | "bp": true,
252 | "enabled": true,
253 | "comment": "",
254 | "telegram": ""
255 | }, {
256 | "_id": "5acb5633b63b04532f14b363",
257 | "bp_name": "panther",
258 | "organisation": "EOS42.io",
259 | "location": "London",
260 | "node_addr": "bp4-d3.eos42.io",
261 | "port_http": "8888",
262 | "port_ssl": "",
263 | "port_p2p": "9876",
264 | "pub_key": "EOS7zhtk8CjvuuT33Uyn6oXHMKqcifiMuSomqT6BmL5ptNBrmTubo",
265 | "bp": true,
266 | "enabled": true,
267 | "comment": "",
268 | "telegram": ""
269 | }, {
270 | "_id": "5acb5633b63b04532f14b364",
271 | "bp_name": "tortoise",
272 | "organisation": "EOSdac.io",
273 | "location": "UK",
274 | "node_addr": "145.239.252.91",
275 | "port_http": "8888",
276 | "port_ssl": "",
277 | "port_p2p": "9877",
278 | "pub_key": "EOS8Eb76Wf2DcGZ58c8i5MZeEZvECz8dyGmR6LZRboeHue59k6a2B",
279 | "bp": true,
280 | "enabled": true,
281 | "comment": "",
282 | "telegram": ""
283 | }, {
284 | "_id": "5acb5633b63b04532f14b365",
285 | "bp_name": "galapago",
286 | "organisation": "bitcoineos.fun",
287 | "location": "Germany",
288 | "node_addr": "95.216.20.181",
289 | "port_http": "7010",
290 | "port_ssl": "",
291 | "port_p2p": "7015",
292 | "pub_key": "EOS7eLwiaN1tqqNLKE3wgfV3MWPPCsxY5PFVpFpvj8jpqVKTkqouH",
293 | "bp": true,
294 | "enabled": true,
295 | "comment": "",
296 | "telegram": ""
297 | }, {
298 | "_id": "5acb5633b63b04532f14b366",
299 | "bp_name": "mpenjati",
300 | "organisation": "EOS.IO Africa",
301 | "location": "Africa",
302 | "node_addr": "mpenjati.eosio.africa",
303 | "port_http": "8888",
304 | "port_ssl": "",
305 | "port_p2p": "9876",
306 | "pub_key": "EOS67Znu8W4sBH4RzYAPy3MekGsbwNK7pJhreQoZh58RU9sDGPYzm",
307 | "bp": true,
308 | "enabled": true,
309 | "comment": "",
310 | "telegram": ""
311 | }, {
312 | "_id": "5acb5633b63b04532f14b367",
313 | "bp_name": "cougars",
314 | "organisation": "EOSeoul.io",
315 | "location": "Korea, Seoul",
316 | "node_addr": "testnet01.eoseoul.io",
317 | "port_http": "8801",
318 | "port_ssl": "",
319 | "port_p2p": "9901",
320 | "pub_key": "EOS7n66sCn99KpCCZ3pucUzXRtGaa38brfoERB71uF7GTopXFiWE2",
321 | "bp": true,
322 | "enabled": true,
323 | "comment": "",
324 | "telegram": ""
325 | }, {
326 | "_id": "5acb5633b63b04532f14b368",
327 | "bp_name": "ladybird",
328 | "organisation": "EOSBcn",
329 | "location": "Barcelona",
330 | "node_addr": "46.101.95.5",
331 | "port_http": "8888",
332 | "port_ssl": "",
333 | "port_p2p": "9876",
334 | "pub_key": "EOS4yS1YPWHaeEXGaT6RP5Hunyea1SgFdAUqEARyHXV5C7FUzbvLC",
335 | "bp": true,
336 | "enabled": true,
337 | "comment": " virtual server on Digital Ocean",
338 | "telegram": ""
339 | }, {
340 | "_id": "5acb5633b63b04532f14b369",
341 | "bp_name": "giraffe",
342 | "organisation": "Niuchain",
343 | "location": "Hong Kong",
344 | "node_addr": "154.48.249.19",
345 | "port_http": "8888",
346 | "port_ssl": "",
347 | "port_p2p": "9876",
348 | "pub_key": "EOS6Sfi9XvXa4QN4DiTdZnNcCf6U4ubLmVTozK8DYvdPUqhmh7KMu",
349 | "bp": true,
350 | "enabled": true,
351 | "comment": "user: Funny",
352 | "telegram": ""
353 | }, {
354 | "_id": "5acb5633b63b04532f14b36a",
355 | "bp_name": "rhino",
356 | "organisation": "HKEOS",
357 | "location": "Hong Kong",
358 | "node_addr": "alessia.hkeos.com",
359 | "port_http": "8888",
360 | "port_ssl": "",
361 | "port_p2p": "9876",
362 | "pub_key": "EOS4tiVonwbmT6w5jZjxaWx8p1CkejsBtcwtn6YaqZRteKyYGQZAE",
363 | "bp": true,
364 | "enabled": true,
365 | "comment": "",
366 | "telegram": ""
367 | }, {
368 | "_id": "5acb5633b63b04532f14b36b",
369 | "bp_name": "cheetah",
370 | "organisation": "EOS Amsterdam",
371 | "location": "Amsterdam",
372 | "node_addr": "cheetah.jungle3.bptn.eosamsterdam.net",
373 | "port_http": "8888",
374 | "port_ssl": "",
375 | "port_p2p": "9876",
376 | "pub_key": "EOS5FFj3wh77cDmwS1X4QcJcB19mS2CPbiv4R4VmeBtKzLeZNYwP4",
377 | "bp": true,
378 | "enabled": true,
379 | "comment": "@monetashi Boy Maas - EOS Amsterdam",
380 | "telegram": ""
381 | }, {
382 | "_id": "5acb5633b63b04532f14b36c",
383 | "bp_name": "termite",
384 | "organisation": "EOS-East",
385 | "location": "London",
386 | "node_addr": "robotikalis.ddns.net",
387 | "port_http": "8888",
388 | "port_ssl": "",
389 | "port_p2p": "9876",
390 | "pub_key": "EOS6Evo5cBXjCyydTbLcssGyUtez31PvxB2UTxt5BFdsL5MTqAaeR",
391 | "bp": true,
392 | "enabled": true,
393 | "comment": "old ant (EOS6ZyjuB8ip1wkifPfVqj1Ran9nynNr4hVJUhU88mZpWPbUBZ4X2)",
394 | "telegram": "Matthew"
395 | }, {
396 | "_id": "5acb5633b63b04532f14b36d",
397 | "bp_name": "snake",
398 | "organisation": "EOSIndia",
399 | "location": "India",
400 | "node_addr": "testnet.eosindia.io",
401 | "port_http": "8888",
402 | "port_ssl": "",
403 | "port_p2p": "9876",
404 | "pub_key": "EOS5gGPXgn2BjqdmHxY2S47dD7eUE7GNdtPuFGQqQM8AqvZk7kMBB",
405 | "bp": true,
406 | "enabled": true,
407 | "comment": "",
408 | "telegram": "@taraldesai"
409 | }, {
410 | "_id": "5acb5633b63b04532f14b36e",
411 | "bp_name": "tapir",
412 | "organisation": "0xc0ffee",
413 | "location": "Germany",
414 | "node_addr": "195.201.131.218",
415 | "port_http": "8888",
416 | "port_ssl": "",
417 | "port_p2p": "9876",
418 | "pub_key": "EOS7JGLyU17YFMwUjUSj3Udq8ST1hxYzdvs8rxwrGqVmTuAp9eJ2S",
419 | "bp": true,
420 | "enabled": true,
421 | "comment": "",
422 | "telegram": "@maxblock"
423 | }, {
424 | "_id": "5acb5633b63b04532f14b36f",
425 | "bp_name": "boar",
426 | "organisation": "EOSBR",
427 | "location": "USA, San Francisco",
428 | "node_addr": "138.68.238.129",
429 | "port_http": "8890",
430 | "port_ssl": "",
431 | "port_p2p": "9876",
432 | "pub_key": "EOS8XecFVmptNZktRCLyBV71V2hXoxmTonpZtQG8TGcW7K9aVc3m6",
433 | "bp": true,
434 | "enabled": true,
435 | "comment": "",
436 | "telegram": "@eduardoelias"
437 | }, {
438 | "_id": "5acb5633b63b04532f14b370",
439 | "bp_name": "spider",
440 | "organisation": "北京星云比特科技有限公司",
441 | "location": "China , Beijing",
442 | "node_addr": "211.159.182.240",
443 | "port_http": "8888",
444 | "port_ssl": "",
445 | "port_p2p": "9876",
446 | "pub_key": "EOS7ez4g6m6jXh1fJND2hjFpfKr2f5Bj8fQq4eNWoRKErqYfvZyea",
447 | "bp": true,
448 | "enabled": true,
449 | "comment": "",
450 | "telegram": "@eduardoelias"
451 | }, {
452 | "_id": "5acbb445b63b04532f14b371",
453 | "bp_name": "koala",
454 | "organisation": "GenerEOS",
455 | "location": "Australia, Sydney",
456 | "node_addr": "jungle.genereos.io",
457 | "port_http": "8888",
458 | "port_ssl": "",
459 | "port_p2p": "9876",
460 | "pub_key": "EOS77uvbjTcBWvk9Le8gGYw7AxXEfibHdxNnREBHQQMEoNnYcWTtA",
461 | "bp": true,
462 | "enabled": true,
463 | "comment": "Google Cloud",
464 | "telegram": "@nsrempel"
465 | }, {
466 | "_id": "5acbd4294b43bf14300f9830",
467 | "bp_name": "beaver",
468 | "organisation": "EOS Calgary",
469 | "location": "Canada, Calgary",
470 | "node_addr": "54.200.153.106",
471 | "port_http": "8888",
472 | "port_ssl": "",
473 | "port_p2p": "9876",
474 | "pub_key": "EOS7PegBZsf9i9briyqsuwR7Hr2e2pkm9DYifogUnRb6ewZTbMNJt",
475 | "bp": true,
476 | "enabled": true,
477 | "comment": "",
478 | "telegram": "@n_doy"
479 | }, {
480 | "_id": "5acc92d44b43bf14300f9832",
481 | "bp_name": "unicorn",
482 | "organisation": "SuperONE.io",
483 | "location": "China",
484 | "node_addr": "39.108.231.157",
485 | "port_http": "8888",
486 | "port_ssl": "",
487 | "port_p2p": "9876",
488 | "pub_key": "EOS6e4KFmvuSyCudd8KhuEiSt19Bcoa6kUYCMaT5wBTVPnxyy5Aow",
489 | "bp": true,
490 | "enabled": true,
491 | "comment": "",
492 | "telegram": "@robinwen"
493 | }, {
494 | "_id": "5acc976c4b43bf14300f9833",
495 | "bp_name": "scorpion",
496 | "organisation": "EOS Zodiac",
497 | "location": "China, Peking",
498 | "node_addr": "139.198.3.99",
499 | "port_http": "8888",
500 | "port_ssl": "",
501 | "port_p2p": "9876",
502 | "pub_key": "EOS7Yspf9WSFLrY1VmDWf1Gxz3DzBndCq33PCNgFqmywcV6hG7u38",
503 | "bp": true,
504 | "enabled": true,
505 | "comment": "Qing Cloud",
506 | "telegram": "@liangcd"
507 | }, {
508 | "_id": "5acdca924b43bf14300f9834",
509 | "bp_name": "hummingbird",
510 | "organisation": "EOSeco",
511 | "location": "China, Shanghai",
512 | "node_addr": "jungle.eoseco.net",
513 | "port_http": "8888",
514 | "port_ssl": "",
515 | "port_p2p": "9876",
516 | "pub_key": "EOS85fDTxvb2P6cXuz5nQyaDwTPbemwcw6KyVDmHHZaGFNog5fBCK",
517 | "bp": true,
518 | "enabled": true,
519 | "comment": "",
520 | "telegram": "@Joshuaqiu"
521 | }, {
522 | "_id": "5acf1ae24b43bf14300f9835",
523 | "bp_name": "tiger-node",
524 | "organisation": "CryptoLions.io",
525 | "location": "Ukraine, Lviv",
526 | "node_addr": "193.93.219.219",
527 | "port_http": "6888",
528 | "port_ssl": "",
529 | "port_p2p": "7876",
530 | "pub_key": "",
531 | "bp": false,
532 | "enabled": false,
533 | "comment": "",
534 | "telegram": ""
535 | }, {
536 | "_id": "5acf27984b43bf14300f9836",
537 | "bp_name": "kangaroo",
538 | "organisation": "EOSphere.io",
539 | "location": "Australia",
540 | "node_addr": "jungle.eosphere.io",
541 | "port_http": "8888",
542 | "port_ssl": "",
543 | "port_p2p": "9876",
544 | "pub_key": "EOS6ahXXcoe7gku6tAguFviS9KB7yA9S74ayKrEva1p1aNvcEU3TB",
545 | "bp": true,
546 | "enabled": true,
547 | "comment": "",
548 | "telegram": "@walt_EOSphere"
549 | }, {
550 | "_id": "5acf29f74b43bf14300f9837",
551 | "bp_name": "leaf",
552 | "organisation": "Dynamics",
553 | "location": "Netherlands",
554 | "node_addr": "185.244.150.11",
555 | "port_http": "8888",
556 | "port_ssl": "",
557 | "port_p2p": "9876",
558 | "pub_key": "EOS6WMkjL2CDxqRwTGw9CftTVynzGQDZG87qQtNrDSu6PFLDyHVWP",
559 | "bp": true,
560 | "enabled": true,
561 | "comment": "",
562 | "telegram": "@Rick285"
563 | }, {
564 | "_id": "5acfaba54b43bf14300f9838",
565 | "bp_name": "macaw",
566 | "organisation": "EOSMX",
567 | "location": "USA",
568 | "node_addr": "52.44.113.122",
569 | "port_http": "80",
570 | "port_ssl": "",
571 | "port_p2p": "9876",
572 | "pub_key": "EOS7WDxeKKZWapFzHoKukzCoT3rt91DNRwNccAjDakmgPtrWmXsd3",
573 | "bp": true,
574 | "enabled": true,
575 | "comment": "",
576 | "telegram": "Rick"
577 | }, {
578 | "_id": "5acfc36b4b43bf14300f9839",
579 | "bp_name": "parrot",
580 | "organisation": "Todd Fleming",
581 | "location": "USA, Virginia",
582 | "node_addr": "testchain.jscut.org",
583 | "port_http": "8888",
584 | "port_ssl": "",
585 | "port_p2p": "9876",
586 | "pub_key": "EOS7noqKmnnuh1u1Ha35FqyJ8ZXm5rR5vPmr9L7Db6QB3qgHrF9hP",
587 | "bp": true,
588 | "enabled": true,
589 | "comment": "",
590 | "telegram": "Todd Fleming"
591 | }, {
592 | "_id": "5ad07b964b43bf14300f983a",
593 | "bp_name": "pug",
594 | "organisation": "ViaBTC",
595 | "location": "China, Shenzhen",
596 | "node_addr": "120.79.155.118",
597 | "port_http": "8888",
598 | "port_ssl": "",
599 | "port_p2p": "9877",
600 | "pub_key": "EOS589V9T9EBqMZoE8urrtDzaCu6YWwg7ZhY6HKgxtqWRPH19ABGA",
601 | "bp": true,
602 | "enabled": true,
603 | "comment": "",
604 | "telegram": "@Robin_lg"
605 | }, {
606 | "_id": "5ad098b54b43bf14300f983b",
607 | "bp_name": "capybara",
608 | "organisation": "EOSDublin.com",
609 | "location": "Dublin",
610 | "node_addr": "testnet.eosdublin.io",
611 | "port_http": "8444",
612 | "port_ssl": "8444",
613 | "port_p2p": "9878",
614 | "pub_key": "EOS6L6TyvSbPFfPNEoM8ZAs23xZK68yYUBqeSRbuZRu3EWsG3LUF8",
615 | "bp": true,
616 | "enabled": true,
617 | "comment": "",
618 | "telegram": "@samnoble"
619 | }, {
620 | "_id": "5ad127c04b43bf14300f983c",
621 | "bp_name": "bear",
622 | "organisation": "EOS SLC",
623 | "location": "USA, Bluffdale, UT",
624 | "node_addr": "eosslc.com",
625 | "port_http": "8889",
626 | "port_ssl": "",
627 | "port_p2p": "9877",
628 | "pub_key": "EOS6nU85ioXFHATeCCudwc3BUwAR5Ya68XpsP4uLqX9Lvjj2sPiFC",
629 | "bp": true,
630 | "enabled": true,
631 | "comment": "",
632 | "telegram": "@eluzgin"
633 | }, {
634 | "_id": "5ad1b8324b43bf14300f983d",
635 | "bp_name": "salamander",
636 | "organisation": "Worbli",
637 | "location": "USA Ohio",
638 | "node_addr": "jungle.worbli.io",
639 | "port_http": "8888",
640 | "port_ssl": "",
641 | "port_p2p": "9876",
642 | "pub_key": "EOS6GQUD2VZPdNJUyUNBGcgVT96CrnQmMRuCCf8vGESSk6ayE2nGG",
643 | "bp": true,
644 | "enabled": true,
645 | "comment": "",
646 | "telegram": "Robert DeWilder - Worbli"
647 | }, {
648 | "_id": "5ad1c1a24b43bf14300f983e",
649 | "bp_name": "crow",
650 | "organisation": "EOS UIP",
651 | "location": "China",
652 | "node_addr": "47.92.97.56",
653 | "port_http": "8888",
654 | "port_ssl": "",
655 | "port_p2p": "9876",
656 | "pub_key": "EOS693uVCr2rKpM7DisgghshmztgLiEuURj93q9ijeHWAN1SUV9Pt",
657 | "bp": true,
658 | "enabled": true,
659 | "comment": "",
660 | "telegram": "ben"
661 | }, {
662 | "_id": "5ad1c5fc4b43bf14300f983f",
663 | "bp_name": "wildcat",
664 | "organisation": "EOS Asia",
665 | "location": "Seoul",
666 | "node_addr": "bp-test.eosasia.one",
667 | "port_http": "8800",
668 | "port_ssl": "",
669 | "port_p2p": "6600",
670 | "pub_key": "EOS61JHByEJf3Ro6zJq6Xe2EG82tW4o365V1zYeWWK24WRxF13mwS",
671 | "bp": true,
672 | "enabled": true,
673 | "comment": "",
674 | "telegram": "@Gaijinjoe"
675 | }, {
676 | "_id": "5ad2106e4b43bf14300f9840",
677 | "bp_name": "elk",
678 | "organisation": "EOS Gravity",
679 | "location": "Hong Kong",
680 | "node_addr": "47.52.18.70",
681 | "port_http": "8388",
682 | "port_ssl": "",
683 | "port_p2p": "3389",
684 | "pub_key": "EOS61v6RWcFMuRMTVZUWYjPnhQBWqzBkXtHV8jrQ7bBTAry6etEhU",
685 | "bp": true,
686 | "enabled": true,
687 | "comment": "",
688 | "telegram": "@Gaijinjoe"
689 | }, {
690 | "_id": "5ad2707b4b43bf14300f9842",
691 | "bp_name": "tarsier",
692 | "organisation": "blckchnd.com",
693 | "location": "Germany, Falkenstein",
694 | "node_addr": "jungle.eos.blckchnd.com",
695 | "port_http": "8888",
696 | "port_ssl": "",
697 | "port_p2p": "9876",
698 | "pub_key": "EOS6VG88TsufLFhHYJscqXYQWFWgDCHUBYtvk6eXvpxEuYV9MUKGk",
699 | "bp": true,
700 | "enabled": true,
701 | "comment": "",
702 | "telegram": "@ruslansalikhov"
703 | }, {
704 | "_id": "5ad30fc14b43bf14300f9843",
705 | "bp_name": "toucan",
706 | "organisation": "wancloud",
707 | "location": "HongKong",
708 | "node_addr": "128.1.133.206",
709 | "port_http": "8888",
710 | "port_ssl": "",
711 | "port_p2p": "9876",
712 | "pub_key": "EOS7wUEGtMFCVo4QA3Rica9wEsuVz6DAtEyNFyah22SmuLqxVcdrt",
713 | "bp": true,
714 | "enabled": true,
715 | "comment": "",
716 | "telegram": "@ahlifei"
717 | }, {
718 | "_id": "5ad3101c4b43bf14300f9844",
719 | "bp_name": "bull",
720 | "organisation": "EOS.Hedging",
721 | "location": "Hong Kong",
722 | "node_addr": "47.52.64.9",
723 | "port_http": "8888",
724 | "port_ssl": "",
725 | "port_p2p": "9876",
726 | "pub_key": "EOS8kSPL1GDUFJqQbESNTTLAuERuNTUtNvj2EUTAFEf2U5iq5iyAA",
727 | "bp": true,
728 | "enabled": true,
729 | "comment": "",
730 | "telegram": "luyao zhang"
731 | }, {
732 | "_id": "5ad3114b4b43bf14300f9845",
733 | "bp_name": "doppelganger",
734 | "organisation": "James Sutherland",
735 | "location": "USA Oregon",
736 | "node_addr": "52.37.122.21",
737 | "port_http": "8888",
738 | "port_ssl": "",
739 | "port_p2p": "9876",
740 | "pub_key": "EOS5FFKwpH6HzCtndWMDi77BVF6yNrdz4sLp9vG6YFw3NpzFhrXiN",
741 | "bp": true,
742 | "enabled": true,
743 | "comment": "",
744 | "telegram": "James Sutherland"
745 | }, {
746 | "_id": "5ad311c94b43bf14300f9846",
747 | "bp_name": "eagle",
748 | "organisation": "EOS Beijing",
749 | "location": "Hongkong",
750 | "node_addr": "eosbeijing.one",
751 | "port_http": "8888",
752 | "port_ssl": "",
753 | "port_p2p": "9876",
754 | "pub_key": "EOS6q3CV1Wv4nxwjw1No7M22CcM7AeRM2eZdaaNqsEmouD3saMArj",
755 | "bp": true,
756 | "enabled": true,
757 | "comment": "",
758 | "telegram": "lucas shang"
759 | }, {
760 | "_id": "5ad315664b43bf14300f9847",
761 | "bp_name": "wolverine",
762 | "organisation": "BP Node",
763 | "location": "Canada, Monreal",
764 | "node_addr": "35.182.46.236",
765 | "port_http": "9879",
766 | "port_ssl": "",
767 | "port_p2p": "6879",
768 | "pub_key": "EOS4wGAn8b5Aw2e2H7Y3x7jspV2e5pkrMFdYfgwzUsmbENr33cmA2",
769 | "bp": true,
770 | "enabled": true,
771 | "comment": "",
772 | "telegram": "@ssekhon"
773 | }, {
774 | "_id": "5ad394c34b43bf14300f9848",
775 | "bp_name": "raven",
776 | "organisation": "EOS NL",
777 | "location": "Frankfurt",
778 | "node_addr": "52.58.245.131",
779 | "port_http": "8888",
780 | "port_ssl": "",
781 | "port_p2p": "9876",
782 | "pub_key": "EOS5E6qVDEVFe9ZE9fPxWTCdjTVcbxH11K5PqwZPPFwfFqwfD5DrY",
783 | "bp": true,
784 | "enabled": true,
785 | "comment": "",
786 | "telegram": "@ThomasStorm"
787 | }, {
788 | "_id": "5ad40a504b43bf14300f9849",
789 | "bp_name": "gazelle",
790 | "organisation": "BlockSmith",
791 | "location": "USA",
792 | "node_addr": "198.58.114.211",
793 | "port_http": "8888",
794 | "port_ssl": "",
795 | "port_p2p": "9876",
796 | "pub_key": "EOS7GpCZ7Sc5L5MMP18bNfqQH6Ga1tDaaN69ynUa1tfZQw32xWdzQ",
797 | "bp": true,
798 | "enabled": true,
799 | "comment": "",
800 | "telegram": "@JerryHuff"
801 | }, {
802 | "_id": "5ad477c54b43bf14300f984a",
803 | "bp_name": "marten",
804 | "organisation": "TestNode",
805 | "location": "Russia",
806 | "node_addr": "217.115.85.26",
807 | "port_http": "8888",
808 | "port_ssl": "",
809 | "port_p2p": "9876",
810 | "pub_key": "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
811 | "bp": true,
812 | "enabled": true,
813 | "comment": "",
814 | "telegram": "@sss_CRS_sss"
815 | }, {
816 | "_id": "5ad4a9f54b43bf14300f984b",
817 | "bp_name": "hippo",
818 | "organisation": "EOSBlock.co",
819 | "location": "USA, Los Angeles",
820 | "node_addr": "107.150.102.38",
821 | "port_http": "8888",
822 | "port_ssl": "",
823 | "port_p2p": "9876",
824 | "pub_key": "EOS7QjAfxo5Rkjh6KoudvaJMasCvE41CKy1uQTZdDfqgAwqa2LCvy",
825 | "bp": true,
826 | "enabled": true,
827 | "comment": "",
828 | "telegram": "@tyeenoprom"
829 | }, {
830 | "_id": "5ad4d07d4b43bf14300f984c",
831 | "bp_name": "racoon",
832 | "organisation": "eosemerge.io",
833 | "location": "Poland",
834 | "node_addr": "188.117.144.164",
835 | "port_http": "8889",
836 | "port_ssl": "",
837 | "port_p2p": "9877",
838 | "pub_key": "EOS8SmmiQj71JLJtfUenYb2S1y2gdfWCALnbRUXSeosc5R1GC4gpi",
839 | "bp": true,
840 | "enabled": true,
841 | "comment": "",
842 | "telegram": "@Om4tic"
843 | }, {
844 | "_id": "5ad6242c4b43bf14300f984d",
845 | "bp_name": "quokka",
846 | "organisation": "EOSREAL",
847 | "location": "Mumbai-AWS",
848 | "node_addr": "quokka.eosreal.io",
849 | "port_http": "8868",
850 | "port_ssl": "",
851 | "port_p2p": "9886",
852 | "pub_key": "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
853 | "bp": true,
854 | "enabled": true,
855 | "comment": "",
856 | "telegram": "mao EOSREAL"
857 | }, {
858 | "_id": "5ad7384b4b43bf14300f984e",
859 | "bp_name": "rabbit",
860 | "organisation": "EOS Cannon",
861 | "location": "China",
862 | "node_addr": "119.3.22.124",
863 | "port_http": "8888",
864 | "port_ssl": "",
865 | "port_p2p": "9876",
866 | "pub_key": "EOS5Cdoskbc6pY3M7TPg79utscwuME92CR7J7CwsKjHhgeDfoAPuQ",
867 | "bp": true,
868 | "enabled": true,
869 | "comment": "",
870 | "telegram": "@Luckybean"
871 | }, {
872 | "_id": "5ad891aa8faa930771489b34",
873 | "bp_name": "panther-node",
874 | "organisation": "EOS42",
875 | "location": "UK, London",
876 | "node_addr": "node-d3.eos42.io",
877 | "port_http": "8888",
878 | "port_ssl": "",
879 | "port_p2p": "9876",
880 | "pub_key": "EOS54VPto7BFG7taN5myqbtojAdSmvBU1wHhKkzBKmNUdGJGMuZpb",
881 | "bp": false,
882 | "enabled": true,
883 | "comment": "",
884 | "telegram": "@ankh2054 Charles H - EOS 42"
885 | }, {
886 | "_id": "5adb9b8c8faa930771489b73",
887 | "bp_name": "mamba",
888 | "organisation": "mamba",
889 | "location": "USA, Denver, CO",
890 | "node_addr": "5280.duckdns.org",
891 | "port_http": "8888",
892 | "port_ssl": "",
893 | "port_p2p": "9876",
894 | "pub_key": "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
895 | "bp": true,
896 | "enabled": true,
897 | "comment": "",
898 | "telegram": "James L"
899 | }, {
900 | "_id": "5adc73c88faa930771489b75",
901 | "bp_name": "monkey",
902 | "organisation": "EOSLaoMao.com",
903 | "location": "Japan, Tokyo",
904 | "node_addr": "meow.eoslaomao.com",
905 | "port_http": "80",
906 | "port_ssl": "",
907 | "port_p2p": "9876",
908 | "pub_key": "EOS5QT5g1t4PqpmTo4hzoj5rtc7j2CRjCJfbq3Sb2f4TdzgwXjxXC",
909 | "bp": true,
910 | "enabled": true,
911 | "comment": "",
912 | "telegram": "@zhaoyu"
913 | }, {
914 | "_id": "5adda414f7b72709b418669a",
915 | "bp_name": "glowwarm",
916 | "organisation": "ChainPool",
917 | "location": "Japan, Tokyo",
918 | "node_addr": "dev.chainpool.io",
919 | "port_http": "7780",
920 | "port_ssl": "",
921 | "port_p2p": "7781",
922 | "pub_key": "EOS7GEL7tGYSjLXJhnHhupeJY2grTz2U3SXwLRxFqrcvfryyPzauN",
923 | "bp": true,
924 | "enabled": true,
925 | "comment": "",
926 | "telegram": "@liuchengxu"
927 | }, {
928 | "_id": "5addd296f7b72709b418669b",
929 | "bp_name": "frog",
930 | "organisation": "Bitfinex",
931 | "location": "Switzerland, Zurich",
932 | "node_addr": "eos-bp.bitfinex.com",
933 | "port_http": "8888",
934 | "port_ssl": "",
935 | "port_p2p": "9876",
936 | "pub_key": "EOS64PTtiaVKf2zMWDuC93mFNPQaGzGeu2EgzaRcHhbALtXACh6KA",
937 | "bp": true,
938 | "enabled": true,
939 | "comment": "",
940 | "telegram": "@prdn0"
941 | }, {
942 | "_id": "5addff24f7b72709b418669c",
943 | "bp_name": "dolphin",
944 | "organisation": "EOSEOS",
945 | "location": "Ireland",
946 | "node_addr": "34.251.121.82",
947 | "port_http": "8888",
948 | "port_ssl": "",
949 | "port_p2p": "9876",
950 | "pub_key": "EOS7UddrMsaVTpJoWYg3YRzMLsD2QUCAaBskYcgDnka78d4mpxXhy",
951 | "bp": true,
952 | "enabled": true,
953 | "comment": "",
954 | "telegram": "It"
955 | }, {
956 | "_id": "5ade0099f7b72709b418669d",
957 | "bp_name": "lamb",
958 | "organisation": "EOSVibes",
959 | "location": "Germany, Kassel",
960 | "node_addr": "173.212.227.190",
961 | "port_http": "8888",
962 | "port_ssl": "",
963 | "port_p2p": "9876",
964 | "pub_key": "EOS7UP6X1dtetsL5hkCiC77sxadkLoJHvbk9hc1WAx7tVyGVrBwzb",
965 | "bp": true,
966 | "enabled": true,
967 | "comment": "",
968 | "telegram": "@boltxyz"
969 | }, {
970 | "_id": "5adefc42503ce85f129c1abd",
971 | "bp_name": "honeybadger-node",
972 | "organisation": "EOS42",
973 | "location": "UK, London",
974 | "node_addr": "node2-d3.eos42.io",
975 | "port_http": "8888",
976 | "port_ssl": "",
977 | "port_p2p": "9876",
978 | "pub_key": "EOS5yJ2N3U6viyrg7XLnhhVQQSdznLWqhekJfzgvCFoM9AyWBFQf1",
979 | "bp": false,
980 | "enabled": true,
981 | "comment": "",
982 | "telegram": "@ankh2054"
983 | }, {
984 | "_id": "5adf06468438a46066e14004",
985 | "bp_name": "alligator",
986 | "organisation": "eosONO",
987 | "location": "Japan, Tokyo",
988 | "node_addr": "bp-test.ono.chat",
989 | "port_http": "8888",
990 | "port_ssl": "",
991 | "port_p2p": "9876",
992 | "pub_key": "EOS8HLWem6rZQFRv8NYY3dxf6r3A5bmcazp8ydWqBrbnLcYurN435",
993 | "bp": true,
994 | "enabled": true,
995 | "comment": "",
996 | "telegram": "@yongbin"
997 | }, {
998 | "_id": "5adf0d4f8438a46066e14005",
999 | "bp_name": "ocelot",
1000 | "organisation": "sandwich.farm",
1001 | "location": "NL, Amsterdam",
1002 | "node_addr": "avocado-toast.sandwich.farm",
1003 | "port_http": "8888",
1004 | "port_ssl": "",
1005 | "port_p2p": "9876",
1006 | "pub_key": "EOS78HLh97rLHPEMknsgnYKtWAnQmbCCD9fRYAPHx3T6fS1caj36n",
1007 | "bp": true,
1008 | "enabled": true,
1009 | "comment": "",
1010 | "telegram": "@sandw1ch"
1011 | }, {
1012 | "_id": "5adf2afe8438a46066e14006",
1013 | "bp_name": "koalabear",
1014 | "organisation": "EosLove",
1015 | "location": "Singapore",
1016 | "node_addr": "18.219.28.205",
1017 | "port_http": "8886",
1018 | "port_ssl": "",
1019 | "port_p2p": "9876",
1020 | "pub_key": "EOS7kBkjG2ogTFDasfQ9VZobbpyEDrYiSW1PDhEkhUaGbJbvqoHj5",
1021 | "bp": true,
1022 | "enabled": true,
1023 | "comment": "",
1024 | "telegram": "@EosLove"
1025 | }, {
1026 | "_id": "5adf94f58438a46066e14007",
1027 | "bp_name": "axolotl",
1028 | "organisation": "EOS.Cafe",
1029 | "location": "Canada",
1030 | "node_addr": "axolotl.eoscalgary.com",
1031 | "port_http": "80",
1032 | "port_ssl": "",
1033 | "port_p2p": "9878",
1034 | "pub_key": "EOS7xu6d3GxLbw4CKhxCQeSxg8NV1wjPPrgkBTYeU94dbe7kbQddk",
1035 | "bp": false,
1036 | "enabled": true,
1037 | "comment": "",
1038 | "telegram": "@eoscalgary"
1039 | }, {
1040 | "_id": "5adfa1d78438a46066e14008",
1041 | "bp_name": "croc",
1042 | "organisation": "EOS Floripa",
1043 | "location": "USA, Oregon",
1044 | "node_addr": "34.209.174.121",
1045 | "port_http": "8888",
1046 | "port_ssl": "",
1047 | "port_p2p": "9876",
1048 | "pub_key": "EOS6LiB3hf5qA6EqrP1sTJVF7uq6Qg7DCYzpeFcHXb1pVzS5sh8rw",
1049 | "bp": true,
1050 | "enabled": false,
1051 | "comment": "",
1052 | "telegram": "@rogerioricha"
1053 | }, {
1054 | "_id": "5ae030f28438a46066e14009",
1055 | "bp_name": "duck",
1056 | "organisation": "EOSYS",
1057 | "location": "Korea, Seoul",
1058 | "node_addr": "test.eosys.io",
1059 | "port_http": "8888",
1060 | "port_ssl": "",
1061 | "port_p2p": "9874",
1062 | "pub_key": "EOS5PASRHa8rcZZ71FSwyMnqxtbhoiAvYwbe9T58WxCxU4x85rNfs",
1063 | "bp": true,
1064 | "enabled": true,
1065 | "comment": "",
1066 | "telegram": "@boseokkang"
1067 | }, {
1068 | "_id": "5ae032a78438a46066e1400a",
1069 | "bp_name": "pony",
1070 | "organisation": "www.eoshuobipool.com",
1071 | "location": "Japan",
1072 | "node_addr": "13.114.33.147",
1073 | "port_http": "8888",
1074 | "port_ssl": "",
1075 | "port_p2p": "9876",
1076 | "pub_key": "EOS8Z37zt7AxwhxbXhEDAM4uRJBhysqjnpCtmKGonoWw3hfw4c6Lw",
1077 | "bp": true,
1078 | "enabled": true,
1079 | "comment": "",
1080 | "telegram": "@Gaijinjoe"
1081 | }, {
1082 | "_id": "5ae053608438a46066e1400b",
1083 | "bp_name": "orca",
1084 | "organisation": "EOS Galaxy",
1085 | "location": "China",
1086 | "node_addr": "113.208.116.110",
1087 | "port_http": "8888",
1088 | "port_ssl": "",
1089 | "port_p2p": "9876",
1090 | "pub_key": "EOS5EmMynemBu8MuzyQKcFCM2pHgyaLfcvNi9aUzQxS2Xr1mr69cU",
1091 | "bp": true,
1092 | "enabled": true,
1093 | "comment": "",
1094 | "telegram": "Kevin Xu"
1095 | }, {
1096 | "_id": "5ae07d608438a46066e1400c",
1097 | "bp_name": "earthworm",
1098 | "organisation": "EOS Plane",
1099 | "location": "USA",
1100 | "node_addr": "35.192.58.50",
1101 | "port_http": "8888",
1102 | "port_ssl": "",
1103 | "port_p2p": "9876",
1104 | "pub_key": "EOS7CdNnZoaPtJaDdobHW1dE6AkYRkhq5mfrvBju65DwTmsdpS8Tr",
1105 | "bp": true,
1106 | "enabled": true,
1107 | "comment": "",
1108 | "telegram": "saomany"
1109 | }, {
1110 | "_id": "5ae093ee8438a46066e1400d",
1111 | "bp_name": "toad",
1112 | "organisation": "eosraychain.com",
1113 | "location": "Hong Kong",
1114 | "node_addr": "bptn.eosraychain.com",
1115 | "port_http": "80",
1116 | "port_ssl": "",
1117 | "port_p2p": "9888",
1118 | "pub_key": "EOS6hYcUS9sXuzpeSFLexasPjpp9b56EKDFHSV1F3WWA5ko7gvKSM",
1119 | "bp": true,
1120 | "enabled": true,
1121 | "comment": "",
1122 | "telegram": "Eos Raychain"
1123 | }, {
1124 | "_id": "5ae09a198438a46066e1400e",
1125 | "bp_name": "shark",
1126 | "organisation": "EOSNz",
1127 | "location": "Newzealand",
1128 | "node_addr": "13.211.63.122",
1129 | "port_http": "8888",
1130 | "port_ssl": "",
1131 | "port_p2p": "9876",
1132 | "pub_key": "EOS84sx3uUzZ4pzHznt3A1dLLewtr6dvu7nMTZbBCLmVxCvSba1Jo",
1133 | "bp": true,
1134 | "enabled": true,
1135 | "comment": "",
1136 | "telegram": "@KrisEOSnz"
1137 | }, {
1138 | "_id": "5ae139b98438a46066e1400f",
1139 | "bp_name": "puffin",
1140 | "organisation": "eosvan.com",
1141 | "location": "Canada, Vancouver",
1142 | "node_addr": "54.189.199.39",
1143 | "port_http": "8888",
1144 | "port_ssl": "",
1145 | "port_p2p": "9876",
1146 | "pub_key": "EOS7VURE7AErUDi8Pfb1fULiPNxGnqmkikhS4JhByj7LSzHBNWchq",
1147 | "bp": true,
1148 | "enabled": true,
1149 | "comment": "",
1150 | "telegram": "Chen (EOSVan)"
1151 | }, {
1152 | "_id": "5ae19f318438a46066e14010",
1153 | "bp_name": "fatmouse",
1154 | "organisation": "EOS HDTap",
1155 | "location": "China",
1156 | "node_addr": "eos.shangtv.cn",
1157 | "port_http": "28888",
1158 | "port_ssl": "",
1159 | "port_p2p": "29876",
1160 | "pub_key": "EOS7xMRvmUxk819FTdL5pdP9ytar9XaZ7JLzwvQnj3siHWA6nJA56",
1161 | "bp": true,
1162 | "enabled": true,
1163 | "comment": "",
1164 | "telegram": "@Yonsen"
1165 | }, {
1166 | "_id": "5ae1c2488438a46066e14011",
1167 | "bp_name": "dogo",
1168 | "organisation": "eosargentina.io",
1169 | "location": "USA, Miami",
1170 | "node_addr": "n2.eosargentina.io",
1171 | "port_http": "8888",
1172 | "port_ssl": "",
1173 | "port_p2p": "9876",
1174 | "pub_key": "EOS6NaEcWX3DSTf8jrjb5UNeZikL7RY4tJ8t4w4bC8Z2HbTveRLGb",
1175 | "bp": true,
1176 | "enabled": true,
1177 | "comment": "",
1178 | "telegram": "@JChitty"
1179 | }]
1180 | }
1181 |
--------------------------------------------------------------------------------
/run-eosbeat.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | if [ -f "eosbeat.pid" ]; then
4 | echo "eosbeat is already running!"
5 | pid=`cat "eosbeat.pid"`
6 | read -p "Do you want to restart? [y / n]" -n 1 -r
7 | echo -e "\n"
8 | if [[ ! $REPLY =~ ^[Yy]$ ]]; then
9 | [[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1 # handle exits from shell or function but don't exit interactive shell
10 | fi
11 | ./stop-eosbeat.sh
12 | fi
13 | echo -e "Starting eosbeat..."
14 | ./eosbeat -c eosbeat.conf.yml -strict.perms=false > out.log 2> err.log & echo $! > eosbeat.pid
15 |
--------------------------------------------------------------------------------
/stop-eosbeat.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | if [ -f "eosbeat.pid" ]; then
4 | pid=`cat "eosbeat.pid"`
5 | kill -9 $pid
6 | rm -r "eosbeat.pid"
7 | echo -ne "Stopping eosbeat"
8 | while true; do
9 | [ ! -d "/proc/$pid/fd" ] && break
10 | echo -ne "."
11 | sleep 1
12 | done
13 | echo -ne "\reosbeat stopped! \n"
14 | fi
15 |
--------------------------------------------------------------------------------
/tests/system/config/eosbeat.yml.j2:
--------------------------------------------------------------------------------
1 | ################### Beat Configuration #########################
2 |
3 |
4 |
5 | ############################# Output ##########################################
6 |
7 | # Configure what outputs to use when sending the data collected by the beat.
8 | # You can enable one or multiple outputs by setting enabled option to true.
9 | output:
10 |
11 | ### File as output
12 | file:
13 | # Enabling file output
14 | enabled: true
15 |
16 | # Path to the directory where to save the generated files. The option is mandatory.
17 | path: {{ output_file_path|default(beat.working_dir + "/output") }}
18 |
19 |
20 | # Name of the generated files. The default is `eosbeat` and it generates
21 | # files: `eosbeat`, `eosbeat.1`, `eosbeat.2`, etc.
22 | filename: {{ output_file_filename|default("eosbeat") }}
23 |
24 | # Maximum size in kilobytes of each file. When this size is reached, the files are
25 | # rotated. The default value is 10 MB.
26 | #rotate_every_kb: 10000
27 |
28 | # Maximum number of files under path. When this number of files is reached, the
29 | # oldest file is deleted and the rest are shifted from last to first. The default
30 | # is 7 files.
31 | #number_of_files: 7
32 |
33 |
34 |
35 | ############################# Beat #########################################
36 |
37 | # The name of the shipper that publishes the network data. It can be used to group
38 | # all the transactions sent by a single shipper in the web interface.
39 | # If this options is not defined, the hostname is used.
40 | #name:
41 |
42 | # The tags of the shipper are included in their own field with each
43 | # transaction published. Tags make it easy to group servers by different
44 | # logical properties.
45 | #tags: ["service-X", "web-tier"]
46 |
47 |
48 |
49 | ############################# Logging #########################################
50 |
51 | #logging:
52 | # Send all logging output to syslog. On Windows default is false, otherwise
53 | # default is true.
54 | #to_syslog: true
55 |
56 | # Write all logging output to files. Beats automatically rotate files if configurable
57 | # limit is reached.
58 | #to_files: false
59 |
60 | # Enable debug output for selected components.
61 | #selectors: []
62 |
63 | # Set log level
64 | #level: error
65 |
66 | #files:
67 | # The directory where the log files will written to.
68 | #path: /var/log/eosbeat
69 |
70 | # The name of the files where the logs are written to.
71 | #name: eosbeat
72 |
73 | # Configure log file size limit. If limit is reached, log file will be
74 | # automatically rotated
75 | #rotateeverybytes: 10485760 # = 10MB
76 |
77 | # Number of rotated log files to keep. Oldest files will be deleted first.
78 | #keepfiles: 7
79 |
--------------------------------------------------------------------------------
/tests/system/eosbeat.py:
--------------------------------------------------------------------------------
1 | import os
2 | import sys
3 | sys.path.append('../../vendor/github.com/elastic/beats/libbeat/tests/system')
4 | from beat.beat import TestCase
5 |
6 |
7 | class BaseTest(TestCase):
8 |
9 | @classmethod
10 | def setUpClass(self):
11 | self.beat_name = "eosbeat"
12 | self.beat_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "../../"))
13 | super(BaseTest, self).setUpClass()
14 |
--------------------------------------------------------------------------------
/tests/system/requirements.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eosrio/eosbeat/be21d595ee3a14c4d2f60dd026c3e9cc7692fa11/tests/system/requirements.txt
--------------------------------------------------------------------------------
/tests/system/test_base.py:
--------------------------------------------------------------------------------
1 | from eosbeat import BaseTest
2 |
3 | import os
4 |
5 |
6 | class Test(BaseTest):
7 |
8 | def test_base(self):
9 | """
10 | Basic test with exiting Eosbeat normally
11 | """
12 | self.render_config_template(
13 | path=os.path.abspath(self.working_dir) + "/log/*"
14 | )
15 |
16 | eosbeat_proc = self.start_beat()
17 | self.wait_until(lambda: self.log_contains("eosbeat is running"))
18 | exit_code = eosbeat_proc.kill_and_wait()
19 | assert exit_code == 0
20 |
--------------------------------------------------------------------------------