diff --git a/monitoring_weekly/__init__.py b/monitoring_weekly/__init__.py index 3c09e4b..9e4c58a 100644 --- a/monitoring_weekly/__init__.py +++ b/monitoring_weekly/__init__.py @@ -5,7 +5,7 @@ import sys import importlib.util - +# Azure function timer. To alter timer cadence see function.json file def main(mytimer: func.TimerRequest) -> None: utc_timestamp = datetime.datetime.utcnow().replace( tzinfo=datetime.timezone.utc).isoformat() @@ -16,23 +16,46 @@ def main(mytimer: func.TimerRequest) -> None: logging.info('Python timer trigger function ran at %s', utc_timestamp) - # call function with script name in folder that you wish to run. Do not include file extension ie: ".py" - - try: - run_script('weekly_sama_reporting') - run_script('weekly_autolinker_100_links_audit') - run_script('weekly_insights_brand_monitoring') - run_script('weekly_new_brand_combos') - run_script('weekly_new_store_monitoring') - - except: - print("There was a problem running a script") - - def run_script(script_name): - script_path = os.path.join(os.path.dirname(__file__), f'{script_name}.py') + script_path = os.path.join(os.path.dirname(__file__), f'{script_name}') s = importlib.util.spec_from_file_location(script_name, script_path) m = importlib.util.module_from_spec(s) sys.modules[s.name] = m - s.loader.exec_module(m) \ No newline at end of file + s.loader.exec_module(m) + + +def batch_execution(file_list): + + exceptions = [] #store errors + + for file in files: + try: + run_script(file) + except Exception as e: + exceptions.append(e) + else: + print('Success') + + return exceptions + +# list of scripts running in function, if adding new script add to list. +files = ['weekly_sama_reporting.py', + 'weekly_autolinker_100_links_audit.py', + 'weekly_insights_brand_monitoring.py', + 'weekly_new_brand_combos.py', + 'weekly_new_store_monitoring.py'] + +batch_execution(files) + + # try: + # run_script('weekly_sama_reporting.py') + # run_script('weekly_autolinker_100_links_audit.py') + # run_script('weekly_insights_brand_monitoring.py') + # run_script('weekly_new_brand_combos.py') + # run_script('weekly_new_store_monitoring.py') + + # except: + # print("There was a problem running a script") + +