From f92efc2756f8ac27d37de4b6b05ee87ee0d0c133 Mon Sep 17 00:00:00 2001 From: Emil Christensen Date: Fri, 6 Dec 2024 15:11:01 -0500 Subject: [PATCH] Adds diagnostic whoami flow --- flows/whoami.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 flows/whoami.py diff --git a/flows/whoami.py b/flows/whoami.py new file mode 100644 index 0000000..0ae7f7c --- /dev/null +++ b/flows/whoami.py @@ -0,0 +1,39 @@ +""" +This flow will log information about the current environment. Use it to +diagnose issues with your environment, especially when deploying to +infrastructure. +""" + +import sys +import os +import platform +import socket + +import httpx +import prefect + + +@prefect.flow +def whoami(): + logger = prefect.get_run_logger() + + data = { + "Platform": platform.machine(), + "OS": platform.version(), + "Python": sys.version, + "Prefect": prefect.__version__, + "Hostname": socket.gethostname(), + "Address": httpx.get("https://api.ipify.org").text, + "User": os.getenv("USER"), + "CWD": os.getcwd(), + "CPUs": os.cpu_count(), + "PID": os.getpid(), + "UID": os.getuid(), + } + + for key, value in data.items(): + logger.info(f"{key}: {value}") + + +if __name__ == "__main__": + whoami()