요청 로그
요청 로그는 게이트웨이를 통과한 HTTP 요청을 기록합니다. 요청이 fn-knock에 도착했는지, 어느 Host나 경로와 일치했는지, 최종적으로 어디에 전달되었는지 확인할 때 사용합니다. 로그인 로그가 아니며 게이트웨이에 들어오지 않은 원시 포트 연결도 기록하지 않습니다.
시스템 설정 → 로그에서 게이트웨이 요청 로그를 활성화하고 보관 기간을 설정합니다. 최소 보관 기간은 1일입니다. Go 게이트웨이는 실행 디렉터리의 logs 폴더에 날짜별 JSON 구조화 파일을 기록하며, 관리자 페이지의 요청 로그에서는 날짜별로 읽고 검색해 세부 정보를 표시합니다. 로그는 저장 공간과 쓰기 부하를 늘리므로 문제 해결이 끝난 뒤에는 실제 필요에 맞게 보관합니다.
로컬 루프백 127.0.0.1 요청 기록은 기본적으로 꺼져 있습니다. 따라서 로컬 상태 확인, 같은 호스트의 리버스 프록시 및 127.0.0.1을 통해 게이트웨이에 들어오는 다른 요청은 일반적으로 목록에 표시되지 않습니다. 로컬 호출 경로를 추적할 때만 활성화합니다. 이 옵션은 로그 기록 범위만 바꾸며 루프백 출발지의 접근 권한은 변경하지 않습니다.
로그 쓰기에는 비동기 큐를 사용합니다. 설정 페이지에 누적 누락 수가 표시되면 큐가 혼잡해 일부 요청이 디스크에 기록되지 않았다는 뜻입니다. 이 수치는 게이트웨이가 거부한 요청 수가 아닙니다. 게이트웨이의 리버스 프록시 스로틀링으로 연결이 바로 끊긴 요청도 접근 로그에 남지 않습니다.
레코드 읽기
| 필드 | 용도 |
|---|---|
| 클라이언트 IP / 연결 출발지 IP | 실제 방문자와 게이트웨이의 TCP 연결 상대를 비교해 CDN, 리버스 프록시 및 Docker 경로를 점검 |
| 메서드, Host, 경로 | 요청이 어느 서비스와 일치했는지 판단 |
| 라우트 유형, 업스트림 대상 | Host/경로 규칙이 올바른 대상을 선택했는지 판단 |
| 인증 상태 | 세션, 허용 목록, 로컬 예외, 고급 인증 임시 자격 증명 또는 인증되지 않음 중 무엇이 결과에 영향을 주었는지 판단 |
| 서브도메인 규칙 그룹 ID / 임시 자격 증명 상태 | 고급 인증 규칙과 일치했을 때 구체적인 규칙 그룹과 현재 요청이 요청별 허용·발급·갱신·재사용 중 어느 상태인지 확인 |
| 상태 코드, 처리 시간 | 게이트웨이 거부, 업스트림 오류 및 느린 응답 구분 |
요청 로그에는 접근 경로, 쿼리, 출발지 IP, User-Agent, 인증 결과 및 업스트림 주소가 포함될 수 있으므로 민감한 운영 데이터로 취급합니다. 문제 해결용 로그 일부를 공유하기 전에 토큰, 쿼리 매개변수, 내부 주소 및 개인을 식별할 수 있는 정보를 삭제합니다.
권장 문제 해결 순서
- 외부 네트워크에서 재현 가능한 요청을 한 번 보냅니다.
- 해당 Host와 경로를 찾아 요청이 게이트웨이에 도착했는지 확인합니다.
- 클라이언트 IP를 대조해 프록시 주소를 방문자 주소로 잘못 인식하지 않았는지 확인합니다.
- 인증 상태와 접근 정책을 확인합니다.
- 그다음 업스트림 대상, 상태 코드 및 서비스 자체 로그를 확인합니다.
로그에 요청이 전혀 없다면 먼저 테스트 트래픽이 127.0.0.1에서 왔는지와 루프백 로그 옵션이 활성화되어 있었는지 확인합니다. 로컬 트래픽을 제외한 뒤에는 대개 DNS, CDN, 터널, 라우터 또는 포트 공개 구간에 문제가 있습니다. 매핑 규칙부터 수정하지 않습니다.
일부 요청만 누락되었다면 게이트웨이 스로틀링이 연결을 바로 끊었는지, 로그 설정 페이지에 큐 누락 경고가 표시되는지 확인합니다. 상태 코드가 업스트림이 아닌 게이트웨이에서 반환되었다면 인증, 접근 범위, WAF 및 매핑을 계속 점검합니다. 올바른 업스트림 대상(타깃)이 표시된다면 서비스 자체 로그를 확인합니다.
서브도메인 고급 인증을 활성화한 뒤 인증 결과가 서브도메인 규칙으로 허용이면 고급 인증으로 요청이 통과했다는 뜻입니다. 세부 정보의 규칙 그룹 ID로 적용된 설정을 찾을 수 있습니다. 자격 증명 상태가 요청별 허용이면 요청은 규칙과 일치했지만 지속형 자격 증명은 만들어지지 않았다는 뜻입니다. 첫 Cookie 기능 확인, Cookie를 저장하지 않는 클라이언트, WebSocket 업그레이드 또는 지속화 실패 시 흔히 표시됩니다. 발급됨은 이번 요청에서 지속형 자격 증명을 만들었고, 갱신됨은 유휴 유효 기간을 갱신했으며, 재사용됨은 기존 자격 증명을 계속 사용했다는 뜻입니다. 규칙 동작은 서브도메인 고급 인증을 참고합니다.
의심스러운 IP 처리
실제 공격 출발지로 확인되면 로그에서 일반 차단 목록 또는 IP 허용 목록 작업으로 이동할 수 있습니다. 작업하기 전에 공유 인터넷 출구나 앞단 프록시 주소가 아닌지 확인하고 시간, Host, 경로 등의 맥락을 보관합니다.
