Commits


fix "double slash" in logs gmid ended up printing two slashes between the hostname and the path when logging the request IRI.


c->req may be NULL now


verbose logging for getnameinfo


fix syslog logging on FreeBSD Due to capsicum(4), opening the log on-demand via syslog(3) fails. openlog(LOG_NDELAY) forces the log to be opened immediately, before we enter capsicum. This doesn't affect OpenBSD (where pledge(2) doesn't stop syslog) nor linux (where the log process is not sandboxed.) Reported by Karl Jeacle, thank you!


fix wrong arguments order for send_log


introduce IMSG_LOG_REQUEST


send_log: accept explicit imsg type param


initialize the logger early Initialize the logger as soon as possible and log by default to stderr. With this, some (common?) errors are printed early instead of ending up in syslog. # NB: this is in configless mode % ./gmid -p 80 [2021-07-07 11:05:57] bind: Address already in use % ./gmid -p 81 [2021-07-07 11:13:53] bind: Permission denied %


fmt


kill unused variable leftover from the handle_imsg_log -> do_log transition.


allow sending fd to log on to the logger process the logger process now can receive a file descriptor to write logs to. At the moment the logic is simple, if it receives a file it logs there, otherwise it logs to syslog. This will allow to log on custom log files.


wait for logger after fatal() With -f, when the main process exits after a fatal() (usually) the shell prompt is printed before the logger message. This adds a small poll to wait for the logger process to exit.


fatal: send log to logger


send priority to the logger process


lower log priority for fatal errors from CRIT to ERR found by Anna, thanks!