Hacker News new | ask | show | jobs
by doikor 1644 days ago
> I remember keeping it simple as an ultimate goal but maybe I am just too for this FP peeing contest? why is it such a frickin' deal to log a message somewhere?

Don't know about others but for me it is about being able to easily verify that my logging is setup correctly.

Once you write your logging to some monad (the library we use does not require it to be IO) testing it becomes trivial with a WriterT monad where it just write your logs into some list/buffer and check that what was logged in various cases was actually what you wanted.

We do the same with tracing checking that spans are created as we wanted and the tags/logs on the spans are setup correctly.

1 comments

Why would I verify logging which itself is a verification instrument? And, seriously, how hard is it to emit a diagnostic message so I need a test for that to get it right?
If you have some rare (rare as in it happens once every few months or something like that) error and you need logging about it. Also testing it ensures nobody by mistake removes that bit of logging by accident.
code reviews would probably be a better fit to prevent that.
Code reviews are useful, but I've never seen them used as an argument against writing tests.
There are tests of tests, why wouldn't there exist techniques for the verification of logging?