From 2f720210e9fd67fe11cf2919561f58e42042e3e1 Mon Sep 17 00:00:00 2001 From: 2Shirt <2xShirt@gmail.com> Date: Tue, 6 Aug 2019 20:56:03 -0600 Subject: [PATCH] Added generate_debug_report() --- scripts/wk/std.py | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/scripts/wk/std.py b/scripts/wk/std.py index 867b5a0c..7e67cdd4 100644 --- a/scripts/wk/std.py +++ b/scripts/wk/std.py @@ -5,6 +5,7 @@ import itertools import logging import os import pathlib +import platform import re import sys import time @@ -171,6 +172,40 @@ def get_log_filepath(): return log_filepath +def generate_debug_report(): + """Generate debug report with various runtime details, returns str.""" + import socket + report = [] + func_list = ( + 'architecture', + 'machine', + 'platform', + 'python_version', + ) + + # Platform + report.append('[Platform]') + report.append(' {:<24} {}'.format( + 'FQDN', + socket.getfqdn(), + )) + for func in func_list: + report.append(' {:<24} {}'.format( + func.replace('_', ' ').title(), + getattr(platform, func)(), + )) + report.append('') + + # Environment + report.append('[Environment Variables]') + for key, value in sorted(os.environ.items()): + report.append(' {:<24} {}'.format(key, value)) + report.append('') + + # Done + return '\n'.join(report) + + def input_text(prompt='Enter text'): """Get text from user, returns string.""" prompt = str(prompt)