Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Telemetry crawler #6592

Merged
merged 1 commit into from
Nov 4, 2020
Merged

Telemetry crawler #6592

merged 1 commit into from
Nov 4, 2020

Conversation

psteckler
Copy link
Member

@psteckler psteckler commented Nov 4, 2020

Add a script to get the telemetries from all nodes reachable from a local Mina daemon.

usage: telemetry-crawl.py [-h] [--daemon-port DAEMON_PORT] [--executable EXECUTABLE]

Get telemetry data from all Mina nodes reachable from localhost daemon

optional arguments:
  -h, --help            show this help message and exit
  --daemon-port DAEMON_PORT
                        daemon port on localhost (default: 8301)
  --executable EXECUTABLE
                        Mina program on localhost (default: coda)

Example output (piped through jq):

{
  "peer_ids_queried": 4,
  "telemetries": [
    {
      "node_ip_addr": "136.25.135.80",
      "node_peer_id": "12D3KooWAFFq2yEQFFzhU5dt64AWqawRuomG9hL8rSmm5vxhAsgr",
      "peers": [
        {
          "host": "127.0.0.1",
          "peer_id": "12D3KooWAsU3WkEh64zBwsVchhcDCUHJCEaxSyerVBgdHdzGycTr",
          "libp2p_port": 6007
        },
        {
          "host": "192.168.8.1",
          "peer_id": "12D3KooWPpm5oh3xeqzTXSSEeoVLfZ5V9JVwwrpvE79EszB6mVbw",
          "libp2p_port": 5007
        },
        {
          "host": "192.168.8.1",
          "peer_id": "12D3KooWPb6SUfq9wv42Undxk2t9qFrjz6QGbSQcFpDsfYkqYKzT",
          "libp2p_port": 4007
        }
      ],
      "block_producers": [],
      "protocol_state_hash": "3NLhUaMyYiMSQ6Zb3L2hRCVB3NxTqmAaiyA1F9JBqHuwguxbjkQy",
      "ban_statuses": [
        {
          "IP_address": "127.0.0.1",
          "peer_id": "12D3KooWAsU3WkEh64zBwsVchhcDCUHJCEaxSyerVBgdHdzGycTr",
          "peer_status": {
            "trust": -3.519363070852157e-06,
            "banned": "Unbanned"
          }
        },
        {
          "IP_address": "192.168.8.1",
          "peer_id": "12D3KooWPpm5oh3xeqzTXSSEeoVLfZ5V9JVwwrpvE79EszB6mVbw",
          "peer_status": {
            "trust": 4.764192151056713e-05,
            "banned": "Unbanned"
          }
        },
        {
          "IP_address": "192.168.8.1",
          "peer_id": "12D3KooWPb6SUfq9wv42Undxk2t9qFrjz6QGbSQcFpDsfYkqYKzT",
          "peer_status": {
            "trust": 0.008939551671271483,
            "banned": "Unbanned"
          }
        }
      ],
      "k_block_hashes": [
        "3NKzzHESWQwhzRfd1cn54CpnsPL3AejNHANwD3aTWBYvkbfYVySz",
        "3NLR6stD35cnRs3wWPGEuPZGsvXiBh9LdngVJZrQewVR8hUEeKgb",
        "3NK5KQ947fyVFvr27NGNFAaDdZbDW98oH6g9ab1gsG3zSNCq7QWi",
        "3NL5hc1HB5eiES9MKzs8VFHnNRspKXXVY7jHEw83mToKD1dcbbpn",
        "3NKQcYfWd21FrUnNCoeW6U3FvbMYUAwL5spYD6dBR6XEF7XNVy5C",
        "3NLgoznFFmXgqvUy5NB85naNwAFDoVUwp58b6HimurRtp5v12KzU",
        "3NKtvCnfFosYPAbajSYCWsKB5fWZ9tn7cpzUFRpFXLaKRHzutt29",
        "3NKL6Cofei6T6zYasuc54vqiR69UXQZWvvaDKNZSxmuEHKQNtj91",
        "3NKkgM2zh44jWnhJZ7orDozW7Ww7VBqgqHYQrAMmn37NHBBxknEh",
        "3NLvkrDbCKhMPWo7DqjuoA1KiaMWbheQMXmyza6nmcSCkxtYnPqX",
        "3NKbcByVU8Yt3BWHP9pfqoMHvpfyB6KJXvPoRqLpy5bzWAizbTiC",
        "3NKcyJZ3fpNEnzQZUwMcHiW5RxrrqfTgRu2gbLnpf2KK9JQnb7EF",
        "3NKxrY9eJcxobXpMuZnuKFU8HxyFithDHdkZuo4zPFzxsV8KQDz3",
        "3NKGnWPTUe5R6tHcorHtV5vdxx1Rmvg7o6drmmwzdivip1uB3ZpQ",
        "3NL7KnFmsgZRrAgZFJ9CQh9AKHcMcd7rQLJR8jNkhH1nQcacUoRy",
        "3NLM2sjzu1kb421TyUB2Pnw6tRzHsWFza4DaF8AW1h6bpfsLbBvU",
        "3NLgKLnsFX42rgGWP82fS6XZ1VKt1LkBA5WjcLrUEt3dL5ZirubN",
        "3NL3UjNQwGgDxCQmKaNJZqNhbSYCEPLonZcnWDqGrdPLeKX2EKWr",
        "3NLh7LMnXm2z3ctd6Qn3UpjWaXmnyF3hg3uU8hcDnBSvcu1mCTyN",
        "3NKMLUD8RwPQpACgJruvMMuPDb3jgvda1gTTJykUkSnUK9MjMUsr",
        "3NKzXx7PFZnAha7YGB5fxBQu3GZJsBZe8BUMtoSJofpehC9Py2nb",
        "3NLKZfTuvkmPFjfpF6TWtTXQhyADc3uHP6EyJJ9JQhqtscXoLeb1",
        "3NKmCJwAVvVWChrrxtcBp8Dpd978GzJNj5CpyCic5UYBSuhET9y7",
        "3NLQmw6VtpyUg8vJXvoQEJQzRWgjcGfLZqGqduXtHQGqC4xGeYky",
        "3NLhUaMyYiMSQ6Zb3L2hRCVB3NxTqmAaiyA1F9JBqHuwguxbjkQy"
      ]
    },
    {
      "node_ip_addr": "136.25.135.80",
      "node_peer_id": "12D3KooWPpm5oh3xeqzTXSSEeoVLfZ5V9JVwwrpvE79EszB6mVbw",
      "peers": [
        {
          "host": "192.168.8.1",
          "peer_id": "12D3KooWAFFq2yEQFFzhU5dt64AWqawRuomG9hL8rSmm5vxhAsgr",
          "libp2p_port": 3002
        },
        {
          "host": "192.168.1.5",
          "peer_id": "12D3KooWAsU3WkEh64zBwsVchhcDCUHJCEaxSyerVBgdHdzGycTr",
          "libp2p_port": 6007
        },
        {
          "host": "192.168.8.1",
          "peer_id": "12D3KooWPb6SUfq9wv42Undxk2t9qFrjz6QGbSQcFpDsfYkqYKzT",
          "libp2p_port": 4007
        }
      ],
      "block_producers": [
        "B62qmWBHrZnDGDmeNF9wKZN3eour52xw19Rpz13rptA39K22P4PE5WK"
      ],
      "protocol_state_hash": "3NLhUaMyYiMSQ6Zb3L2hRCVB3NxTqmAaiyA1F9JBqHuwguxbjkQy",
      "ban_statuses": [
        {
          "IP_address": "192.168.1.5",
          "peer_id": "12D3KooWAsU3WkEh64zBwsVchhcDCUHJCEaxSyerVBgdHdzGycTr",
          "peer_status": {
            "trust": -1.0435873833196289e-05,
            "banned": "Unbanned"
          }
        },
        {
          "IP_address": "192.168.8.1",
          "peer_id": "12D3KooWPb6SUfq9wv42Undxk2t9qFrjz6QGbSQcFpDsfYkqYKzT",
          "peer_status": {
            "trust": 0.008885756639482684,
            "banned": "Unbanned"
          }
        },
        {
          "IP_address": "192.168.8.1",
          "peer_id": "12D3KooWAFFq2yEQFFzhU5dt64AWqawRuomG9hL8rSmm5vxhAsgr",
          "peer_status": {
            "trust": -1.9621566677257487e-05,
            "banned": "Unbanned"
          }
        }
      ],
      "k_block_hashes": [
        "3NKzzHESWQwhzRfd1cn54CpnsPL3AejNHANwD3aTWBYvkbfYVySz",
        "3NLR6stD35cnRs3wWPGEuPZGsvXiBh9LdngVJZrQewVR8hUEeKgb",
        "3NK5KQ947fyVFvr27NGNFAaDdZbDW98oH6g9ab1gsG3zSNCq7QWi",
        "3NL5hc1HB5eiES9MKzs8VFHnNRspKXXVY7jHEw83mToKD1dcbbpn",
        "3NKQcYfWd21FrUnNCoeW6U3FvbMYUAwL5spYD6dBR6XEF7XNVy5C",
        "3NLgoznFFmXgqvUy5NB85naNwAFDoVUwp58b6HimurRtp5v12KzU",
        "3NKtvCnfFosYPAbajSYCWsKB5fWZ9tn7cpzUFRpFXLaKRHzutt29",
        "3NKL6Cofei6T6zYasuc54vqiR69UXQZWvvaDKNZSxmuEHKQNtj91",
        "3NKkgM2zh44jWnhJZ7orDozW7Ww7VBqgqHYQrAMmn37NHBBxknEh",
        "3NLvkrDbCKhMPWo7DqjuoA1KiaMWbheQMXmyza6nmcSCkxtYnPqX",
        "3NKbcByVU8Yt3BWHP9pfqoMHvpfyB6KJXvPoRqLpy5bzWAizbTiC",
        "3NKcyJZ3fpNEnzQZUwMcHiW5RxrrqfTgRu2gbLnpf2KK9JQnb7EF",
        "3NKxrY9eJcxobXpMuZnuKFU8HxyFithDHdkZuo4zPFzxsV8KQDz3",
        "3NKGnWPTUe5R6tHcorHtV5vdxx1Rmvg7o6drmmwzdivip1uB3ZpQ",
        "3NL7KnFmsgZRrAgZFJ9CQh9AKHcMcd7rQLJR8jNkhH1nQcacUoRy",
        "3NLM2sjzu1kb421TyUB2Pnw6tRzHsWFza4DaF8AW1h6bpfsLbBvU",
        "3NLgKLnsFX42rgGWP82fS6XZ1VKt1LkBA5WjcLrUEt3dL5ZirubN",
        "3NL3UjNQwGgDxCQmKaNJZqNhbSYCEPLonZcnWDqGrdPLeKX2EKWr",
        "3NLh7LMnXm2z3ctd6Qn3UpjWaXmnyF3hg3uU8hcDnBSvcu1mCTyN",
        "3NKMLUD8RwPQpACgJruvMMuPDb3jgvda1gTTJykUkSnUK9MjMUsr",
        "3NKzXx7PFZnAha7YGB5fxBQu3GZJsBZe8BUMtoSJofpehC9Py2nb",
        "3NLKZfTuvkmPFjfpF6TWtTXQhyADc3uHP6EyJJ9JQhqtscXoLeb1",
        "3NKmCJwAVvVWChrrxtcBp8Dpd978GzJNj5CpyCic5UYBSuhET9y7",
        "3NLQmw6VtpyUg8vJXvoQEJQzRWgjcGfLZqGqduXtHQGqC4xGeYky",
        "3NLhUaMyYiMSQ6Zb3L2hRCVB3NxTqmAaiyA1F9JBqHuwguxbjkQy"
      ]
    },
    {
      "node_ip_addr": "136.25.135.80",
      "node_peer_id": "12D3KooWPb6SUfq9wv42Undxk2t9qFrjz6QGbSQcFpDsfYkqYKzT",
      "peers": [
        {
          "host": "192.168.8.1",
          "peer_id": "12D3KooWAFFq2yEQFFzhU5dt64AWqawRuomG9hL8rSmm5vxhAsgr",
          "libp2p_port": 3002
        },
        {
          "host": "192.168.1.5",
          "peer_id": "12D3KooWAsU3WkEh64zBwsVchhcDCUHJCEaxSyerVBgdHdzGycTr",
          "libp2p_port": 6007
        },
        {
          "host": "192.168.8.1",
          "peer_id": "12D3KooWPpm5oh3xeqzTXSSEeoVLfZ5V9JVwwrpvE79EszB6mVbw",
          "libp2p_port": 5007
        }
      ],
      "block_producers": [
        "B62qnZzMYnLMKKouLzw8HJBD2kqL3fWytXJ3uZJVeZ1kr2BFE9EP2Sn"
      ],
      "protocol_state_hash": "3NLnfB5q5kbqA7y4BMNutYoi4i1VcEbgqfunF5eGu1QADdPpHcxA",
      "ban_statuses": [
        {
          "IP_address": "192.168.1.5",
          "peer_id": "12D3KooWAsU3WkEh64zBwsVchhcDCUHJCEaxSyerVBgdHdzGycTr",
          "peer_status": {
            "trust": -0.00013841839093248808,
            "banned": "Unbanned"
          }
        },
        {
          "IP_address": "192.168.8.1",
          "peer_id": "12D3KooWPpm5oh3xeqzTXSSEeoVLfZ5V9JVwwrpvE79EszB6mVbw",
          "peer_status": {
            "trust": -0.00010128007064940261,
            "banned": "Unbanned"
          }
        },
        {
          "IP_address": "192.168.8.1",
          "peer_id": "12D3KooWAFFq2yEQFFzhU5dt64AWqawRuomG9hL8rSmm5vxhAsgr",
          "peer_status": {
            "trust": -0.00015585724569278496,
            "banned": "Unbanned"
          }
        }
      ],
      "k_block_hashes": [
        "3NLR6stD35cnRs3wWPGEuPZGsvXiBh9LdngVJZrQewVR8hUEeKgb",
        "3NK5KQ947fyVFvr27NGNFAaDdZbDW98oH6g9ab1gsG3zSNCq7QWi",
        "3NL5hc1HB5eiES9MKzs8VFHnNRspKXXVY7jHEw83mToKD1dcbbpn",
        "3NKQcYfWd21FrUnNCoeW6U3FvbMYUAwL5spYD6dBR6XEF7XNVy5C",
        "3NLgoznFFmXgqvUy5NB85naNwAFDoVUwp58b6HimurRtp5v12KzU",
        "3NKtvCnfFosYPAbajSYCWsKB5fWZ9tn7cpzUFRpFXLaKRHzutt29",
        "3NKL6Cofei6T6zYasuc54vqiR69UXQZWvvaDKNZSxmuEHKQNtj91",
        "3NKkgM2zh44jWnhJZ7orDozW7Ww7VBqgqHYQrAMmn37NHBBxknEh",
        "3NLvkrDbCKhMPWo7DqjuoA1KiaMWbheQMXmyza6nmcSCkxtYnPqX",
        "3NKbcByVU8Yt3BWHP9pfqoMHvpfyB6KJXvPoRqLpy5bzWAizbTiC",
        "3NKcyJZ3fpNEnzQZUwMcHiW5RxrrqfTgRu2gbLnpf2KK9JQnb7EF",
        "3NKxrY9eJcxobXpMuZnuKFU8HxyFithDHdkZuo4zPFzxsV8KQDz3",
        "3NKGnWPTUe5R6tHcorHtV5vdxx1Rmvg7o6drmmwzdivip1uB3ZpQ",
        "3NL7KnFmsgZRrAgZFJ9CQh9AKHcMcd7rQLJR8jNkhH1nQcacUoRy",
        "3NLM2sjzu1kb421TyUB2Pnw6tRzHsWFza4DaF8AW1h6bpfsLbBvU",
        "3NLgKLnsFX42rgGWP82fS6XZ1VKt1LkBA5WjcLrUEt3dL5ZirubN",
        "3NL3UjNQwGgDxCQmKaNJZqNhbSYCEPLonZcnWDqGrdPLeKX2EKWr",
        "3NLh7LMnXm2z3ctd6Qn3UpjWaXmnyF3hg3uU8hcDnBSvcu1mCTyN",
        "3NKMLUD8RwPQpACgJruvMMuPDb3jgvda1gTTJykUkSnUK9MjMUsr",
        "3NKzXx7PFZnAha7YGB5fxBQu3GZJsBZe8BUMtoSJofpehC9Py2nb",
        "3NLKZfTuvkmPFjfpF6TWtTXQhyADc3uHP6EyJJ9JQhqtscXoLeb1",
        "3NKmCJwAVvVWChrrxtcBp8Dpd978GzJNj5CpyCic5UYBSuhET9y7",
        "3NLQmw6VtpyUg8vJXvoQEJQzRWgjcGfLZqGqduXtHQGqC4xGeYky",
        "3NLhUaMyYiMSQ6Zb3L2hRCVB3NxTqmAaiyA1F9JBqHuwguxbjkQy",
        "3NLnfB5q5kbqA7y4BMNutYoi4i1VcEbgqfunF5eGu1QADdPpHcxA"
      ]
    }
  ]
}

Tested by running the script on a local network, validating the output with JSONLint.

Closes #6588.

@psteckler psteckler added ci-build-me Add this label to trigger a circle+buildkite build for this branch ready-to-merge Adding this label will trigger mergify and trigger CI to run and merge the PR labels Nov 4, 2020
@mergify mergify bot merged commit 704070a into develop Nov 4, 2020
@mergify mergify bot deleted the feature/telemetry-crawler branch November 4, 2020 19:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci-build-me Add this label to trigger a circle+buildkite build for this branch ready-to-merge Adding this label will trigger mergify and trigger CI to run and merge the PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Save topology information to JSON in network crawler script
2 participants