summaryrefslogtreecommitdiff
path: root/src/funcs_worklogger.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/funcs_worklogger.py')
-rw-r--r--src/funcs_worklogger.py46
1 files changed, 24 insertions, 22 deletions
diff --git a/src/funcs_worklogger.py b/src/funcs_worklogger.py
index 4388ad4..8ffabfa 100644
--- a/src/funcs_worklogger.py
+++ b/src/funcs_worklogger.py
@@ -15,7 +15,7 @@ import csv
import os
-TIME_FORMAT = "%Y-%m-%dT%H:%M:%S%z"
+TIME_FORMAT = "%Y-%m-%dT%H:%M:%S%Z"
def _prep_write(format, s_log, p_settings, _dt, k_args):
@@ -23,31 +23,31 @@ def _prep_write(format, s_log, p_settings, _dt, k_args):
if format == '.txt' or format == None:
for key, val in k_args.items():
if key == 'job' and val is not None:
- s_log += f"{key}:'{val}'"
+ s_log += f"{key}:{val},"
elif key == 'time' and val is not None:
- s_log += f"{key}:{val}hrs "
+ s_log += f"{key}:{val}hrs,"
elif key == 'message' and val is not None:
- s_log += f"{'desc'}:'{val}' "
+ s_log += f"{'desc'}:'{val}',"
elif key == 'proj' and val is not None and p_settings is not None:
job_projects = p_settings[str(k_args['job']).upper()]
if str(val).upper() in job_projects.keys():
- s_log += f"{key}:{job_projects[str(val).upper()]} "
+ s_log += f"{key}:{job_projects[str(val).upper()]},"
logger.debug(
f"Job: {k_args['job']}; Projects: {job_projects}")
else:
- s_log += f"{key}:{val} "
+ s_log += f"{key}:{val},"
logger.debug(
f"Couldn't get specified projects for {k_args['job']} in config.")
elif key == 'start' and val == 'now':
- s_log += f"{key}:{dt.strftime("'%H:%M'")} "
+ s_log += f"{key}:{dt.strftime("'%H:%M'")},"
elif key == 'start' and val is not None:
- s_log += f"{key}:'{val}' "
+ s_log += f"{key}:'{val}',"
elif key == 'end' and val == 'now':
- s_log += f"{key}:{dt.strftime("'%H:%M'")} "
+ s_log += f"{key}:{dt.strftime("'%H:%M'")},"
elif key == 'end' and val is not None:
- s_log += f"{key}:'{val}' "
+ s_log += f"{key}:'{val}',"
elif val is not None:
- s_log += f"{key}:{val} "
+ s_log += f"{key}:{val},"
return s_log, None, None
@@ -151,11 +151,11 @@ def parse(filepath):
csv_log = ''
for key, val in row.items():
if key == 'timestamp':
- csv_log += f"{val} "
+ csv_log += f"{val},"
elif key == 'job':
- csv_log += f"{key}:'{val}' "
+ csv_log += f"{key}:{val},"
elif val:
- csv_log += f"{key}:{val} "
+ csv_log += f"{key}:{val},"
lines.append(csv_log)
@@ -166,8 +166,8 @@ def parse(filepath):
def add_log(file_format=None, proj_settings=None, savepath=None, backuppath=None, **kwargs):
- dt = datetime.datetime.now(timezone.utc)
- log_str = f"{dt.strftime(TIME_FORMAT)} "
+ dt = datetime.now(timezone.utc)
+ log_str = f"{dt.strftime(TIME_FORMAT)},"
job_upper = str(kwargs['job']).upper()
if file_format != None:
@@ -179,7 +179,7 @@ def add_log(file_format=None, proj_settings=None, savepath=None, backuppath=None
flag_start = False
flag_end = False
if len(parsed_file) > 1:
- last_entry = str(parsed_file[-1]).split(' ')
+ last_entry = str(parsed_file[-1]).split(',')
for param in last_entry:
param_split = param.split(':')
var, val = param_split[0], param_split[1] if len(
@@ -201,10 +201,10 @@ def add_log(file_format=None, proj_settings=None, savepath=None, backuppath=None
if file_format == '.txt':
if insert_time.lower() == 'now':
fd.write(
- f"{log_str}job:{kwargs['job']} end:{dt.strftime("'%H:%M'")}\n")
+ f"{log_str}job:{kwargs['job']},end:{dt.strftime("'%H:%M'")}\n")
else:
fd.write(
- f"{log_str}job:{kwargs['job']} end:{insert_time}\n")
+ f"{log_str}job:{kwargs['job']},end:{insert_time}\n")
elif file_format == '.csv':
csv_writer = csv.DictWriter(
fd, fieldnames=['timestamp'] + [x if x != 'message' else 'desc' for x in kwargs.keys()])
@@ -247,7 +247,8 @@ def combine_log(target_job, specified_ext, target_extension=None, savepath=None,
buffer[index] = [index, line]
for content in buffer:
- _entry = content[1].split(' ')
+ # putting dt stamp in list
+ _entry = content[1].split(',')
buffer[content[0]].append(_entry[0])
try:
@@ -258,11 +259,12 @@ def combine_log(target_job, specified_ext, target_extension=None, savepath=None,
f"Details: {str(e)}")
return None
- csv_logs = []
if specified_ext == '.csv':
+ csv_logs = []
for log in buffer:
+ # buffer contains index, log line, dt stamp
_log = {}
- split_log = log[1].split(' ')
+ split_log = log[1].split(',')
for index, param in enumerate(split_log):
if index == 0:
_log['timestamp'] = param