1. import datetime
  2. import os
  3. import platform
  4. import sys
  5. import json
  6. def strip_metadata():
  7. """
  8. Strips runtime environment metadata for scheduled runs.
  9. Performs basic sanity checks.
  10. """
  11. metadata = {}
  12. # Get basic system information
  13. metadata["timestamp"] = datetime.datetime.now().isoformat()
  14. metadata["os_name"] = platform.system()
  15. metadata["os_version"] = platform.version()
  16. metadata["machine_name"] = platform.node()
  17. metadata["python_version"] = sys.version.split()[0]
  18. # Get environment variables
  19. env_vars = os.environ
  20. metadata["environment_variables"] = {k: v for k, v in env_vars.items()}
  21. # Sanity checks
  22. if not metadata["os_name"]:
  23. print("Warning: OS name not found.")
  24. metadata["os_name"] = "Unknown"
  25. if not metadata["python_version"]:
  26. print("Warning: Python version not found.")
  27. metadata["python_version"] = "Unknown"
  28. # Output metadata as JSON
  29. print(json.dumps(metadata, indent=4))
  30. if __name__ == "__main__":
  31. strip_metadata()

Add your comment