-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathLogParser.py
More file actions
23 lines (21 loc) · 874 Bytes
/
LogParser.py
File metadata and controls
23 lines (21 loc) · 874 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class LogParser:
@staticmethod
def parse_logs(logs: set, valid_request_urls: dict) -> set:
function_id_map = {}
for request_url in valid_request_urls:
function_id_map[request_url] = set()
for log in logs:
try:
function_id = log.split("\"")[1]
request_url = LogParser.retrieve_request_url_from_function_id(function_id, valid_request_urls)
function_id_map[request_url].add(function_id)
except:
pass
return function_id_map
@staticmethod
def retrieve_request_url_from_function_id(function_id: str, valid_request_urls: dict) -> str:
request_url = function_id.split(" | ")[0]
if request_url in valid_request_urls:
return request_url
else:
raise Exception("Not a valid function_id")