- Document Path:
/api/statistics
- Document Length: 112 bytes
- Concurrency Level: 10
- Time Taken for Tests: 6.973 seconds
- Complete Requests: 100
- Failed Requests: 0
- Total Transferred: 39,700 bytes
On the d14n server, we have several services that is tied together. One of that is a gbc-crawler that crawls the Gnosis network for nodes and stores information like geo location, client name, client version etc.
The crawler finds about 1500 nodes (called discovered peers) but is only able to connect to 35. We need to find the reason why so many nodes (also called peers) are showing as offline.
We need to connect to the mongo-db instance and run a script on each peer to try and connect to it. Ideally all nodes should have a UDP port open and we should be able to just ping it. There's an example https://github.com/ethereumjs/ethereumjs-monorepo/blob/master/packages/devp2p/examples/simple.ts
(in javascript) that tries to ping it's bootnodes. We can adapt this, for instance here's an adaption of that code, using Gnosis Chain boot nodes.
//Compiler version 1.8.0_111 | |
import java.util.*; | |
import java.lang.*; | |
import java.io.*; | |
import java.nio.charset.StandardCharsets; | |
import java.util.stream.Collectors; | |
//TODO: Check logic for isPair. | |
//TODO: Implement is2Pairs |
%%%------------------------------------------------------------------- | |
%%% @author aardvocate | |
%%% @copyright (C) 2014, <COMPANY> | |
%%% @doc | |
%%% | |
%%% @end | |
%%% Created : 03. Sep 2014 11:02 PM | |
%%%------------------------------------------------------------------- | |
%%% | |
%%% This module provides a method will add new mnesia columns to an already running mnesia instance without losing data. |