peer = log->wdata;
- if (peer->processing) {
+ if (peer->busy) {
return;
}
- peer->processing = 1;
+ peer->busy = 1;
peer->severity = level - 1;
p = ngx_syslog_add_header(peer, msg);
(void) ngx_syslog_send(peer, msg, p - msg);
- peer->processing = 0;
+ peer->busy = 0;
}
}
}
+ /* log syslog socket events with valid log */
+ peer->conn.log = ngx_cycle->log;
+
if (ngx_send) {
return ngx_send(&peer->conn, buf, len);
peer->conn.read = &ngx_syslog_dummy_event;
peer->conn.write = &ngx_syslog_dummy_event;
- peer->conn.log = &ngx_syslog_dummy_log;
ngx_syslog_dummy_event.log = &ngx_syslog_dummy_log;
{
ngx_syslog_peer_t *peer = data;
+ /* prevents further use of this peer */
+ peer->busy = 1;
+
if (ngx_close_socket(peer->conn.fd) == -1) {
ngx_log_error(NGX_LOG_ALERT, ngx_cycle->log, ngx_socket_errno,
ngx_close_socket_n " failed");