섹션별 상세
기존 분석 도구인 Umami나 Cloudflare Web Analytics는 브라우저에서 자바스크립트가 실행되어야 작동하므로, HTML만 읽고 떠나는 AI 크롤러를 추적할 수 없는 한계가 있다.
Cloudflare Pages의 functions/_middleware.ts를 활용하면 별도의 인프라 관리 없이 에지 단에서 모든 요청을 가로채어 User-Agent 헤더를 실시간으로 분석할 수 있다.
typescript
export async function onRequest(context: EventContext): Promise<Response> {
const userAgent = context.request.headers.get('user-agent') || '';
const botName = detectAiBot(userAgent);
if (!botName) {
return context.next();
}
const url = new URL(context.request.url);
console.log(`[AI Bot] ${botName} → ${url.pathname} (${context.request.method})`);
const websiteId = context.env.PUBLIC_UMAMI_WEBSITE_ID;
if (websiteId) {
context.waitUntil(sendToUmami(websiteId, botName, context.request));
}
return context.next();
}Cloudflare Pages 미들웨어에서 AI 봇을 감지하고 비동기적으로 분석 데이터를 전송하는 핵심 핸들러 로직이다.
GPTBot, ClaudeBot, PerplexityBot 등 주요 AI 봇의 패턴을 정규표현식으로 정의하여 요청을 필터링하며, 이는 robots.txt 설정과 동기화되어 체계적으로 관리된다.
typescript
const AI_BOT_PATTERNS: ReadonlyArray<{ pattern: RegExp; name: string }> = [
{ pattern: /GPTBot/i, name: 'GPTBot' },
{ pattern: /ChatGPT-User/i, name: 'ChatGPT-User' },
{ pattern: /ClaudeBot/i, name: 'ClaudeBot' },
{ pattern: /PerplexityBot/i, name: 'PerplexityBot' },
// ...(중략)
];추적 대상이 되는 주요 AI 크롤러들의 정규표현식 패턴과 식별 이름 목록이다.
성능 최적화를 위해 context.waitUntil() 메서드를 사용하여 Umami API 호출을 비동기로 처리함으로써, 봇에게 페이지 응답을 보내는 과정에서 지연 시간이 발생하지 않도록 설계했다.
알려지지 않은 새로운 봇을 감지하기 위해 'bot', 'crawler' 등의 키워드를 포함하는 User-Agent를 별도로 로깅하는 2단계 검증 로직을 추가하여 시스템의 확장성을 확보했다.
수집된 데이터는 Umami 대시보드에서 인간 사용자의 트래픽과 함께 시각화되며, 특정 AI 모델의 방문 빈도와 선호 콘텐츠를 비교 분석하는 것이 가능하다.



용어 해설
- 에지 미들웨어(Edge Middleware)
- — 사용자의 요청이 서버에 도달하기 전 에지 네트워크 단에서 실행되는 코드 계층이다. 요청을 가로채어 헤더 수정, 리다이렉션, 데이터 분석 등을 수행하며 중앙 서버의 부하를 줄이고 응답 속도를 높이는 역할을 한다. 이 글에서는 모든 유입 트래픽의 User-Agent를 검사하는 관문으로 활용된다.
- 사용자 에이전트(User-Agent)
- — 웹 브라우저나 크롤러가 서버에 요청을 보낼 때 자신을 식별하기 위해 포함하는 HTTP 헤더 문자열이다. 브라우저 종류, 버전, 운영체제 정보를 담고 있으며 AI 봇의 경우 'GPTBot'이나 'ClaudeBot' 같은 고유 식별자를 포함한다. 이를 분석하면 요청의 출처가 인간인지 특정 AI 모델인지 판별할 수 있다.
- 웨이트 언틸(waitUntil())
- — 서버가 클라이언트에게 응답을 보낸 후에도 백그라운드에서 특정 비동기 작업을 계속 수행할 수 있도록 보장하는 메서드이다. 분석 데이터를 외부 API로 전송하는 작업처럼 응답 속도에 영향을 주지 않아도 되는 로직을 처리할 때 필수적이다. 이를 통해 추적 시스템 도입으로 인한 웹사이트 지연 시간을 제거한다.
- 서버사이드 분석(Server-Side Analytics)
- — 브라우저에서 자바스크립트를 실행하여 데이터를 수집하는 대신 서버 단에서 직접 요청 데이터를 기록하는 방식이다. 자바스크립트를 실행하지 않는 봇이나 크롤러의 활동을 100% 포착할 수 있으며 광고 차단 도구의 영향을 받지 않는다. AI 시대에 보이지 않는 자동화 트래픽을 파악하는 핵심 기술이다.
기술
- Cloudflare Pages
- TypeScript
- Umami API
- Regex
활용 사례
- AI 봇 방문 통계 분석
- 콘텐츠 크롤링 실시간 모니터링
- 서버사이드 이벤트 추적 시스템 구축
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
원문 발행 2026. 03. 05.수집 2026. 03. 05.출처 타입 RSS
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
