SNR#3937 원격 주소를 확인할 수 없을 때 로그 기록 중 오류가 발생하는 문제 해결
버전: 4.0.2609.0
평문 HTTP로 운용 중인 웹 서버에 클라이언트가 HTTPS로 접근하는 등 요청 도중 연결이 끊겨 원격 주소를 확인할 수 없게 되면, 접속 로그나 오류 로그를 기록하는 과정에서 오류(NullPointerException)가 발생할 수 있었습니다.
평문 HTTP 포트로 TLS 접근(HTTPS)이 들어오면 서버는 이를 깨진 HTTP 요청으로 파싱하고, 클라이언트는 평문 응답을 받은 직후 연결을 끊습니다. 이때 로그를 기록하는 시점에는 이미 연결이 끊겨 원격 주소를 알 수 없는 상태가 되는데, 접속·오류 로그 기록 경로가 이 상태를 방어하지 못해 오류가 발생했습니다.
원격 주소를 확인할 수 없는 것은 네트워크 경계에서 언제든 발생할 수 있는 정상적인 상황이므로, 이를 예외로 처리하지 않고 안전하게 기록하도록 변경했습니다. 원격 주소를 알 수 없는 요청은 접속 로그의 클라이언트 주소 필드가 -로 남고, 오류 로그에서는 클라이언트 주소 표기가 생략됩니다. 원격 주소가 정상적으로 확인되는 기존 요청의 로그 형식과 내용, 그리고 요청 처리·접근 제어 동작은 변경되지 않습니다.