크롤링·플랫폼 · 공식 문서

서버 로그 분석, 검색 크롤러 요청 확인 순서

액세스 로그에서 User-Agent 로 Googlebot·Yeti 줄을 거르고, 역방향 DNS 로 진짜인지 확인한 뒤 URL·상태 코드·시간대별로 묶습니다. 구글은 서치 콘솔이 URL별 크롤링 기록을 주지 않으니 특정 URL의 크롤링 여부는 사이트 로그로 보라고 적었습니다.

서치 콘솔은 사이트 전체의 크롤링 추이를 보여 줍니다. 특정 URL에 크롤러가 언제 왔는지는 서버 로그에만 남습니다.

로그는 방문자 요청과 섞여 있어 양이 많습니다. 검색 크롤러 줄만 뽑아 정해진 순서로 묶으면 문제 URL이 드러납니다.

발견 01

구글은 URL별 크롤링 여부를 사이트 로그로 보라고 적었고, 크롤링과 색인은 따로 확인합니다

Search Console doesn't provide a crawl history for your site that can be filtered by URL or path, but you can inspect your site logs to see whether specific URLs have been crawled by Googlebot. Whether or not those crawled URLs have been indexed is another story.

서치 콘솔은 URL이나 경로로 거를 수 있는 크롤링 기록을 주지 않지만, 사이트 로그로 특정 URL을 구글봇이 크롤링했는지 볼 수 있다. 크롤링된 URL이 색인됐는지는 별개의 일이다.

Google Search Central 「Troubleshoot Google Search crawling errors」
로그 한 줄에서 뽑을 칸쓰는 곳원문
User-AgentGooglebot·Yeti 요청만 거르고, 구글봇은 스마트폰·데스크톱을 나눕니다You can identify the subtype of Googlebot by looking at the HTTP user-agent request header in the request. As such the majority of Googlebot crawl requests will be made using the mobile crawler, and a minority using the desktop crawler.요청의 User-Agent 헤더로 구글봇의 하위 유형을 알 수 있다. 구글봇 크롤링 요청은 대부분 모바일 크롤러가, 적은 몫은 데스크톱 크롤러가 한다.
접근 IP역방향 DNS 왕복으로 진짜 크롤러인지 확인합니다Run a reverse DNS lookup on the accessing IP address from your logs, using the host command. / 웹서버 로그 혹은 방화벽 접근 기록에 있는 접근자의 IP 주소에 대해 역 DNS 조회를 하여 조회된 도메인이 .naver.com으로 끝나는지 확인합니다.로그의 접근 IP를 host 명령으로 역방향 DNS 조회한다. (네이버 문장은 원문이 한국어다.)
요청 시각URL이 언제 크롤링됐는지, 하루 몇 번 오는지 봅니다Examine your site logs to see when specific URLs were crawled by Googlebot.사이트 로그로 특정 URL을 구글봇이 언제 크롤링했는지 본다.
요청 URL중요한 URL에 크롤러가 오는지, 필터·달력 URL에 몰리는지 봅니다Search Console doesn't provide a crawl history for your site that can be filtered by URL or path, but you can inspect your site logs to see whether specific URLs have been crawled by Googlebot.서치 콘솔은 URL이나 경로로 거를 수 있는 크롤링 기록을 주지 않지만, 사이트 로그로 특정 URL을 구글봇이 크롤링했는지 볼 수 있다.
상태 코드200 이 아닌 응답을 URL별로 모읍니다Most responses should be 200 or other "Good"-type responses, unless you are doing a site reorganization or site move.사이트 재구성이나 이전 중이 아니라면 응답 대부분은 200 이나 다른 「양호」 응답이어야 한다.
응답 시간느려진 시간대가 있는지 봅니다If the site slows down (latency increases or response times become longer), or responds with server errors (5xx HTTP status codes) or rate-limiting signals (such as HTTP 429), the limit goes down and Google crawls less.사이트가 느려지거나(지연·응답 시간 증가) 서버 오류(5xx)나 속도 제한 신호(429)로 응답하면 한도가 내려가고 구글은 크롤링을 줄인다.
칸 이름은 서버마다 다릅니다. 대개 기본 로그 형식에 다 들어 있고, 응답 시간은 설정을 켜야 남는 경우가 있습니다.

발견 02

로그에서 검색 크롤러 요청을 확인하는 순서는 7단계입니다

순서단계하는 일
1로그 확보호스팅 업체나 서버에서 최근 액세스 로그를 받습니다. CDN·방화벽을 거친다면 그쪽 기록도 같은 기간으로 받습니다
2크롤러 줄 거르기User-Agent 에 Googlebot·Yeti 가 든 줄만 남깁니다
3진짜인지 확인남은 줄의 IP를 묶어 역방향 DNS 왕복으로 확인하고, 맞지 않는 IP의 줄은 따로 뺍니다
4URL별로 묶기URL마다 요청 수와 마지막 요청 시각을 내고, 사이트맵의 중요한 URL과 맞춰 봅니다
5상태 코드별로 묶기5xx·4xx·3xx 를 URL별로 모으고, 리디렉션이 여러 번 이어지는 URL을 찾습니다
6빈도와 시간대 보기날짜·시간대별 요청 수와 응답 시간을 그려, 급증하거나 느려진 때를 찾습니다
7크롤링 통계와 맞추기같은 기간의 크롤링 통계 보고서 수치와 비교해 차이가 큰 곳의 원인을 봅니다
3단계에서 IP는 줄마다가 아니라 IP별로 한 번씩 조회하면 됩니다. 진위 확인 방법은 「크롤링 차단 확인」 편에 자세히 적었습니다.
순서에서 쓰는 원문원문
1단계 로그 확보We strongly recommend that you check with your hosting company and look at your server's recent access logs to understand the source of the traffic, and see if it matches any of these common causes of a sharp increase in crawling.호스팅 회사에 확인하고 서버의 최근 접속 로그를 보며 트래픽의 출처를 파악하고, 크롤링 급증의 흔한 원인과 맞는지 보기를 강하게 권한다.
6단계 빈도의 기준For most sites, Googlebot shouldn't access your site more than once every few seconds on average.대부분의 사이트에서 구글봇은 평균적으로 몇 초에 한 번 넘게 접근하지 않는다.
5단계 리디렉션 세는 법If a URL has a server-side redirect, each request in the redirect chain is counted as a separate request.URL에 서버 측 리디렉션이 있으면 리디렉션 체인의 요청 하나하나가 따로 세어진다.
7단계 숫자 차이Therefore you might see slight differences between your site's request logs and the numbers reported here.그래서 사이트의 요청 로그와 보고서 숫자 사이에 약간의 차이가 보일 수 있다.
크롤링 통계 보고서는 리디렉션 체인의 요청을 하나씩 따로 셉니다. 로그도 같은 방식으로 세면 비교가 맞습니다.

발견 03

로그에서 보이는 것은 6가지로 나뉘고, 각각 다음에 볼 자리가 다릅니다

로그에서 보이는 것다음에 볼 자리원문
중요한 URL에 크롤러 요청이 없음사이트맵·내부 링크·robots.txt·서버 가용성을 차례로 봅니다If you think that Googlebot is missing important content, either it doesn't know about the content, the content is blocked from Google, or your site availability is throttling Google's access (or Google is trying not to overload your site).구글봇이 중요한 콘텐츠를 놓친다면, 구글이 그 콘텐츠를 모르거나, 콘텐츠가 차단됐거나, 사이트 가용성이 구글의 접근을 제한하고 있는 것이다(또는 구글이 사이트에 과부하를 주지 않으려 하는 것이다).
필터·정렬·달력 URL에 요청이 몰림URL을 불리는 기능을 정리합니다Faceted navigation or other sorting and filtering functionality / A calendar with a lot of URLs for specific dates필터 탐색이나 다른 정렬·필터 기능 / 날짜마다 URL이 많은 달력.
특정 시각에 5xx 가 몰림그 시각의 배포·트래픽·보안 장비 기록을 봅니다Server error (5XX): These errors cause availability warnings and should be fixed if possible.서버 오류(5XX)는 가용성 경고를 일으키므로 가능하면 고쳐야 한다.
구글봇 이름인데 DNS 가 맞지 않음사칭 요청이므로 크롤링 분석에서 빼고 차단 여부를 따로 정합니다Before you decide to block Googlebot, be aware that the HTTP user-agent request header used by Googlebot is often spoofed by other crawlers.구글봇을 차단하기 전에, 구글봇이 쓰는 User-Agent 헤더는 다른 크롤러가 자주 사칭한다는 점을 알아 둔다.
크롤링 통계 수치가 로그보다 훨씬 많음robots.txt 응답이 오래 실패했는지 봅니다If the total crawl count shown in this report is much higher than Google crawling requests in your server logs, this can occur when Google cannot crawl your site because your robots.txt file is unavailable for too long.보고서의 총 크롤링 수가 서버 로그의 구글 요청보다 훨씬 많다면, robots.txt 를 너무 오래 쓸 수 없어 구글이 크롤링하지 못한 경우일 수 있다.
크롤링 통계에 있는데 로그에 없는 실패요청이 서버에 닿기 전 단계(DNS·방화벽)를 봅니다Page could not be reached: Any other error in retrieving the page, where the request never reached the server. Because these requests never reached the server, these requests will not appear in your logs.페이지에 연결할 수 없음은 요청이 서버에 닿지 못한 오류다. 서버에 닿지 않았으므로 서버 로그에도 남지 않는다.
마지막 두 줄은 로그와 크롤링 통계 보고서를 함께 볼 때만 보입니다.
Determine which Google crawler is overcrawling your site. Look at your website logs or use the Crawl Stats report.

어떤 구글 크롤러가 사이트를 과하게 크롤링하는지 찾는다. 웹사이트 로그를 보거나 크롤링 통계 보고서를 쓴다.

Search Console Help 「Crawl Stats report」

발견 04

같은 로그 분석도 B2B·B2C·B2G 는 먼저 찾는 URL이 다릅니다

예시 ① 새 솔루션 소개 페이지가 검색에 늦게 잡히는 SaaS 회사(B2B)

로그에서 새 페이지 URL에 Googlebot 요청이 있는지부터 봅니다. 요청이 없으면 사이트맵과 내부 링크 쪽 일이고, 있으면 색인 단계의 일입니다.

예시 ② 크롤러 요청이 필터 URL에 몰린 쇼핑몰(B2C)

URL별로 묶어 보니 크롤러 요청 대부분이 색상·사이즈 조합 URL로 갔다면, 상품 상세 URL의 크롤링이 늦어지는 이유가 됩니다.

조합 URL 정리 뒤 같은 기간 로그를 다시 뽑아 상품 상세 URL의 요청이 늘었는지 봅니다.

예시 ③ 서버 로그를 유지보수 업체가 보관하는 공공기관 누리집(B2G)

담당자는 기간과 거를 조건(Googlebot·Yeti User-Agent, 상태 코드)을 정해 업체에 크롤러 줄만 요청합니다. 방문자 IP가 든 전체 로그를 넘겨받을 필요가 줄어듭니다.

그럼 이번 주에 로그로 무엇을 확인하나요?

  1. 최근 2주치 액세스 로그를 받고, 같은 기간의 크롤링 통계 보고서 화면을 저장합니다.
  2. User-Agent 에 Googlebot·Yeti 가 든 줄만 남기고, IP별로 역방향 DNS 왕복을 확인합니다.
  3. 사이트맵의 중요한 URL 목록과 맞춰 크롤러 요청이 없는 URL을 뽑습니다.
  4. 상태 코드가 200 이 아닌 줄을 URL별로 모아, 5xx·404·여러 번 이어지는 리디렉션을 고칠 목록으로 만듭니다.
  5. 요청이 몰린 URL 패턴(필터·정렬·달력)을 찾고, 정리할 기능을 정합니다. 크롤링 예산을 신경 쓸 규모인지는 「크롤링 예산 뜻」 편에서 먼저 봅니다.
  6. 크롤링 통계 수치와 로그 수치가 크게 다르면 robots.txt 응답과 앞단 장비(DNS·방화벽)를 봅니다.

조사 방법

  • Google Search Central 「Troubleshoot Google Search crawling errors」 (문서 수정일 2025-12-18) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/troubleshoot-crawling-errors
  • Google Search Central 「Googlebot」 (문서 수정일 2026-02-03) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/googlebot
  • Search Console Help 「Crawl Stats report」 · 최종 확인일 2026-10-25 · https://support.google.com/webmasters/answer/9679690
  • Google Crawling Infrastructure 「Reduce the Google crawl rate」 (문서 수정일 2026-10-06) · 최종 확인일 2026-10-25 · https://developers.google.com/crawling/docs/crawlers-fetchers/reduce-crawl-rate
  • Google Crawling Infrastructure 「Verify requests from Google crawlers and fetchers」 (문서 수정일 2026-03-20) · 최종 확인일 2026-10-25 · https://developers.google.com/crawling/docs/crawlers-fetchers/verify-google-requests
  • 네이버 서치어드바이저 「검색로봇 확인 방법」 · 최종 확인일 2026-10-25 · https://searchadvisor.naver.com/guide/seo-basic-firewall
  • 확인 순서 7단계와 로그에서 보이는 것 6가지는 위 문서들이 로그와 크롤링 통계에 대해 적은 것을 순서로 묶은 것입니다. 묶는 방식은 편집 판단입니다.
  • 로그 분석 도구의 제품별 사용법은 다루지 않고, 어느 도구에서나 같은 칸과 순서로 적었습니다.
  • 예시 ①②③은 이해를 돕기 위해 만든 가상 상황이며, 실제 기업·기관의 사례가 아닙니다.
  • 원문은 영어판(hl=en)이고, 도구·보고서 이름은 같은 문서 한국어판(hl=ko) 표기를 따랐습니다. 네이버 문서는 한국어 원문입니다.