프로덕션 환경에서만 예외가 발생하는 문제를 해결하고 있습니다. 이러한 환경에 액세스 할 수 없으며이 예외의 의미를 알 수 없습니다. 오류 설명을 보면 원인을 이해할 수 없습니다.
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
누군가 이런 종류의 문제에 접근하는 방법에 대해 조언 해 주시겠습니까?
프로덕션 환경에서만 예외가 발생하는 문제를 해결하고 있습니다. 이러한 환경에 액세스 할 수 없으며이 예외의 의미를 알 수 없습니다. 오류 설명을 보면 원인을 이해할 수 없습니다.
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
누군가 이런 종류의 문제에 접근하는 방법에 대해 조언 해 주시겠습니까?
답변:
일반적으로 디버그 로깅이 향상됩니다. 알고 싶은 것을 파악하고 코드에 추가 한 다음 로그에 추가하여 문제를 해결하십시오. 당시의 환경에 대한 자세한 내용을 캡처하면 요청, 시간 등
특히, 클라이언트 에서이 패턴에 도달하고 최적화 된 것을 발견하면 TCP 레이어 트래픽을 캡처하는 일반적인 패턴을 찾습니다.
교환 된 SSL 메시지를 보면 프로토콜에서 무엇이 잘못되었는지 또는 최소한 요청의 공통 특성이 무엇인지 알 수 있습니다. 일단 당신이 그것을 디버깅에 더 가까이 있어야합니다.
가이드로서, 이것은 세 가지 중 하나에서 비롯된 것 같습니다.
구성 가능한 최대 로그 수준으로 로깅 전략을 사용하는 것이 좋습니다. log4j ( http://logging.apache.org/log4j/ , http://en.wikipedia.org/wiki/Log4j ) 와 같은 유틸리티 가 작업을 수행 할 수 있습니다.
구성 가능한 로그 수준 (또는 자세한 정보)은 소프트웨어를 다시 배포하지 않고도 오류의 원인을 찾을 수 있도록 중요합니다.
이러한 전략으로 오류를 찾기에 충분하지 않으면 통신중인 응용 프로그램에서 생성 된 로그를 생성 / 읽는 방법을 찾으십시오.
전자 우편을 통해 오류에 대한 추가 정보를 자동으로 가져 오는 메커니즘을 구현할 수도 있습니다.
보다 일반적으로 로깅 및 추적을 포함하는 더 큰 주제 인 계측에 대한 기사를 읽을 수 있습니다.