This website uses cookies to ensure you get the best possible experience. See our Cookies Policy.

PMG Digital Made for Humans

Application Logging for Normal Users

2 MINUTE READ | January 31, 2015

Application Logging for Normal Users

Let’s say you’ve built an outstanding application. It’s robust, does its job well, and people love it.

But sometimes things go wrong. That’s okay! Your application has a great, searchable logging backend that lets you diagnose and fix problems as they happen.

Sounds perfect right? The problem is that developers don’t often sit around and watch logs for errors. We might check every now and again or studiously ignore alert emails, but it’s not something that’s part of our daily routine.

Ideally we’d want users to know when their processes went wrong so they can alert you, the developer, and get things resolved.

The problem is the average user doesn’t need to see real logging. — they don’t need exception names or technical sounding messages. In fact, those things might confused them.

There’s an alternative, however, and it’s very simple.

Give each error a unique identifier (like a uuid), show that error ID to the user with a generic something went wrong message in your application’s UI. Your real logging system will include that unique identifier.

This is not a new idea. The JSON API spec recommends something similar.

Insights meet inbox

Sign up for weekly articles & resources.

The goal here is to put the ball in the user’s court and give them the tools to help you solve the underlying problem. An error ID is a great way to do that: you can track down a single, specific log message whether it’s an application error or a simple misconfiguration.


Posted by Christopher Davis

Related Content

thumbnail image

Get Informed

PMG Innovation Challenge Inspires New Alli Technology Solutions

4 MINUTES READ | November 2, 2021

Get Informed

Applying Function Options to Domain Entities in Go

11 MINUTES READ | October 21, 2019

thumbnail image

Get Informed

My Experience Teaching Through Jupyter Notebooks

4 MINUTES READ | September 21, 2019

Get Informed

Trading Symfony’s Form Component for Data Transfer Objects

8 MINUTES READ | September 3, 2019

Get Inspired

Working with an Automation Mindset

5 MINUTES READ | August 22, 2019

Get Informed

Parsing Redshift Logs to Understand Data Usage

7 MINUTES READ | May 6, 2019

Get Inspired

3 Tips for Showing Value in the Tech You Build

5 MINUTES READ | April 24, 2019

thumbnail image

Get Informed

Testing React

13 MINUTES READ | March 12, 2019

Get Inspired

Tips for Designing & Testing Software Without a UX Specialist

4 MINUTES READ | March 6, 2019

Get Informed

A Beginner’s Experience with Terraform

4 MINUTES READ | December 20, 2018

All POST