Files
@ 02b9d2a9fa0d
Branch filter:
Location: FVDE/ennstatus/Scripts/check_servers.py - annotation
02b9d2a9fa0d
1.2 KiB
text/x-python
split by types
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()
|