lightning/tests/integrations_app/apps/collect_failures/app.py

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

47 lines
1.3 KiB
Python
Raw Normal View History

import logging
import sys
import time
from lightning.app import LightningApp, LightningFlow, LightningWork
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
logger.addHandler(logging.StreamHandler(sys.stdout))
class SimpleWork(LightningWork):
def __init__(self):
2022-08-03 13:47:16 +00:00
super().__init__(cache_calls=False, parallel=True, raise_exception=False)
self.is_running_now = False
def run(self):
self.is_running_now = True
print("work_is_running")
for i in range(1, 10):
time.sleep(1)
if i % 5 == 0:
raise Exception(f"invalid_value_of_i_{i}")
print(f"good_value_of_i_{i}")
class RootFlow(LightningFlow):
def __init__(self):
super().__init__()
self.simple_work = SimpleWork()
def run(self):
print("useless_garbage_log_that_is_always_there_to_overload_logs")
self.simple_work.run()
if not self.simple_work.is_running_now:
pass
# work is not ready yet
print("waiting_for_work_to_be_ready")
else:
print("flow_and_work_are_running")
logger.info("logger_flow_work")
time.sleep(0.1)
if __name__ == "__main__":
app = LightningApp(RootFlow(), log_level="debug")