자료 정보
| 쉬운 설치 | 쉬운 설치 지원 |
|---|---|
| 간단한 소개 | 사이트의 방문 흐름을 분석할 수 있는 Rhymix용 통계 모듈 |
| 설치 경로 | ./modules/site_insight |
| PHP 지원 범위 | PHP 8.2 이상 |
| 자료 구분 | 공개 자료 GPL v2 |
| AI 사용 여부 | 이 자료 전체를 AI가 생성했습니다. 사람이 검토한 부분은 매우 적습니다. |
버전 내역
- 1.7.0 2026.10.14 182.4KB 16회 다운로드 + modules/site_insight/queries/deleteExpiredCacheEntries.xml 파일 수동 삭제 필요. 통계 테이블 7개의 번호를 독립 AUTO_INCREMENT 방식으로 전환 , 작업 상태 컬럼과 필요한 인덱스 추가 , 설정·작업 정의 갱신
- 1.3.0 2026.09.12 168.7KB 99회 다운로드 UI 변경
- 1.2.9 2026.09.06 146.5KB 100회 다운로드 1.2.9 에서는 공유호스팅 환경의 통계 집계와 자동 삭제 처리 로직을 개선 했습니다.
- 1.2.8 2026.09.05 146.0KB 72회 다운로드 사이트 접속 통계 모듈
상세 설명
SITE INSIGHT
Site Insight는 개인정보 수집을 최소화하면서 사이트의 방문 흐름을 분석할 수 있는 Rhymix용 접속 통계 모듈로 개발 됐습니다.
페이지뷰, 세션, 익명 방문자, 콘텐츠, 유입 경로, 기기 및 봇 활동을 확인할 수 있으며, 운영 목적에 따라 개인정보 보호 모드를 선택할 수 있습니다. 회원번호·아이디·닉네임과 원본 쿠키는 저장하지 않으며, 정확한 IP 저장도 기본적으로 비활성화되어 있습니다.
수집과 통계 집계를 분리하고 제한된 배치 처리와 캐시를 사용하여 공유호스팅 환경에서도 서버 부하를 줄이도록 설계했습니다. 자동 보존 정리, 기준일 이전 데이터 삭제, 반응형 관리자 화면과 상세한 사용법도 제공합니다.
SITE INSIGHT는 IP 정밀 추적에 비중을 두는 마케팅·커뮤니티 관리형 통계 툴과는 방향이 다릅니다.
자체 발급한 무작위 쿠키 토큰으로 방문자를 구분하며, IP 주소가 바뀌어도 동일 방문자로 인식합니다. 단, IP와 기기 정보를 결합한 별도의 브라우저 지문(fingerprint)은 생성하지 않습니다. 외부 봇들이 사이트를 얼마나 자주 긁어 가는지 등을 확인 할 수 있는 홈페이지 관리와 SEO 모니터링 관점에 방향성을 두고 있습니다. 내/외부 접근 콘텐츠 모니터링은 기본적인 상용 통계 툴들과 비슷한 성격을 반영 했습니다.
특히, 공유호스팅 환경 제한에 물리적 부하와 DB 관리 부담을 줄이는 구조로 기획 됐습니다.
주요 기능
Site Insight는 쓰기 경로와 읽기 경로를 분리하고, 고트래픽과 저트래픽 집계·통계 계산으로, 제한된 공유 호스팅에서도 수백만건 이상의 로그에 대해서도 요청 처리에 지연이 발생하지 않도록 구조적인 설계가 반영 됐습니다.
- 오늘 / 최근 7일 / 30일 / 90일 방문 통계
- 페이지뷰, 세션, 익명 방문자 및 재방문자 분석
- 인기 콘텐츠와 모듈별 조회 통계
- 직접 방문, 내부 이동, 검색 및 외부 사이트 유입 분석
- 기기, 로그인 상태 및 봇 유형별 분류
- 봇 비율과 자동화 요청 추정 건수 표시
- 조건별 원본 로그 조회 및 검색
- 페이지뷰 전용·세션 분석·재방문자 분석 모드
- cron·작업 큐와 공유호스팅용 제한 실행 방식 지원
- 데이터별 자동 보존 기간 설정
- 기준일 이전 원본·검색어·집계 데이터 일괄 삭제
- 데스크톱·태블릿·휴대폰용 반응형 관리자 화면
- 관리자 화면에서 확인할 수 있는 상세 사용법 제공
개인정보 및 보안
- 회원번호, 아이디, 이름, 닉네임 및 이메일을 저장하지 않음
- 원본 쿠키와 PHP·Rhymix 세션 ID를 저장하지 않음
- 세션과 익명 방문자는 무작위 토큰을 HMAC으로 변환하여 처리
- 전체 URL, 전체 리퍼러 URL 및 원본 User-Agent를 저장하지 않음
- 정확한 IP 주소 저장은 기본적으로 비활성화
- 정확한 IP를 저장할 경우 별도의 1~90일 보존 기간 적용
- 내부 검색어 수집은 기본적으로 비활성화
- 관리자 기능은 최고 관리자 권한과 CSRF 검증을 적용
- 관리자 작업 완료 후 이동 주소를 모듈 내부 화면으로 제한
- 설정 변경과 위험 작업 결과를 감사 기록으로 보관
서버 부하 최소화 설계
일반 방문 요청에서는 복잡한 통계 계산을 실행하지 않고 원본 이벤트 한 건만 기록합니다. 시간대·일별·콘텐츠·유입 통계와 보존 정리는 별도의 제한된 작업에서 처리합니다.
- 프런트엔드 요청 중 <COUNT>, <SUM>, <GROUP BY> 집계 미실행
- 이벤트를 제한된 크기의 배치로 순차 처리
- 체크포인트와 데이터베이스 락으로 중복 집계 방지
- 작업 중단 시 heartbeat와 만료된 락을 이용해 안전하게 재개
- Rhymix 작업 큐와 cron 방식 지원
- cron을 사용할 수 없는 환경을 위한 방문 트래픽 기반 제한 실행 지원
- 요청 메모리, 비파일형 Rhymix 캐시 및 전용 DB 캐시 사용
- 관리자 통계 화면에서 원본 로그 전체를 실시간 재집계하지 않음
- 오래된 데이터도 제한된 배치로 나누어 점진적으로 정리
- 공유호스팅에서도 사용할 수 있도록 설계했지만, 방문량이 많거나 집계 지연을 최소화해야 하는 사이트에서는 Rhymix 작업 큐와 cron 사용을 권장합니다.
테스트 환경
- PHP 8.2 ~ 8.4
- Rhymix 2.1.28 ~ 2.1.36
위 환경을 기준으로 개발하고 테스트했습니다. 다른 PHP·Rhymix 버전의 모든 조합에서 동일하게 동작한다는 의미는 아닙니다.
설치 권장 환경
- PHP 8.4
- Rhymix 2.1.36 이상
- InnoDB를 사용하는 MySQL 또는 MariaDB 환경
- cron을 사용할 수 있는 서버
- 정기적인 데이터베이스 백업이 가능한 환경
- 공유호스팅에서는 방문 트래픽 기반 제한 실행을 사용할 수 있습니다.
- 트래픽이 많은 사이트는 cron 방식을 사용하고, 실제 적용 전에 별도의 시험 환경에서 집계 지연, 데이터베이스 용량 및 삭제 배치 동작을 확인하는 것을 권장합니다.
## 변경 내역
- 1.7.0 : 통계 테이블 7개의 번호를 독립 AUTO_INCREMENT 방식으로 전환
파일 삭제 필요 : modules/site_insight/queries/deleteExpiredCacheEntries.xml
- 1.3.0 : 디자인을 수정 했습니다.
- 1.2.9 : 공유호스팅 환경 모드에서 집계와 자동 삭제 처리 로직을 개선 했습니다.
|
|
|
|
|
|
|
|




사용자 피드백 6
능력자시네요~
잘 사용하겠습니다
좋네요 한눈에 쏘옥 볼수도 있고~ 잘 사용하겠습니다
기존 통계모듈은 지워야 하나요???
본문에 적혀 있는 것 처럼, modules/site_insight/queries/deleteExpiredCacheEntries.xml 파일 하나만 삭제하면 됩니다. 삭제하지 않는다고 문제되지는 않지만, 새로운 버번에서 사용되지 않는 찌꺼기 파일 입니다.
제 질문의 의도는 그게 아니라...
통계 모듈에서 공용 SRL을 이용하는데.(자유게시판 index님 게시글 내용보고 말씀드립니다)
index님이 개발하신 본 통계모듈에서도 . 공용 SRL이 쓰여
독립 AUTO_INCREMENT
를 도입한다고 하셨는데...
통계모듈이 기본으로 깔려있는데, 기본통계모듈과 index님의 통계모듈...둘다 사용하는건지 궁금해서요.
본 모듈을 사용하는데 ... 기본 통계모듈을 삭제안하고 계속 사용한다면 기본 통계모듈서 공용 SRL을 계속 이용할 것이고...
그러면 index님이 만드신 모듈의 독립 AUTO_INCREMENT 는 별 의미가 없는거 같아서요......
본 모듈이 통계모듈의 대체제가 아니라...
별도의 독립된 시스템이라면......
뭔 말인지는 이해하겠습니다
감사합니다
제가 질문을 잘못 이해 했네요.
기존 통계모듈이, '접속통계' /counter/ 모듈을 말씀하시는 거군요.
제가 공용 SRL에 대해 생각하지 못해, 사이트에 따라서는 심각한 실수일 수 있는 문제 였습니다.
접속통계 모듈과 이 모듈은 개별적으로 작동합니다.
접속통계 모듈도 자체 AUTO_INCREMENT와 날짜 키를 사용하고 있을 겁니다. 그래서 접속통계 모듈도 공용 SRL 호출은 없습니다.
모듈은 하나만 사용하던 함께 사용하던 상관 없습니다. 서버 자원에 따라 선택하시면 될 듯 싶습니다.
제 경우에는 둘다 사용하고 있고, 센디픽셀님의 플레이 애널리틱스도 함께 사용중 입니다.
사실, 제 지인들 요청으로 통계 모듈 하나 만들어 볼까 해서 만들었다가, 플레이 애널리틱스 공개 이후 모든 면에서 부족한 이 모듈을 실사용하는 분들이 없을거라 생각 했습니다. 그래서 문제 발견 당시 수정해놓고 업데이트 공유를 하지 않고 있었습니다.