From c0dab4eda64175348a14ba3e68a9ea4571f1a70d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Soko=C5=82owski?= Date: Wed, 15 Aug 2018 18:00:21 -0400 Subject: [PATCH] api calls dont work for this, just use json --- cloudflare/get_log.py | 52 ++++++++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/cloudflare/get_log.py b/cloudflare/get_log.py index 68af092..0fcc575 100755 --- a/cloudflare/get_log.py +++ b/cloudflare/get_log.py @@ -1,30 +1,40 @@ #!/usr/bin/env python3 import os +import json import CloudFlare -email = 'jakub@status.im' -token = os.environ['CF_TOKEN'] +#email = 'jakub@status.im' +#token = os.environ['CF_TOKEN'] +# +#cf = CloudFlare.CloudFlare(email, token) +# +#zones = cf.zones.get(params = {'per_page':100}) +#zone_id = zones[0]['id'] +#zone_name = zones[0]['id'] +#print('Zones:', [z['name'] for z in zones]) +# +# BROKEN: https://github.com/cloudflare/python-cloudflare/issues/50 +## https://api.cloudflare.com/#audit-logs-list-user-audit-logs +#user_id = cf.user.get()['id'] +#logs = cf._base.call_with_auth('GET', +#logs = cf.user.audit_logs.get('status.im', +# params={ +# 'actor.email': 'jakub@status.im', +# 'since': '2018-06-01', +# 'per_page': 500, +# 'order': 'when', +# 'direction': 'desc', +# } +#) +with open('/tmp/audit_logs.json') as f: + logs = json.load(f)['result'] -cf = CloudFlare.CloudFlare(email, token) - -zones = cf.zones.get(params = {'per_page':100}) -zone_id = zones[0]['id'] -zone_name = zones[0]['id'] -print('Zones:', [z['name'] for z in zones]) - -# https://api.cloudflare.com/#audit-logs-list-user-audit-logs -user_id = cf.user.get()['id'] -logs = cf.user.audit_logs.get('status.im', - params={ - 'actor.email': 'jakub@status.im', - 'since': '2018-06-01', - 'per_page': 500, - 'order': 'when', - 'direction': 'desc', - } -) print('Found:', len(logs)) for l in logs: if l['action']['type'] in ['logout', 'login']: continue - print(l['when'], l['action'], l['metadata']) + if l['metadata'].get('zone_name') != 'status.im': + continue + if l['resource'].get('type') != 'DNS_record': + continue + print(l['when'], l['action']['info'])