%PDF- %PDF-
Direktori : /usr/share/apport/ |
Current File : //usr/share/apport/kernel_oops |
#!/usr/bin/python3 # # Copyright (c) 2008 Canonical Ltd. # Author: Matt Zimmerman <mdz@canonical.com> # # This program is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation; either version 2 of the License, or (at your # option) any later version. See http://www.gnu.org/copyleft/gpl.html for # the full text of the license. """Collect information about a kernel oops.""" # TODO: Address following pylint complaints # pylint: disable=invalid-name import os import sys from gettext import gettext as _ import apport.fileutils checksum = None if len(sys.argv) > 1: checksum = sys.argv[1] oops = sys.stdin.read() pr = apport.Report("KernelOops") pr["Failure"] = "oops" pr["Tags"] = "kernel-oops" pr["Annotation"] = _( "Your system might become unstable now and might need to be restarted." ) package = apport.packaging.get_kernel_package() pr.add_package(package) pr["SourcePackage"] = "linux" pr["OopsText"] = oops u = os.uname() pr["Uname"] = f"{u[0]} {u[2]} {u[4]}" # write report try: with apport.fileutils.make_report_file(pr, uid=checksum) as f: pr.write(f) except OSError as error: apport.fatal("Cannot create report: %s", str(error))