주요 콘텐츠로 건너뛰기
AI 튜토리얼

GEOInflow를 배포하고 AI 크롤러, 추천 유입 및 콘텐츠 범위를 분석하기

Docker로 GEOInflow를 배포하고 초기 계정을 보호하는 방법을 알아보세요. 웹사이트 데이터 소스를 연결하고, 검증된 크롤러 활동과 AI 추천 유입을 분석하며, 콘텐츠 인벤토리를 가져오고, 분석 워커를 운영하는 과정도 다룹니다. 이 튜토리얼에서는 증거의 한계, 프로덕션 요구 사항, 개발 환경 설정, 보고서를 최신 상태로 유지하는 실용적인 방법도 설명합니다.

GEOInflow를 배포하고 AI 크롤러, 추천 유입 및 콘텐츠 범위를 분석하기

GEOInflow의 기능

GEOInflow는 생성형 엔진 최적화(Generative Engine Optimization), 즉 GEO를 위한 자체 호스팅 분석 플랫폼입니다. 브라우저 활동, AI 검색 유입, 서버 또는 CDN 크롤 로그, 콘텐츠 목록을 하나의 공유 웹사이트 컨텍스트에서 통합합니다.

이 플랫폼은 다음과 같은 실무 질문에 답할 수 있도록 지원합니다. 어떤 AI 크롤러가 사이트를 방문하는가? 어떤 경로를 요청하는가? 요청이 성공하고 있는가? 중요한 페이지 중 관찰된 크롤 활동이 없는 페이지는 무엇인가? 지원되는 AI 검색 유입을 통해 얼마나 많은 방문자 트래픽과 전환이 발생하는가?

GEOInflow는 기업 웹사이트, 미디어 퍼블리셔, 콘텐츠 사이트, 개발자 문서, 여러 웹사이트를 관리하는 팀에 적합합니다. 애플리케이션 소스 코드는 MIT 라이선스로 공개됩니다. README에는 제품 버전 v1.2와 빌드 버전 1.2.0이 명시되어 있습니다.

크롤 로그는 관찰된 액세스를 보여 줍니다. 하지만 그 자체만으로 색인 생성, 모델 학습, 답변 인용, 추천 순위 또는 고객 획득을 입증하지는 않습니다.

주요 기능

AI 크롤러 식별 및 목적

기본 제공 카탈로그에는 OpenAI, Anthropic, Perplexity, Google, Microsoft, ByteDance, Baidu, Kimi, Tencent Hunyuan 등의 제공업체가 포함됩니다. 기존 검색 크롤러와 기타 봇에 대한 관찰 기록도 유지됩니다.

플랫폼, 제품, 요청 식별 정보, 목적, 제품 유형이 서로 별도로 표현됩니다. 이를 통해 학습, AI 검색, 사용자 트리거 액세스, AI 워크벤치, 개인 에이전트와 같은 개념을 서로 배타적인 것으로 취급하지 않고 구분할 수 있습니다.

식별 근거도 별도로 보관됩니다. 선언된 User-Agent를 공식 IP 범위 및 사용 가능한 DNS 또는 신뢰할 수 있는 엣지 근거와 비교할 수 있습니다. User-Agent 주장만으로는 확인된 것으로 간주하지 않으며, 충분한 근거가 없는 과거 기록은 계속 미확인 상태로 표시됩니다.

크롤 활동 및 콘텐츠 범위

요청된 페이지 순위, 반복 요청, 관찰된 페이지, 디렉터리 분포, 주요 크롤러, 최근 활동, 콘텐츠 최신성을 검토할 수 있습니다. 사이트맵, CSV 또는 JSON 목록을 가져오면 관찰된 크롤 로그와 비교할 수 있는 알려진 페이지 집합이 제공됩니다.

이 비교를 통해 관찰된 액세스가 있는 페이지와 잠재적인 AI 사각지대를 확인할 수 있습니다. 식별 정보, 목적, 제품 유형 필터는 집계 및 페이지 매김 전에 적용되므로 카드, 표, 비교, 내보내기에서 일관된 조건이 사용됩니다.

요청 진단 및 액세스 정책

GEOInflow는 HTTP 응답, GET 및 HEAD와 같은 메서드, 캐시 동작, 지연 시간, 응답 크기, 수집 연속성, 위험 발견 사항을 별도의 근거로 제시합니다. 팀은 처리 상태와 메모를 추가하고 조사를 보류한 뒤 나중에 다시 진행할 수 있습니다.

플랫폼은 robots 및 Nginx 액세스 설정을 내보낼 수 있습니다. 지원되는 Cloudflare 제어 기능을 사용하려면 별도의 Zone 자격 증명, 미리보기, 명시적 확인, 백그라운드 실행, 결과 원격 상태 확인이 필요합니다. 사용 가능한 제어 기능은 배포 환경, 제공업체 요금제, 부여된 권한에 따라 달라집니다.

웹사이트 및 전환 분석

  • 페이지뷰, 방문자, 방문, 유입, 지역, 기기, 브라우저, 콘텐츠 성과
  • 맞춤 이벤트, 목표, 퍼널, 방문자 경로, 어트리뷰션, 수익 분석
  • 검색 엔진, 유입 키워드, UTM 분석, 성과, 히트맵, 리텐션, 오디언스
  • 웹사이트, 팀, 워크스페이스, 대시보드, 권한, 공개 공유 도구
  • 선택한 범위에 대한 CSV, JSON, ZIP 내보내기
  • 기본적으로 비활성화된 웹사이트 정보 기반 선택적 AI 지원

브라우저 추적은 지원되는 AI 검색 유입을 인식하고 이를 랜딩 페이지, 이벤트, 목표, 전환과 연결합니다. 크롤러 요청, 유입 세션, 전환은 서로 별개의 측정값으로 유지되며, 소스 간 비교에는 여전히 한계가 있습니다.

데이터 흐름 이해하기

GEOInflow는 세 가지 주요 유형의 입력을 받습니다.

  1. 브라우저 추적: 페이지뷰, 이벤트 및 활성화된 확장 브라우저 데이터를 수집합니다.
  2. 서버 또는 CDN 로그: 브라우저 스크립트를 실행하지 않는 크롤러 요청을 캡처합니다.
  3. 콘텐츠 목록: 사이트맵, CSV 또는 JSON 레코드를 가져와 범위 평가 대상 페이지를 정의합니다.

애플리케이션 및 수집 API는 PostgreSQL에 데이터를 기록합니다. 로그 및 분석 워커가 레코드를 처리하고 Redis가 캐시된 보고를 지원합니다. 이후 보고서와 게시된 결과가 GEO, 방문자, 콘텐츠 분석은 물론 권한에 따라 제어되는 공유 및 내보내기를 지원합니다.

각 소스는 독립적으로 연결할 수 있습니다. 소스가 없는 경우 해당 분석은 누락된 입력을 부정적인 결과로 조용히 처리하지 말고 그 한계를 표시해야 합니다.

빠른 배포를 위한 사전 요구 사항

시작하기 전에 Docker Compose V2가 포함된 Docker Engine 또는 Docker Desktop을 설치하고 실행합니다. 빌드 중 필요한 이미지 및 의존성 다운로드 소스에 장비가 접근할 수 있는지 확인합니다.

GEOInflow 소스 코드를 확보하고 터미널을 연 다음 저장소 루트로 이동합니다. 프로덕션 설치에는 추가로 도메인, HTTPS, 신뢰할 수 있는 리버스 프록시가 필요합니다.

Docker로 GEOInflow 배포

배포 스크립트 실행

프로젝트 루트에서 다음을 실행합니다.

sh scripts/liekan-deploy.sh

스크립트는 비공개 .env 파일과 무작위 시크릿을 생성하고, 애플리케이션 이미지를 빌드하며, 마이그레이션을 적용한 뒤 다음 구성 요소를 시작합니다.

  • GEOInflow 애플리케이션
  • 로그 워커
  • 분석 워커
  • PostgreSQL
  • Redis

애플리케이션 열기

기본 로컬 주소는 다음과 같습니다.

http://127.0.0.1:3002

새로 설치한 경우 초기 자격 증명으로 로그인합니다.

  • 사용자 이름: admin
  • 비밀번호: liekan

로그인한 직후 초기 비밀번호를 변경하세요. 이후 업그레이드에서도 사용자 지정 계정과 비밀번호는 유지됩니다.

번들 예제 불러오기

실제 웹사이트를 연결하기 전에 인터페이스를 살펴보려면 포함된 처리 데이터 세트를 시드하세요:

docker compose -f docker-compose.liekan.yml exec app node scripts/liekan-seed-demo.mjs

예제 웹사이트의 이름은 猎看官网(示例数据)입니다. 처음 가져올 때 데이터 세트를 편리하게 확인할 수 있도록 타임스탬프가 조정됩니다. 반복 실행해도 기존 데이터와 삭제 상태는 유지됩니다.

첫 번째 웹사이트 연결

관리자 계정을 보호한 후 GEOInflow에서 웹사이트를 만들고 배포 환경에 적합한 데이터 소스를 연결하세요. 정확한 수집 작업 흐름은 프로젝트의 빠른 시작 가이드를 참조하세요.

1단계: 브라우저 추적 추가

페이지뷰, 이벤트 및 활성화된 확장 측정 항목을 수집하려면 브라우저 추적 스크립트를 설치하세요. 추적은 기본적으로 쿠키를 사용하지 않습니다. 기록, 이벤트 속성 및 비즈니스 통합은 운영자가 구성한 데이터 범위에 따라 달라집니다.

신뢰할 수 있는 IP 수신 경로가 없어도 브라우저 페이지뷰 수집은 계속할 수 있습니다. 그러나 순 방문자와 같은 ID 민감 지표에는 신뢰할 수 있는 수신 경로 증거가 필요하므로 프로덕션 환경에서는 리버스 프록시를 신중하게 구성하세요.

2단계: 서버 또는 CDN 로그 연결

서버에서 문서만 요청하는 봇은 브라우저 스크립트로 관찰할 수 없습니다. 크롤러 액세스, 요청 경로, 응답 코드, 메서드, 지연 시간, 캐싱 및 오류를 측정하려면 서버 또는 CDN 로그를 추가하세요.

자동 서버 수집에는 공개 HTTPS, 수집 시크릿 및 서명된 설치 자산이 필요합니다. Cloudflare 통합을 사용하는 경우 OAuth, 적절한 권한 및 요청된 기능에 대한 제공업체 지원도 필요합니다.

3단계: 콘텐츠 목록 가져오기

크롤러가 발견할 것으로 예상되는 페이지가 포함된 사이트맵, CSV 파일 또는 JSON 목록을 가져오세요. GEOInflow는 이 알려진 목록을 관찰된 로그 레코드와 비교하여 크롤링 범위를 계산하고 관찰된 활동이 없는 페이지를 식별할 수 있습니다.

범위에 포함되지 않은 페이지를 제외의 증거로 간주하지 말고 조사 단서로 활용하세요. 진입점, 내부 링크, robots 지시문, HTTP 응답 및 로그 수집이 관련 기간을 포함했는지 확인하세요.

기본 분석 작업 흐름

사이트를 방문하는 AI 플랫폼 확인

  1. 웹사이트와 날짜 범위를 선택합니다.
  2. 크롤러 분석 영역을 엽니다.
  3. 크롤러 식별 정보, 제공업체, 목적, 요청량, 검증 상태 및 추세를 검토합니다.
  4. 식별 정보, 목적 및 제품 유형 필터를 사용하여 데이터 세트를 좁힙니다.
  5. User-Agent만 의존하지 말고 각 식별 정보를 뒷받침하는 증거를 확인합니다.

이 작업 흐름은 사용 가능한 카탈로그와 증거가 분류를 뒷받침하는 경우 학습용 크롤러, AI 검색 요청 및 사용자가 트리거한 액세스를 구분하는 데 도움이 됩니다.

집중적으로 크롤링된 경로와 잠재적으로 잘못된 경로 식별

  1. 요청된 페이지 순위와 반복 요청을 검토합니다.
  2. 디렉터리 및 크롤러별 활동을 비교합니다.
  3. 최근 활동과 콘텐츠 최신성을 확인합니다.
  4. 형식이 잘못되었거나 오래되었거나 예상보다 자주 요청되는 URL을 찾습니다.
  5. HTTP 상태, 캐시 동작, 지연 시간 및 응답 크기를 확인합니다.

반복 요청은 중요한 콘텐츠, 비효율적인 크롤러 동작, 리디렉션, 누락된 페이지 또는 구조적 문제를 드러낼 수 있습니다. 각 패턴은 응답 증거와 함께 해석하세요.

콘텐츠 범위 측정

  1. 현재 콘텐츠 목록을 가져옵니다.
  2. 일관된 웹사이트, 날짜 범위 및 크롤러 필터를 선택합니다.
  3. 목록의 페이지와 로그에서 관찰된 경로를 비교합니다.
  4. 관찰된 액세스가 없는 페이지를 검토합니다.
  5. 검색 가능성, 정책, 응답 및 소스 연속성을 조사합니다.

카드, 표, 비교 및 내보내기는 선택한 필터 조건을 공유합니다. 추론된 경로 관찰과 추정 결과에는 해당 레이블이 유지되므로 사용자는 계산된 결론과 직접적인 증거를 구분할 수 있습니다.

AI 추천 유입 결과 분석

  1. 웹사이트의 브라우저 추적을 활성화합니다.
  2. 인식된 AI 추천 세션과 랜딩 페이지를 검토합니다.
  3. 관련 이벤트, 목표 또는 전환을 정의합니다.
  4. 추천 트래픽과 이후 결과를 비교합니다.
  5. 결과를 보고할 때 크롤러 요청과 추천 세션을 분리합니다.

크롤러 요청만으로는 페이지가 AI 답변에 표시되었다고 판단할 수 없습니다. 마찬가지로 AI 추천 세션만으로는 모델이 페이지를 선택하거나 인용한 방식을 판단할 수 없습니다. 대시보드와 내보낸 보고서에서 이러한 구분을 유지하세요.

날짜 범위, 시간대 및 새로 고침 동작

주요 날짜 범위는 오늘, 7일 및 30일입니다. 기본 분석 시간대는 Asia/Shanghai입니다. 최초로 완전히 로그인하면 애플리케이션에서 국가와 도시 시간대를 확인합니다. 이후 요청에서는 계정에 저장된 시간대를 사용하여 오늘의 기준을 정합니다.

실시간 방문자는 최근 30분을 기준으로 합니다. 리텐션 분석은 달력상의 월을 사용합니다. 기본 오늘 대시보드는 30초마다 게시된 결과를 읽고 실제 데이터 기준 시점을 표시합니다. 페이지가 숨겨져 있거나 오프라인이면 새로 고침이 일시 중지되며, 실시간 및 대규모 분석은 각각의 업데이트 일정에 따라 실행됩니다.

고급 운영 팁

분석 가속화 확인

GEOInflow는 반복 계산을 줄이기 위해 사전 집계, 정확한 방문 사실, 영구 결과 및 여러 지속성 계층을 사용합니다. 일반적인 범위는 미리 준비할 수 있으며, 백그라운드 업데이트가 실행되는 동안에도 게시된 결과를 계속 사용할 수 있습니다.

배포 후 Analytics Acceleration 페이지에서 작업과 커버리지를 확인하세요. 초기 계산, 캐시 적중, 백그라운드 업데이트에는 서로 다른 비용이 발생합니다. 실제 성능은 데이터 볼륨, 인벤토리 생성 방식, PostgreSQL 성능, 캐시 상태에 따라 달라집니다.

워커 상태를 정상으로 유지

로그 워커와 분석 워커는 수집 데이터를 처리하고 결과를 게시하는 데 필수적입니다. 보고서 업데이트가 중단되면 빈 대시보드를 활동 부족으로 해석하기 전에 워커 상태, 큐, 소스 연속성, 데이터베이스 상태, Redis를 확인하세요.

용량 보호 기능으로 오래된 윈도우가 제거될 수 있으며, 유휴 상태의 실패한 작업은 자동 재시도를 일시 중지할 수 있습니다. 영속적인 백그라운드 작업을 사용하면 브라우저 세션을 계속 열어 두지 않아도 초기 계산을 완료할 수 있습니다.

소스와 증거의 경계를 유지

  • User-Agent의 주장을 검증된 크롤러 식별 정보로 취급하지 마세요.
  • 수집 커버리지가 완전하지 않다면 로그 활동이 없다는 사실을 크롤러가 페이지에 전혀 접근하지 않았다는 증거로 취급하지 마세요.
  • 크롤러의 접근을 색인 생성, 학습, 인용, 순위 지정 또는 획득과 동일시하지 마세요.
  • 누락된 통합, 빈 데이터 세트, 알 수 없는 값, 추정치, 지원되지 않는 기능을 서로 다른 상태로 유지하세요.
  • 날짜 범위, 소스 커버리지, 필터, 규칙 버전이 호환되는 경우에만 결과를 비교하세요.

접근 제어를 신중하게 사용

생성된 robots, Nginx 또는 지원되는 Cloudflare 변경 사항을 적용하기 전에 미리 확인하세요. Cloudflare 작업에는 명시적인 확인이 필요하며, 작업 후 원격 상태를 다시 읽어 확인해야 합니다. 실제 배포 환경에서 제공업체의 요금제와 권한을 확인하세요.

프로덕션 인프라 계획

프로덕션 접근에는 도메인, HTTPS, 신뢰할 수 있는 리버스 프록시를 사용하세요. PostgreSQL을 백업하고 비공개 .env, 수집 시크릿, 계정 자격 증명, 개인 키, 비공개로 제공된 모든 지리 데이터베이스를 보호하세요. 프록시, 백업, 서비스, 구성 및 업그레이드 세부 정보는 배포 가이드를 참조하세요.

필요한 경우에만 AI 기능 활성화

핵심 웹사이트 분석과 크롤러 식별에는 모델 API 키가 필요하지 않습니다. AI 분석은 기본적으로 비활성화되어 있습니다. 활성화하면 사용자가 모델 연결과 웹사이트 자료를 선택하므로, 선택한 모델 제공업체로 어떤 데이터가 전송되는지 검토하세요.

GEO Weight를 신중하게 해석

GEO Weight는 최근 30일의 완전한 달력 날짜를 기준으로 검증된 AI 콘텐츠 접근 데이터를 사용하는 베타 기능입니다. 이를 범용 순위 점수로 취급하지 말고, 문서에 설명된 공식, 증거, 적용 범위 및 제한 사항을 사용하세요.

개발 환경 설정

기여자는 Node.js 22.23.4, pnpm 12.3.4, PostgreSQL, 독립적인 개발 데이터베이스, 비공개 환경 구성이 필요합니다. 다음 순서로 포트 3302에서 웹 애플리케이션을 준비하고 시작할 수 있습니다.

pnpm install --frozen-lockfile
pnpm build:db
pnpm db:migrate
pnpm liekan:migrate
pnpm liekan:queue-bootstrap
pnpm build:openapi
pnpm build:packages
pnpm build:tracker
pnpm build:recorder
pnpm liekan:build-worker
pnpm dev --port 3302

CONTRIBUTING.md에 설명된 대로 별도의 터미널에서 로그 워커와 분석 워커를 시작하세요. 개발 워커와 웹 애플리케이션은 동일한 비공개 환경 구성을 사용해야 합니다.

제품 페이지는 src/components/liekan에, 데이터 계약은 src/lib/liekan/contracts에, 업스트림 쿼리 및 권한 어댑터는 src/lib/liekan/upstream에 있습니다. 스키마 변경은 프로젝트의 증분 마이그레이션을 통해 추가하고, 이미 적용된 마이그레이션은 수정하지 마세요.

결론

GEOInflow는 크롤러 증거, 콘텐츠 인벤토리, 방문자 분석, AI 추천 및 전환을 결합하는 자체 호스팅 방식을 제공합니다. Docker 배포로 시작하고, 관리자 계정을 보호하며, 브라우저 및 로그 소스를 연결하고, 신뢰할 수 있는 인벤토리를 가져오세요. 가장 유용한 결론은 일관된 필터, 정상적인 워커, 완전한 소스 커버리지, 관찰된 접근과 추가 증거가 필요한 주장을 명확히 구분하는 데서 나옵니다.