• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

이 한글 문서는 사용자의 편의를 위해 기계 번역되었습니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

악기 바둑 부문

New Relic for Go를 사용하면 Go 애플리케이션에서 트랜잭션 의 특정 세그먼트를 모니터링하여 특정 기능 또는 코드 블록에 대한 자세한 정보를 얻을 수 있습니다.

기능 및 코드 블록의 시간 측정

세그먼트 는 애플리케이션에서 트랜잭션 의 특정 부분입니다. 세그먼트를 계측하여 외부 호출, 데이터 저장소 호출, 대기열에 메시지 추가, 백그라운드 작업과 같은 기능 및 코드 블록에 소요되는 시간을 측정할 수 있습니다.

예: 배송 정보와 신용 카드 정보를 모두 처리하는 결제 프로세스와 연결된 거래가 있습니다. 애플리케이션을 계측하여 해당 트랜잭션을 배송을 위한 세그먼트와 지불을 위한 세그먼트의 두 부분으로 나눌 수 있습니다.

코드 블록 세그먼트

트랜잭션을 계측하면 해당 트랜잭션 에서 하나 이상의 세그먼트를 계측할 준비가 된 것입니다.

임의의 코드 블록을 세그먼트로 계측하려면 다음 패턴을 사용하고 트랜잭션에 대해 설정된 변수 이름으로 txn 을 포함합니다.

segment := newrelic.Segment{}
segment.Name = "mySegmentName"
segment.StartTime = txn.StartSegmentNow()
// ... code you want to time here ...
segment.End()

StartSegment 편리한 도우미입니다. 세그먼트를 만들고 시작합니다.

segment := txn.StartSegment("mySegmentName")
// ... code you want to time here ...
segment.End()

기능 세그먼트

함수를 세그먼트로 계측하는 것은 본질적으로 임의의 코드 블록을 세그먼트로 계측하는 것과 동일합니다. 주요 차이점은 함수에 불연속적인 끝이 있기 때문에 Go의 defer 문 을 사용할 수 있다는 것입니다.

함수를 세그먼트로 계측하려면 함수 시작 부분에 다음 코드를 추가하고 트랜잭션에 대해 설정된 변수 이름으로 txn 을 포함합니다.

defer txn.StartSegment("mySegmentName").End()

네스트 세그먼트

세그먼트는 중첩될 수 있습니다. 종료되는 세그먼트는 가장 최근에 시작된 세그먼트여야 합니다.

다음은 다른 세그먼트 내에서 시작하고 끝나는 세그먼트의 예입니다.

s1 := txn.StartSegment("outerSegment")
s2 := txn.StartSegment("innerSegment")
// s2 must end before s1
s2.End()
s1.End()

값이 0인 세그먼트는 안전하게 종료될 수 있습니다. 따라서 다음 코드는 조건문이 실패하더라도 안전합니다.

var s newrelic.Segment
if recordSegment {
s.StartTime = txn.StartSegmentNow()
}
// ... code you wish to time here ...
s.End()

데이터 저장소 세그먼트

Go 애플리케이션 데이터 저장소 호출을 계측할 수 있습니다. 데이터 저장소 세그먼트는 New Relic의 트랜잭션 페이지 에 있는 APM 트랜잭션 분석 테이블 및 데이터베이스 탭에 나타납니다.

MySQL, PostgreSQL 또는 SQLite 데이터베이스 드라이버를 사용하는 경우 Datastore 세그먼트를 추가하는 가장 쉬운 방법은 사전 구축된 통합 패키지를 사용하는 것입니다. 그렇지 않으면 각 데이터베이스 호출에 대해 Datastore 세그먼트를 수동으로 만들 수 있습니다.

외부 세그먼트

웹 서비스, 클라우드의 리소스 및 기타 네트워크 호출과 같은 외부 서비스에 대한 Go 애플리케이션 호출을 계측할 수 있습니다. 외부 세그먼트는 New Relic의트랜잭션 분석 테이블 및 외부 서비스 페이지 .

외부 세그먼트를 계측하는 두 가지 방법이 있습니다.

메시지 생산자 세그먼트

RabbitMQ 및 Kafka와 같은 대기열 시스템에 메시지를 추가하는 Go 애플리케이션 호출을 계측할 수 있습니다. 메시지 생성자 세그먼트는 New Relic의 APM 트랜잭션 분석 에 나타납니다.

메시지 생성자 세그먼트를 계측하는 방법은 한 가지뿐입니다.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.