Make sure your catch handlers (promises or try...catch) have a log statement.
Pass the whole error object as a parameter to your log function - this will make sure you get the stack trace (don't convert it to a string).
Ensure you are printing enough context at the start of a (potentially error prone) flow so you can trace the error back to the event that started it. Also consider printing that contextual information with the log statement.
Use console.error (or your logging framework equivalent) so it's separate and obvious.