summaryrefslogtreecommitdiff
path: root/0x7c0.com/update-stats.py
diff options
context:
space:
mode:
Diffstat (limited to '0x7c0.com/update-stats.py')
-rwxr-xr-x0x7c0.com/update-stats.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/0x7c0.com/update-stats.py b/0x7c0.com/update-stats.py
new file mode 100755
index 0000000..f0a1ec7
--- /dev/null
+++ b/0x7c0.com/update-stats.py
@@ -0,0 +1,55 @@
+#!/usr/bin/env python3
+
+import fileinput
+import os
+import shutil
+import sys
+import urllib.request
+
+WWW = '/var/www/html/tracker.jordan.im'
+
+stats = dict.fromkeys(['torrents', 'connections', 'uptime'])
+
+conn = urllib.request.Request(
+ 'http://127.0.0.1:6969/stats?format=txt&mode=conn',
+)
+r = urllib.request.urlopen(conn).read().decode('utf-8').split('\n')
+
+stats['uptime'] = int(int(r[2].split()[0]) / 3600)
+stats['connections'] = r[3].split()[2]
+
+conn = urllib.request.Request(
+ 'http://127.0.0.1:6969/stats?format=txt'
+)
+
+r = urllib.request.urlopen(conn).read().decode('utf-8').split('\n')
+
+stats['torrents'] = r[2].split()[2]
+
+s = (
+ f'The tracker has been online for {stats["uptime"]} hrs, '
+ f'serving {stats["torrents"]} torrents '
+ f'with {stats["connections"]} connections per second.\n'
+)
+
+for line in fileinput.input([os.path.join(WWW, 'index.html')], inplace=True):
+ if line.strip().startswith('The tracker has been'):
+ line = s
+ sys.stdout.write(line)
+
+cpu = 'https://service.greenhost.net/cloud/Instance/graph?id=7615&template=cpu&timeframe=24'
+conn = urllib.request.Request(cpu)
+conn.add_header('Cookie', 'PHPSESSID=XXXXXXXXXXXXXXXXXXXXXXXXXX')
+
+with urllib.request.urlopen(conn) as r, open(os.path.join(WWW, 'cpu.png'), 'wb') as out:
+ out.write(r.read())
+
+net = 'https://service.greenhost.net/cloud/Instance/graph?id=7615&template=net1&timeframe=24'
+conn = urllib.request.Request(net)
+conn.add_header('Cookie', 'PHPSESSID=XXXXXXXXXXXXXXXXXXXXXXXXXX')
+
+with urllib.request.urlopen(conn) as r, open(os.path.join(WWW, 'net.png'), 'wb') as out:
+ out.write(r.read())
+
+#import code
+#code.interact(local=locals())