꼬반 Blog

[Nginx] 특정 에이전트 로그 제외하기

웹 서버를 운영하다 보면 서버의 로그를 수집하고 모니터링을 하는 부분이 매우 중요해진다. 그런데 로그를 살펴보면 각종 검색엔진의 crawler로 인해 로그가 고통받는걸 볼 수 있다. (어디가든 bot 이 문제야! ㅠㅠ) 그래서 이 bot 들의 로그를 남기지 않기 위해서는 다음과 같이 설정하여 주면 된다. 참조 : https://bjornjohansen.no/exclude-requests-from-nginx-access-log map $http_user_agent $log_ua { ~Pingdom 0; ~Googlebot 0; ~Baiduspider 0; default 1; } server { […] access_log /var/log/nginx/access.log main if=$log_ua; }user..

Read More

[Nginx] 특정 에이전트 로그 제외하기

웹 서버를 운영하다 보면 서버의 로그를 수집하고 모니터링을 하는 부분이 매우 중요해진다.


그런데 로그를 살펴보면 각종 검색엔진의 crawler로 인해 로그가 고통받는걸 볼 수 있다.


(어디가든 bot 이 문제야! ㅠㅠ)


그래서 이 bot 들의 로그를 남기지 않기 위해서는 다음과 같이 설정하여 주면 된다.


참조 : https://bjornjohansen.no/exclude-requests-from-nginx-access-log


map $http_user_agent $log_ua {

    ~Pingdom 0;
    ~Googlebot 0;
    ~Baiduspider 0;

    default 1;
}

server {
       
    […]

    access_log /var/log/nginx/access.log main if=$log_ua;

}

user_agent 에 특정 문자열을 포함한 경우는 로그를 남기지 않게 설정할 수 있다.


이 설정을 응용하여 특정 ip 나 특정 refferer 에서 로그를 남기지 않게 설정할 수 있다.


위 설정 도입 후 모니터링 솔루션에서 수집되는 로그수가 많이 감소하였다.

반응형

Article By 꼬반

*certificate* : VCP 5(2012), RHCSA 7 (2014), RHCE 7 (2015), RHCSA in REDHAT OpenStack(2017) *development language* : Javascript, NodeJS, Golang, html5, css3, shell script *middle ware* : NGINX, Apache, Tomcat, Docker, Docker Swarm, Mesos, Kubernetes, HCI,

Discuss about post