gRPC / Protobuf
개요
Cheolsu Proxy는 gRPC 트래픽을 자동으로 감지하고, Protobuf 메시지를 디코딩하여 사람이 읽을 수 있는 형태로 표시합니다. .proto 정의 파일 없이도 Wire Type 기반으로 메시지를 자동 디코딩합니다.
자동 감지
다음 조건으로 gRPC 트래픽을 자동 감지합니다:
- Content-Type이
application/grpc또는application/grpc+proto로 시작 - Content-Type 서브타입 추출 (예:
proto,json)
분석 정보
메타데이터
gRPC 상태 코드
Protobuf 프레임 파싱
gRPC 바디는 Length-Prefixed Message 형식으로 구성됩니다:
각 프레임의 압축 여부와 메시지 데이터를 분리하여 표시합니다. Wire Type 기반으로 필드를 자동 디코딩하여 .proto 파일 없이도 메시지 구조를 확인할 수 있습니다.
활용 사례
마이크로서비스 디버깅
gRPC 기반 마이크로서비스 간 통신을 모니터링하고, 서비스/메서드별로 요청을 필터링하여 특정 RPC 호출을 추적할 수 있습니다.
에러 진단
gRPC 상태 코드와 상태 메시지를 확인하여 요청 실패 원인을 파악합니다. DEADLINE_EXCEEDED, UNAVAILABLE 등의 상태를 추적하여 네트워크 이슈나 서비스 장애를 진단할 수 있습니다.
페이로드 검사
Protobuf 메시지의 필드 구조를 확인하여 요청/응답 데이터가 예상대로 직렬화되었는지 검증합니다.
사용 방법
Desktop
트래픽 로그에서 gRPC 요청을 선택하면 트랜잭션 상세 보기에서 서비스/메서드 정보, 상태 코드, 디코딩된 Protobuf 메시지를 확인할 수 있습니다.
