Remix.run Logo
ivan_gammel 7 hours ago

…and the same ID can be displayed to user on HTTP 500 with the support contact, making life of everyone much easier.

dexwiz 6 hours ago | parent [-]

I have seen pushback on this kind of behavior because "users don't like error codes" or other such nonsense. UX and Product like to pretend nothing will ever break, and when it does they want some funny little image, not useful output.

A good compromise is to log whenever a user would see the error code, and treat those events with very high priority.

spockz 5 hours ago | parent | next [-]

We put the error code behind a kind of message/dialog that invites the user to contact us if the problem persists and then report that code.

It’s my long standing wish to be able to link traces/errors automatically to callers when they call the helpdesk. We have all the required information. It’s just that the helpdesk has actually very little use for this level of detail. So they can only attach it to the ticket so that actual application teams don’t have to search for it.

ivan_gammel 5 hours ago | parent | prev | next [-]

Nah, that’s easy problem to solve with UX copy. „Something went wrong. Try again or contact support. Your support request number is XXXX XXXX“ (base 58 version of UUID).

inkyoto 2 hours ago | parent | prev [-]

> I have seen pushback on this kind of behavior because "users don't like error codes" or other such nonsense […]

There are two dimensions to it: UX and security.

Displaying excessive technical information on an end-user interface will complicate support and likely reveal too much about the internal system design, making it vulnerable to external attacks.

The latter is particularly concerning for any design facing the public internet. A frequently recommended approach is exception shielding. It involves logging two messages upon encountering a problem: a nondescript user-facing message (potentially including a reference ID pinpointing the problem in space and time) and a detailed internal message with the problem’s details and context for L3 support / engineering.