Files
@ 6772b7c03cda
Branch filter:
Location: FVDE/ennstatus/Scripts/check_servers.py - annotation
6772b7c03cda
1.2 KiB
text/x-python
updated requirement
707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 707908d9cfa7 |
import os
import os.path
import json
from datetime import datetime
DATE_FORMAT = '%d-%m-%Y %H:%M:%S'
DATADIR = './data'
def get_json_files():
for root, _, files in os.walk(DATADIR):
for f in files:
if f.endswith('.json'):
yield os.path.join(root, f)
def check_all_servers():
for f in get_json_files():
try:
with open(f, encoding='utf-8') as file_object:
data = json.load(file_object)
with open(f, mode='w', encoding='utf-8') as file_object:
date = datetime.strptime(data['last_updated'],
DATE_FORMAT)
now = datetime.utcnow()
delta = now - date
if delta.seconds >= 3600:
status = 'Offline'
elif delta.second >= 1200:
status = 'Unkown'
else:
status = None
if status:
for key in ('server_status', 'tor_status'):
data[key] = status
json.dump(data, file_object)
except:
continue
if __name__ == '__main__':
check_all_servers()
|