1. import os
  2. import platform
  3. import sys
  4. import json
  5. def get_runtime_info():
  6. """Collects runtime environment information."""
  7. info = {}
  8. # Operating System
  9. info["os"] = platform.system()
  10. info["os_version"] = platform.version()
  11. # Architecture
  12. info["architecture"] = platform.machine()
  13. # Processor
  14. info["processor"] = platform.processor()
  15. # Python Version
  16. info["python_version"] = sys.version
  17. # Platform
  18. info["platform"] = platform.platform()
  19. # System UUID
  20. info["system_uuid"] = platform.uname().uuid
  21. # Environment Variables
  22. info["environment_variables"] = os.environ.copy() #copy to avoid modification
  23. # File System Path (current working directory)
  24. info["cwd"] = os.getcwd()
  25. # Memory Information (approximation - limited without external libraries)
  26. info["memory_info"] = {
  27. "total_memory_gb": float(os.environ.get("TP_LINK_MEM_TOTAL_GB", "0")) if os.environ.get("TP_LINK_MEM_TOTAL_GB") else 0.0,
  28. "free_memory_gb": float(os.environ.get("TP_LINK_MEM_FREE_GB", "0")) if os.environ.get("TP_LINK_MEM_FREE_GB") else 0.0
  29. }
  30. return info
  31. def main():
  32. """Main function to gather and print runtime info."""
  33. runtime_data = get_runtime_info()
  34. # Output as JSON-like string
  35. print(json.dumps(runtime_data, indent=4))
  36. if __name__ == "__main__":
  37. main()

Add your comment