mirror of
https://github.com/r4sas/Niflheim-api
synced 2025-09-04 10:01:57 +00:00
add 24 hours node count
This commit is contained in:
parent
70a54c45b5
commit
d9216c95df
@ -12,8 +12,13 @@ DB_USER = "yggindex"
|
|||||||
DB_NAME = "yggindex"
|
DB_NAME = "yggindex"
|
||||||
DB_HOST = "localhost"
|
DB_HOST = "localhost"
|
||||||
|
|
||||||
|
# count peer alive if it was available not more that amount of seconds ago
|
||||||
|
# I'm using 1 hour beause of running crawler every 15 minutes
|
||||||
|
ALIVE_SECONDS = 3600 # 1 hour
|
||||||
|
|
||||||
|
|
||||||
def age_calc(ustamp):
|
def age_calc(ustamp):
|
||||||
if (time.time() - ustamp) <= 14400 :
|
if (time.time() - ustamp) <= ALIVE_SECONDS :
|
||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
return False
|
return False
|
||||||
|
@ -16,7 +16,7 @@ DB_NAME = "yggindex"
|
|||||||
DB_HOST = "localhost"
|
DB_HOST = "localhost"
|
||||||
|
|
||||||
# count peer alive if it was available not more that amount of seconds ago
|
# count peer alive if it was available not more that amount of seconds ago
|
||||||
# I'm using 1 hour beause of running cron job every 15 minutes
|
# I'm using 1 hour beause of running crawler every 15 minutes
|
||||||
ALIVE_SECONDS = 3600 # 1 hour
|
ALIVE_SECONDS = 3600 # 1 hour
|
||||||
|
|
||||||
|
|
||||||
@ -74,6 +74,30 @@ class nodesInfo(Resource):
|
|||||||
return nodeinfo
|
return nodeinfo
|
||||||
|
|
||||||
|
|
||||||
|
# alive nodes count for latest 24 hours
|
||||||
|
class nodes24h(Resource):
|
||||||
|
def get(self):
|
||||||
|
dbconn = psycopg2.connect(host=DB_HOST,\
|
||||||
|
database=DB_NAME,\
|
||||||
|
user=DB_USER,\
|
||||||
|
password=DB_PASSWORD)
|
||||||
|
cur = dbconn.cursor()
|
||||||
|
nodes = {}
|
||||||
|
cur.execute("SELECT * FROM timeseries ORDER BY unixtstamp DESC LIMIT 24")
|
||||||
|
for i in cur.fetchall():
|
||||||
|
nodes[i[1]] = i[0]
|
||||||
|
|
||||||
|
dbconn.commit()
|
||||||
|
cur.close()
|
||||||
|
dbconn.close()
|
||||||
|
|
||||||
|
nodeinfo = {}
|
||||||
|
nodeinfo['nodes24h'] = nodes
|
||||||
|
|
||||||
|
return nodeinfo
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@app.route("/")
|
@app.route("/")
|
||||||
def fpage():
|
def fpage():
|
||||||
dbconn = psycopg2.connect(host=DB_HOST,\
|
dbconn = psycopg2.connect(host=DB_HOST,\
|
||||||
@ -98,6 +122,7 @@ def fpage():
|
|||||||
#sort out the api request here for the url
|
#sort out the api request here for the url
|
||||||
api.add_resource(nodesCurrent, '/current')
|
api.add_resource(nodesCurrent, '/current')
|
||||||
api.add_resource(nodesInfo, '/nodeinfo')
|
api.add_resource(nodesInfo, '/nodeinfo')
|
||||||
|
api.add_resource(nodes24h, '/nodes24h')
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
app.run(host='::', port=3000)
|
app.run(host='::', port=3000)
|
||||||
|
@ -23,11 +23,15 @@
|
|||||||
|
|
||||||
Get a current list of active and online nodes:<br />
|
Get a current list of active and online nodes:<br />
|
||||||
<div class="apireq">
|
<div class="apireq">
|
||||||
<a href="/current">http://[31a:fb8a:c43e:ca59::2]/current</a>
|
<a href="/current" target="_blank">http://[31a:fb8a:c43e:ca59::2]/current</a>
|
||||||
</div>
|
</div>
|
||||||
Nodeinfo from all current active nodes:<br />
|
Nodeinfo from all current active nodes:<br />
|
||||||
<div class="apireq">
|
<div class="apireq">
|
||||||
<a href="/nodeinfo">http://[31a:fb8a:c43e:ca59::2]/nodeinfo</a>
|
<a href="/nodeinfo" target="_blank">http://[31a:fb8a:c43e:ca59::2]/nodeinfo</a>
|
||||||
|
</div>
|
||||||
|
Active nodes count for last 24 hours:<br />
|
||||||
|
<div class="apireq">
|
||||||
|
<a href="/nodes24h" target="_blank">http://[31a:fb8a:c43e:ca59::2]/nodes24h</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="wide"></div>
|
<div class="wide"></div>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user