mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2025-11-06 11:18:54 -05:00
[Core] Add debug info command (#2728)
Shows useful debug information for debugging.
This commit is contained in:
parent
6928e2aca2
commit
cd745d35c2
@ -8,6 +8,9 @@ import logging
|
|||||||
import os
|
import os
|
||||||
import pathlib
|
import pathlib
|
||||||
import sys
|
import sys
|
||||||
|
import platform
|
||||||
|
import getpass
|
||||||
|
import pip
|
||||||
import tarfile
|
import tarfile
|
||||||
import traceback
|
import traceback
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
@ -1467,6 +1470,59 @@ class Core(commands.Cog, CoreLogic):
|
|||||||
msg = _("Data path: {path}").format(path=data_dir)
|
msg = _("Data path: {path}").format(path=data_dir)
|
||||||
await ctx.send(box(msg))
|
await ctx.send(box(msg))
|
||||||
|
|
||||||
|
@commands.command(hidden=True)
|
||||||
|
@checks.is_owner()
|
||||||
|
async def debuginfo(self, ctx: commands.Context):
|
||||||
|
"""Shows debug information useful for debugging.."""
|
||||||
|
|
||||||
|
if sys.platform == "linux":
|
||||||
|
import distro
|
||||||
|
|
||||||
|
IS_WINDOWS = os.name == "nt"
|
||||||
|
IS_MAC = sys.platform == "darwin"
|
||||||
|
IS_LINUX = sys.platform == "linux"
|
||||||
|
|
||||||
|
pyver = "{}.{}.{} ({})".format(*sys.version_info[:3], platform.architecture()[0])
|
||||||
|
pipver = pip.__version__
|
||||||
|
redver = red_version_info
|
||||||
|
dpy_version = discord.__version__
|
||||||
|
if IS_WINDOWS:
|
||||||
|
os_info = platform.uname()
|
||||||
|
osver = "{} {} (version {})".format(os_info.system, os_info.release, os_info.version)
|
||||||
|
elif IS_MAC:
|
||||||
|
os_info = platform.mac_ver()
|
||||||
|
osver = "Mac OSX {} {}".format(os_info[0], os_info[2])
|
||||||
|
elif IS_LINUX:
|
||||||
|
os_info = distro.linux_distribution()
|
||||||
|
osver = "{} {}".format(os_info[0], os_info[1]).strip()
|
||||||
|
else:
|
||||||
|
osver = "Could not parse OS, report this on Github."
|
||||||
|
user_who_ran = getpass.getuser()
|
||||||
|
|
||||||
|
if await ctx.embed_requested():
|
||||||
|
e = discord.Embed(color=await ctx.embed_colour())
|
||||||
|
e.title = "Debug Info for Red"
|
||||||
|
e.add_field(name="Red version", value=redver, inline=True)
|
||||||
|
e.add_field(name="Python version", value=pyver, inline=True)
|
||||||
|
e.add_field(name="Discord.py version", value=dpy_version, inline=True)
|
||||||
|
e.add_field(name="Pip version", value=pipver, inline=True)
|
||||||
|
e.add_field(name="System arch", value=platform.machine(), inline=True)
|
||||||
|
e.add_field(name="User", value=user_who_ran, inline=True)
|
||||||
|
e.add_field(name="OS version", value=osver, inline=False)
|
||||||
|
await ctx.send(embed=e)
|
||||||
|
else:
|
||||||
|
info = (
|
||||||
|
"Debug Info for Red\n\n"
|
||||||
|
+ "Red version: {}\n".format(redver)
|
||||||
|
+ "Python version: {}\n".format(pyver)
|
||||||
|
+ "Discord.py version: {}\n".format(dpy_version)
|
||||||
|
+ "Pip version: {}\n".format(pipver)
|
||||||
|
+ "System arch: {}\n".format(platform.machine())
|
||||||
|
+ "User: {}\n".format(user_who_ran)
|
||||||
|
+ "OS version: {}\n".format(osver)
|
||||||
|
)
|
||||||
|
await ctx.send(box(info))
|
||||||
|
|
||||||
@commands.group()
|
@commands.group()
|
||||||
@checks.is_owner()
|
@checks.is_owner()
|
||||||
async def whitelist(self, ctx: commands.Context):
|
async def whitelist(self, ctx: commands.Context):
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user