view src/core/ngx_syslog.h @ 9226:c769217b4a5c

Syslog: logging level of connect() errors. Connecting to syslog server might legitimately fail: for example, if syslogd is not running, and the connection is made over a unix socket. As such, the "alert" logging level is not appropriate. Changed logging level to "crit" instead, similarly to the logging level used for connect() errors in resolver.
author Maxim Dounin <mdounin@mdounin.ru>
date Fri, 01 Mar 2024 05:42:15 +0300
parents 1c9264603adc
children
line wrap: on
line source


/*
 * Copyright (C) Nginx, Inc.
 */


#ifndef _NGX_SYSLOG_H_INCLUDED_
#define _NGX_SYSLOG_H_INCLUDED_


typedef struct {
    ngx_uint_t         facility;
    ngx_uint_t         severity;
    ngx_str_t          tag;

    ngx_str_t         *hostname;

    ngx_addr_t         server;
    ngx_connection_t   conn;

    ngx_log_t          log;
    ngx_log_t         *logp;

    time_t             error_log_time;
    time_t             connect_error_time;

    unsigned           busy:1;
    unsigned           nohostname:1;
} ngx_syslog_peer_t;


char *ngx_syslog_process_conf(ngx_conf_t *cf, ngx_syslog_peer_t *peer);
u_char *ngx_syslog_add_header(ngx_syslog_peer_t *peer, u_char *buf);
void ngx_syslog_writer(ngx_log_t *log, ngx_uint_t level, u_char *buf,
    size_t len);
ssize_t ngx_syslog_send(ngx_syslog_peer_t *peer, u_char *buf, size_t len);


#endif /* _NGX_SYSLOG_H_INCLUDED_ */