https://rianma.dev/posts/nodejs-error-handling/