In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.
표준 분산 추적(헤드 기반 샘플링)을 시도하거나 무한 추적(테일 기반 샘플링)을 설정하려는 경우 표준 추적 설정부터 시작해야 합니다. 우리는 당신을 통해 얻을 것입니다 헤드 기반 샘플링을 진행하기 위한 에이전트 설치. 그런 다음 옵션이지만 권장되는 무한 추적을 설정할 수 있습니다.
팁
Go 에이전트는 다른 New Relic 에이전트의 자동 계측과 달리 Go 서비스를 수동으로 계측해야 합니다.즉, Go 에이전트를 사용하고 분산 추적을 활성화하려면 코드에 몇 줄을 추가해야 합니다.
표준 분산 추적을 사용하려면 에이전트 설치
아직 서비스에 대한 APM 에이전트를 설치하지 않았거나 추가 서비스를 계측하려는 경우 표준 분산 추적 을 설정하는 가장 좋은 방법입니다.
이 APM 에이전트로 계측된 일부 서비스가 이미 있고 이를 분산 추적에 포함하려면 각 서비스에 대해 분산 추적을 수동으로 활성화해야 합니다.이전 Go 에이전트에 대한 옵션을 참조하세요.
Go 에이전트 및 분산 추적의 모든 설치에는 Go 에이전트 구성 설정 에 나열된 설정을 사용하여 수동 계측이 필요합니다.그러나 설정을 최적화하기 위해 몇 가지 추가 구성을 수행해야 할 수도 있습니다.다음은 트랜잭션 및 HTTP 요청을 계측하기 위한 몇 가지 지침입니다.
Go의 http.ServeMux 를 사용 중이고 New Relic의 분산 추적을 활성화하려면 Go 애플리케이션이 New Relic의 WrapHandle 및 WrapHandleFunc 래퍼로 계측되어야 합니다. 이러한 래퍼는 자동으로 올바른 분산 추적 헤더를 추가하는 요청 및 응답 작성기로 트랜잭션을 시작하고 종료합니다. 헤더 전파 작동 방식에 대한 자세한 내용은 분산 추적 작동 방식 을 참조하세요.
// Distributed tracing headers are not added to the outgoing request.
// Use newrelic.NewRoundTripper or newrelicc.StartExternalSegment instead.
defer newrelic.ExternalSegment{
StartTime: txn.StartSegmentNow(),
URL: url,
}.End()
return http.Get(url)
}
분산 추적 페이로드에는 New Relic이 여러 서비스에서 발생하는 트랜잭션을 완전한 트랜잭션 추적으로 결합할 수 있도록 하는 정보가 포함되어 있습니다. New Relic이 모니터링하는 서비스가 서로에게 추적 컨텍스트를 보내지 않으면 불완전한 추적 세부 정보가 생성됩니다.
아래 API 호출을 사용하여 분산 추적을 구현하는 방법에 대한 일반적인 지침은 먼저 분산 추적 API 사용 을 참조하세요.