이벤트 추적: 프로시저 호출을 통해 상위에서 하위로 전파된 추적 IDs¶
- 변경 전:
연결된 Java 및 Scala 저장 프로시저 또는 UDFs에 의해 생성된 각 범위의
trace_id
는 고유합니다.Event 테이블의 RECORD 열에는
parent_span_id
필드가 없습니다.Native Apps 공급자와 컨슈머는 공유 이벤트에 대해 서로 다른
trace_id
값을 봅니다. 공급자는 해시된 버전을 봅니다.- 변경 후:
연결된 Java 및 Scala 저장 프로시저 또는 UDFs에 의해 생성된 범위의
trace_id
는 동일합니다. RECORD 열에는parent_span_id
특성이 있습니다.연결된 Java 및 Scala 저장 프로시저 또는 UDFs에 의해 생성된 범위는
parent_span_id
와span_id
사이에 상위-하위 관계를 갖습니다. Java 및 Scala 저장 프로시저는 길이에 상관없이 체인으로 다른 저장 프로시저를 호출할 수 있습니다. (UDFs는 SQL 문을 실행할 수 없으므로, UDF를 호출하면 체인이 종료됩니다. 그러나 추적 정보는 여전히 UDF의 범위에 전파됩니다.)사용자가 Java 또는 Scala 저장 프로시저 또는 UDF를 직접 호출한 경우(루트)
trace_id
는 임의의 ID가 되고parent_span_id
는 없습니다. 저장 프로시저에 대한 추적이 비활성화되고 다른 저장 프로시저 또는 UDF를 호출하는 경우 하위 범위의trace_id
는 임의의 ID가 되며parent_span_id
가 없습니다. 즉, 하위 항목에서 추적이 다시 시작됩니다.Native Apps 공급자와 컨슈머는 공유 Java 또는 Scala 저장 프로시저 또는 UDF 이벤트에 대해 동일한
trace_id
를 확인하므로 더 쉽게 디버깅할 수 있습니다.
참조: 1592