nginx在main函数中首先对log进行初始化,将配置文件中的log文件名打开,将打开log文件句柄等相应的属性存在log变量中,本人觉得该代码写的挺好,有借鉴之处,因而在次贴出。
struct ngx_log_s {
ngx_uint_t log_level;ngx_open_file_t *file;
ngx_atomic_uint_t connection;
ngx_log_handler_pt handler;
void *data;
/*
* we declare "action" as "char *" because the actions are usually
* the static strings and in the "u_char *" case we have to override
* their types all the time
*/
ngx_log_t *next;
};(src/core/ngx_log.h)
typedef struct ngx_log_s ngx_log_t; (src/core/ngx_core.h)
ngx_log_t *log; (src/core/nginx.c)
log = ngx_log_init(ngx_prefix); (src/core/ngi