nginx가 syslog로 메시지를 보내는 것을 어떻게 비활성화합니까?

nginx가 syslog로 메시지를 보내는 것을 어떻게 비활성화합니까?

내 nginx는 syslog에 많은 메시지를 보내지만 필요하지 않습니다. 내 nginx.conf에서:

      error_log  /var/log/nginx-error.log  notice;
        ......
      server {
      access_log  off;
      location /
      {
         .... 
        }
      }

하지만 내 /var/log/message 말은 알잖아

Nov 22 23:25:09 cache3 nginx: 2011/11/22 23:25:09 [error] 3437#0: *32172530         kevent() reported about an closed connection (60: Operation timed out) while reading response header from upstream, client: , server: , request: "GET http://www.igoido012.com//vk HTTP/1.1", upstream: "http:////vk", host: "www.igoido012.com", referrer: "http://www.baidu.com/"
Nov 22 23:25:09 cache3 nginx: 2011/11/22 23:25:09 [error] 3437#0: *32099531 upstream timed out (60: Operation timed out) while reading response header from upstream, client: , server: , request: "GET http://t.web2.qq.com/channel/poll?msg_id=0&clientid=431509&t=1321975433305 HTTP/1.1", upstream: "http://:80/channel/poll?msg_id=0&clientid=431509&t=1321975433305", host: "t.web2.qq.com", referrer: "http://t.web2.qq.com/proxy.html?v=20110331001"

nginx가 내 syslog에 메시지를 보내는 것을 어떻게 방지할 수 있나요?

답변1

나는 nginx가 패치 없이 syslog로 보낼 것이라는 것을 몰랐습니다.

http://wiki.nginx.org/3rdPartyModules#Third_party_patches

따라서 nginx의 사용자 정의 빌드가 있다고 가정합니다. 구성 방법에 대한 힌트는 패치 소스를 살펴보세요.

https://github.com/yaoweibin/nginx_syslog_patch

직접 nginx를 실행하는 경우 해당 로그 항목을 syslog에 저장하는 것이 있습니다.

관련 정보