主权项 |
一种输出日志的方法,其特征在于,应用于一WEB服务器中,所述WEB服务器包括至少一个apache子进程,及一个server子进程,一个监听端口;其中,基于domain socket机制,在所述至少一个apache子进程中每个apache子进程与所述server子进程间建立有对应有数据接收端口的socket;所述监听端口,用于监听所述至少一个apache子进程中是否有apache子进程发出连接请求,所述方法包括:通过所述监听端口接收由所述至少一个apache子进程中一个子进程发送的连接请求;基于所述连接请求,打开所述连接请求对应apache子进程对应的socket对应的数据接收端口;接收由所述连接请求对应apache子进程发送来的日志数据包;在接收到日志数据包的数据长度达到所述日志数据包的包头中包含的数据长度值时,将所述日志数据包写成日志文件;所述WEB服务器还包括与所述至少一个apache子进程连接的pipe,与所述pipe连接的cronolog子进程,所述至少一个apache子进程中每个apache子进程用于:在所述server子进程不响应连接请求或接收日志数据包失败时,通过所述pipe将日志数据包发送给所述cronolog子进程。 |