mirror of
https://github.com/lalanza808/monero.fail.git
synced 2025-03-14 10:46:29 -04:00
check zmq ports for p2pool compat
This commit is contained in:
parent
b0df1f66c4
commit
eda876346a
2
Makefile
2
Makefile
@ -1,7 +1,7 @@
|
||||
setup:
|
||||
python3 -m venv .venv
|
||||
.venv/bin/pip install -r requirements.txt
|
||||
mkdir data
|
||||
mkdir -p data
|
||||
wget https://github.com/P3TERX/GeoLite.mmdb/raw/download/GeoLite2-City.mmdb -P data
|
||||
|
||||
up:
|
||||
|
@ -7,3 +7,4 @@ flask_wtf
|
||||
pysocks
|
||||
git+https://github.com/cdiv1e12/py-levin
|
||||
geoip2
|
||||
zmq
|
@ -1,21 +1,18 @@
|
||||
import json
|
||||
import re
|
||||
import logging
|
||||
from os import makedirs
|
||||
from random import shuffle
|
||||
from socket import gethostbyname_ex
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
import geoip2.database
|
||||
import arrow
|
||||
import requests
|
||||
import click
|
||||
from flask import Flask, request, redirect, jsonify
|
||||
from flask import render_template, flash, url_for
|
||||
from flask import render_template, flash
|
||||
from urllib.parse import urlparse, urlencode
|
||||
|
||||
from xmrnodes.helpers import determine_crypto, is_onion, make_request
|
||||
from xmrnodes.helpers import retrieve_peers, rw_cache, get_highest_block
|
||||
from xmrnodes.helpers import retrieve_peers, rw_cache, get_highest_block, check_zmq
|
||||
from xmrnodes.forms import SubmitNode
|
||||
from xmrnodes.models import Node, HealthCheck, Peer
|
||||
from xmrnodes import config
|
||||
@ -163,6 +160,13 @@ def cleanup_health_checks():
|
||||
print("Deleting check", check.id)
|
||||
check.delete_instance()
|
||||
|
||||
@app.cli.command("zmq")
|
||||
def get_zmq():
|
||||
# nodes = Node.select().where(Node.validated == True)
|
||||
# for node in nodes:
|
||||
# check_zmq(node.url)
|
||||
check_zmq('http://monero.10z.com.ar:18089')
|
||||
|
||||
@app.cli.command("check")
|
||||
def check():
|
||||
cleanup_health_checks()
|
||||
|
@ -1,10 +1,12 @@
|
||||
import sys
|
||||
import socket
|
||||
import pickle
|
||||
from time import sleep
|
||||
from os import path
|
||||
|
||||
import zmq
|
||||
from requests import get as r_get
|
||||
from levin.section import Section
|
||||
from urllib.parse import urlparse
|
||||
from levin.bucket import Bucket
|
||||
from levin.ctypes import *
|
||||
from levin.constants import LEVIN_SIGNATURE
|
||||
@ -13,6 +15,29 @@ from xmrnodes.models import Node
|
||||
from xmrnodes import config
|
||||
|
||||
|
||||
def check_zmq(url: str):
|
||||
# print(url.split('://'))
|
||||
node_socket = urlparse(url).netloc
|
||||
node_url = node_socket.split(':')[0]
|
||||
port = 18084
|
||||
tcp_node = f'tcp://{node_url}:{port}'
|
||||
print('Checking ZMQ for node {}'.format(tcp_node))
|
||||
try:
|
||||
ctx = zmq.Context()
|
||||
subscriber = ctx.socket(zmq.SUB)
|
||||
subscriber.setsockopt_string(zmq.SUBSCRIBE, '')
|
||||
subscriber.setsockopt(zmq.CONFLATE, 1)
|
||||
subscriber.connect(tcp_node)
|
||||
# data = subscriber.recv()
|
||||
count = 0
|
||||
while count < 5:
|
||||
data = subscriber.recv_multipart()
|
||||
count += 1
|
||||
print('success: {}'.format(data))
|
||||
ctx.term()
|
||||
except Exception as e:
|
||||
print(e)
|
||||
|
||||
def make_request(url: str, path="/get_info", data=None):
|
||||
headers = {"Origin": "https://monero.fail"}
|
||||
if is_onion(url):
|
||||
|
Loading…
x
Reference in New Issue
Block a user