# Design Philosophy On Logging

DevFeed: [Design Philosophy On Logging](<https://devfeed.tech/articles/design-philosophy-on-logging-22123.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2017/05/design-philosophy-on-logging.html>)

Published: 2017-05-10T00:00:00Z

Content type: opinion

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [Logging](<https://devfeed.tech/topics/logging.md>), [debugging](<https://devfeed.tech/topics/debugging.md>), [systems](<https://devfeed.tech/topics/systems.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [ardan-labs](<https://devfeed.tech/tags/ardan-labs.md>), [blog](<https://devfeed.tech/tags/blog.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [go](<https://devfeed.tech/tags/go.md>), [go-programming](<https://devfeed.tech/tags/go-programming.md>), [golang](<https://devfeed.tech/tags/golang.md>), [logging](<https://devfeed.tech/tags/logging.md>), [programming](<https://devfeed.tech/tags/programming.md>), [reviews](<https://devfeed.tech/tags/reviews.md>), [systems](<https://devfeed.tech/tags/systems.md>)

## AI overview

This article presents a design philosophy for application logging. It argues that relying on a debugger can hinder developers' ability to read code and reason about problems, and recommends defining the purpose of logs--ideally isolating them to information needed to debug errors while keeping metrics and informational data separate.

## Source excerpt

Prelude This post is part of a series designed to make you think about your own design philosophy on different topics. If you haven't read the following post yet, please do so first: Develop Your Design Philosophy Introduction Systems cannot be developed assuming that human beings will be able to write millions of lines of code without making mistakes, and debugging alone is not an efficient way to develop reliable systems. - Al Aho (inventor of AWK)