top | item 44174223

(no title)

eschatology | 9 months ago

Stack trace is much more verbose and shows the symbols leading to the failing function call The error wrapping(s) produce a log line containing a brief message from each layer in the codebase that expected no errors — subtle difference but one is a dump and the other is much more meaningful.

discuss

order

kubanczyk|9 months ago

> The error wrapping(s) produce a log line containing a brief message from each layer in the codebase that expected no errors — subtle difference

Agreed. How I articulate it, often a function is just another layer, does one core thing and one-two extras. I wrap meticulously the errors of the extras. The core errors mainly speak for themselves, so they rarely need any wrapping.

Avoids:

    cannot load config:  cannot load config: cannot load config: file not found
But promotes:

    cannot load config: cannot connect to Configurer: loading client cert: PEM invalid
The latter case reads like a list of plot twists, because it is one. A corresponding 40-line stack trace might be less readable.