Logging in NebulaStream

Logging in NebulaStream is determined by the NES_LOGLEVEL macros:

NES_TRACEOnly when I would be “tracing” the code and trying to find one part of a function specifically.
NES_DEBUGInformation that is diagnostically helpful to people more than just developers (e.g., IT, sysadmins)
NES_INFOGenerally useful information to log (service start/stop, configuration assumptions, etc). Info I want to always have available but usually don’t care about under normal circumstances. This is my out-of-the-box config level.
NES_WARNINGAnything that can potentially cause application oddities, but for which I am automatically recovering. (Such as switching from a primary to backup server, retrying an operation, and missing secondary data).
NES_ERRORAny error which is fatal to the operation, but not the service or application (can’t open a required file, missing data, etc.). These errors will force user (administrator, or direct user) intervention. These are usually reserved (in my apps) for incorrect connection strings, and missing services.
NES_FATAL_ERRORAny error that is forcing a shutdown of the service or application to prevent data loss (or further data loss). I reserve these only for the most heinous errors and situations where there is guaranteed to have been data corruption or loss. This will throw an exception and thus crash the system so be careful.