Feature idea: Making it easier to share errors

Hi folks,

I’m curious if we could get consensus to extend our debug error page to make it easier to share an error by adding a “Copy Error” or “Share Error” button.

On the Django Discord server, we run into developers uploading screenshots of errors. We have disabled image uploads for some of the channels which has reduced this, but we still see the behavior in other ways. In my opinion, part of this comes from the developer not knowing which part is actually important to others. This is because I see people share just the error message without the traceback or even the file/function that the error came from.

I think by adding an obvious control to share or copy and error, newer developers will be more likely to share adequate information when seeking out help with errors. It may even reinforce the idea that everything that’s displayed has a purpose when debugging a problem which would help them improve as a developer.

One concern of mine is how much of the page’s content should be copied? The settings area can contain sensitive information so we should error on the side of caution there. Perhaps we have a non-default option to also copy the settings (or their values)? Though that gets into some more complex functionality.

Stretch idea, could we do the same with the terminal output?

1 Like

Stretch Idea that pops into my head (which is likely taking it too far) is to have ‘Share to Discord’ and ‘Share to Forum’ buttons on the error page which a developer can just click to create a draft post/message.

Side effect of this. It would probably get more developers involved in both places!

I agree something like that would help! It would have to be very prominent for people to actually see it, imho.

Even without additional formatting it would already be a better tool to point to instead of trying to explain what “please copy the error traceback” means. Having options like share-to-discord, which has very fiddly formatting with its backticks-but-no-trailing-whitespace would be icing on the cake indeed.

1 Like

I think the trouble here is that we can’t be sure that the discord server will always be here, but you can guarantee someone will be running an old version of Django which could have a hard link to these resources. I think at this point the django community has committed to something being present at forum.djangoproject.com until the heat death of the universe. Or at least it can. We can’t make that same pitch for Discord (for example: what it if goes paid for all users?)

Maybe we have a link to some documentation for where to go to get more help. And then on that page we can have a link to discord.

The default 500 error page already includes a “Share this traceback on a public website” button. Do we need more than this?

2 Likes

That’s fair (as I mention an extreme stretch goal).

I think a first step would be to ensure that the copy/paste traceback has a ‘copy as Markdown’ option which would be compatible with both current places and likely compatible with any future community software we happen to use.

Additionally, I could imagine there being a generic ‘Share to’ aspect of the project which wouldn’t hardcode URLs but allow additions/removals of different locations or perhaps a configuration for internal software (like a company jira) - I am likely pushing the bounds of what’s possible here though!

2 Likes

Well TIL. However, that is only present if you first click “Switch to copy-and-paste view”, then scroll down past the raw error to find the “Share this traceback on a public website” button.

Could we make that button more prominent, above the fold and on the initial render of the page?

i’m way for this. having a button that copies the traceback to your clipboard would be especially useful and require less direction from people in here tryna help others.

You’re absolutely welcome to suggest an improvement. :+1:

1 Like

oh this is actually great. auto format to whatever style the share-to is. would make seeing ugly tracebacks on discord a bit less of an issue.

This button has been with us since 2007 :smiley: , check out:

I don’t mind making it more visible.

1 Like

I feel like there might be 2/3 possible actions here:

  1. Move the current button to be more prominent
  2. Tweak the error to be markdown formatted
  3. OR add a second button to copy/share as markdown formatted code

I never knew anything about this before today either. (However, I generally use runserver_plus / Werkzeug, and this isn’t available there, so I’m not likely to have run across it before. I wonder if it could be adapted for it… :thinking:)