• 로그인지금 시작하세요

사용자의 편의를 위해 제공되는 기계 번역입니다.

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

문제 신고

CodeStream을 사용한 성능 모니터링

New Relic CodeStream을 사용하면 개발자가 IDE에 관찰 가능성을 가져오고 일상의 일부로 만들어 자신이 담당하는 코드가 프로덕션 환경에서 어떻게 수행되고 있는지 확인할 수 있습니다.

CodeStream과 New Relic 연결

IDE에서 관찰 가능성에 액세스하려면 New Relic 사용자 키를 통해 CodeStream을 New Relic에 연결해야 합니다( New Relic 사용자 키 대해 자세히 알아보기).

사용자 키로 CodeStream을 New Relic에 연결하여 IDE에 관찰 가능성을 가져옵니다.

사용자 키가 있으면 CodeStream의 관찰 가능성 섹션에서 새 유물에 연결을 클릭한 다음 사용자 키를 붙여넣고 새 유물에 연결을 클릭합니다. New Relic 사용자 키를 사용하여 CodeStream에 가입했다면 이미 연결된 것입니다.

CodeStream에서 관찰 기능을 사용하려면 New Relic 사용자 유형의 핵심 사용자 또는 전체 플랫폼 사용자 가 있어야 합니다.

리포지토리를 New Relic 엔터티와 연결

CodeStream에서 사용할 수 있는 원격 분석 데이터는 상황에 따라 다릅니다. 즉, IDE에서 연 코드와 모두 관련이 있습니다. 이를 위해 CodeStream은 사용자가 연 리포지토리에 의해 구축된 New Relic의 엔터티를 알아야 하며 이러한 연결을 만드는 방법에는 여러 가지가 있습니다.

연결이 없는 경우 CodeStream에서 연결을 만들라는 메시지를 표시하는 경우가 있습니다. 예를 들어 CodeStream의 New Relic에서 오류를 보려고 하고 오류가 속한 엔터티가 리포지토리와 연결되어 있지 않은 경우 CodeStream은 적절한 리포지토리를 식별하도록 요청합니다. CodeStream 창의 관찰 가능성 섹션에는 IDE에서 현재 선택한 리포지토리에 대한 연결을 만들라는 메시지도 표시됩니다.

어떤 경우에는 리포지토리가 여러 엔터티와 연결되어야 할 수도 있습니다. 예를 들어 다른 환경(예: 프로덕션, 스테이징)을 나타내는 다른 엔터티가 있을 수 있으며 모두 동일한 저장소와 연결될 수 있습니다. 다른 서비스 추가 를 클릭하여 현재 저장소를 추가 엔터티와 연결합니다.

메시지가 표시되면 즉시 이러한 연결을 만드는 것이 시작하는 좋은 방법이지만 다음 방법 중 하나를 사용하는 것이 수동 작업을 덜 필요로 하고 잘못 구성된 원격 URL과 같은 최종 사용자 실수의 가능성을 제거하기 때문에 권장됩니다.

다음 방법 중 하나로 SSH 또는 HTTPS 형식으로 원격 URL을 지정할 수 있습니다.

  • git@github.com:newrelic/beta-docs-site.git
  • https://github.com/newrelic/beta-docs-site.git

주의

다른 프로토콜을 사용하는 경우 동일한 GitHub 리포지토리를 두 번 이상 추가할 수 있습니다. UI는 이에 대해 경고하지만 그렇게 하는 것을 막지는 않습니다.

예를 들어, https://github.com/tuna/repogit@github.com:tuna/repo 은 프로토콜이 다른 동일한 저장소입니다.

IDE의 관찰 가능성

CodeStream의 관찰 가능성 섹션 은 개발자가 IDE에서 현재 선택된 리포지토리와 연결된 각 서비스에 대한 골든 메트릭 및 오류를 볼 수 있도록 하여 코드가 수행되는 방식에 대한 보기를 제공합니다. 각 서비스는 트리에 자체 노드를 가지고 있으며 확장하면 서비스의 골든 메트릭, 사용자에게 할당된 오류 및 5개의 가장 최근 오류가 표시됩니다. 또한 서비스에 의해 호출되거나 호출되는 서비스를 자세히 살펴보고 각 서비스에 대한 골든 메트릭을 볼 수 있습니다.

현재 선택된 리포지토리가 New Relic의 서비스와 연결되어 있지 않으면 연결하거나 프로젝트를 구성하라는 메시지가 표시됩니다.

트리에서 서비스 이름 위로 마우스를 가져갈 때 브로드캐스트 아이콘을 클릭하여 해당 서비스의 편집기에서 코드 수준 메트릭 을 확인하거나 지구본을 클릭하여 New Relic에서 서비스 요약 페이지를 엽니다. 오류를 클릭하여 스택 추적을 포함한 세부 정보를 보고 해결에 대한 공동 작업을 시작 합니다.

프로젝트가 New Relic에 의해 모니터링되지 않는 경우 관찰 가능성 섹션 의 제목에 있는 톱니바퀴 아이콘을 클릭한 다음 Instrument my App 을 선택하여 모니터링을 설정할 수 있습니다. CodeStream에는 Node JS, Java 및 .NET 프로젝트에 사용할 수 있는 설정 마법사가 있습니다.

코드 수준 측정항목

코드 수준 메트릭은 코드가 메서드 수준에서 수행되는 방식에 대한 자세한 통찰력을 제공합니다. New Relic .NET, Python 및 Ruby APM 에이전트에 의해 자동으로 계측되는 각 방법에 대해 CodeLens라고 하는 각 방법 위에 삽입된 텍스트 줄을 통해 표시되는 황금 신호를 볼 수 있습니다. 지난 30분 동안의 응답 시간, 처리량 및 오류율이 표시됩니다.

코드 수준 메트릭은 Python/Ruby 프로젝트에서 계측된 각 메서드 위에 표시됩니다.

요구 사항

  • 분산 추적 을 활성화해야 합니다.
  • Java: Java 에이전트 버전 7.10 이상이 필요합니다. 코드 수준 메트릭은 Java 에이전트 구성에서 활성화 되어야 합니다. VS Code를 사용하는 경우 Red Hat 확장에 의한 Java용 언어 지원 도 설치되어 있어야 합니다.
  • .NET: .NET 에이전트 버전 9.9.0 이상이 필요합니다. 코드 수준 메트릭은 .NET 에이전트 구성에서 활성화 되어야 합니다. Visual Studio를 사용하는 경우 Tools > Options > Text Editor > All Languages > CodeLens 로 이동하고 "Enable CodeLens" 및 "Show CodeStream Code-Level Metrics"가 모두 선택되어 있는지 확인하여 CodeLense가 활성화되어 있는지 확인합니다. VS Code를 사용하는 경우 C# 확장이 설치되어 있어야 합니다.
  • Python: Python 에이전트 버전 7.10.0.175 이상이 필요합니다. 코드 수준 측정항목은 지원되는 Python 프레임워크 로 구현된 프로젝트에만 사용할 수 있습니다. VS Code를 사용하는 경우 언어 서버가 활성화된 상태로 Python 확장도 설치되어 있어야 합니다.
  • Ruby: Ruby 에이전트 버전 8.8.0 이상이 필요합니다. 코드 수준 메트릭은 수동 추적이 있는 Rails 애플리케이션 및 Ruby 메서드에만 사용할 수 있습니다(자세한 내용은 여기 참조 ). 버전 8.10.0 이상의 경우 코드 수준 측정항목이 기본적으로 활성화되어 있습니다. 버전 8.8.0 및 8.9.0 의 경우 Ruby 에이전트 구성에서 코드 수준 측정항목을 수동으로 활성화 해야 합니다. VS Code를 사용하는 경우 언어 서버가 활성화된 상태로 Ruby 또는 Ruby Solargraph 확장이 설치되어 있어야 합니다.
  • Go: Go 에이전트 버전 3.19.2 필요 또는 더 높게. Go 에이전트 구성에서 코드 수준 측정항목도 활성화 해야 합니다. VS Code를 사용하는 경우 언어 서버가 활성화된 상태로 Go for VS Code 확장이 설치되어 있어야 합니다.

각 골든 메트릭을 시각화하는 차트를 보려면 CodeLens를 클릭하십시오. 리포지토리가 New Relic에서 모니터링하는 여러 엔터티와 연결되어 있는 경우 해당 엔터티 간에 쉽게 전환할 수 있습니다. 이렇게 하면 편집기에 표시되는 코드 수준 메트릭의 기반이 되는 엔터티가 변경됩니다.

차트 상단의 엔티티 이름을 클릭하면 New Relic에 대한 보다 자세한 서비스 수준 데이터를 볼 수 있습니다.

관찰 가능성 섹션을 통해 코드 수준 메트릭을 보려는 엔터티를 변경할 수도 있습니다. 서비스 이름 위에 마우스를 놓고 브로드캐스트 아이콘을 클릭하면 해당 서비스에 대한 코드 수준 메트릭을 볼 수 있습니다.

CodeLens 옵션

IDE 설정의 CodeStream 섹션을 통해 CodeLense가 표시되는 방식을 변경할 수 있습니다.

  • VS Code에서 설정으로 이동하여 "codestream"을 검색합니다.
  • JetBrains에서 Preferences/Settings > Tools > CodeStream 으로 이동합니다.
  • Visual Studio에서 Tools > Options > CodeStream 으로 이동합니다.

기본 CodeLens 형식은 다음과 같습니다.

avg duration: ${averageDuration} | throughput: ${throughput} | error rate: ${errorsPerMinute} - since ${since}

CodeStream: Show Golden Signals In Editor 설정을 선택 취소하여 CodeLense를 완전히 끌 수도 있습니다.

오류 조사

CodeStream은 IDE에서 연 코드에서 발생한 최근 오류를 보여주지만 New Relic의 오류 수신함 을 통해 보다 포괄적인 APM 오류 목록을 볼 수 있습니다. 스택 추적으로 특정 오류의 근본 원인을 조사할 준비가 되면 IDE에서 열기를 클릭하여 IDE의 코드로 직접 이동합니다.

해결을 위해 협력

일반적인 협업 세션에는 IDE의 코드에 대해 의견을 제시하는 개발자, 오류 받은 편지함에서 오류를 할당하는 DevOps 엔지니어, Slack을 따라가는 개발 관리자가 포함될 수 있습니다. CodeStream은 이미 사용 중인 도구에서 사람들을 만나 오류 검색과 오류 해결 사이의 시간을 단축합니다.

이 짧은 YouTube 비디오(약 2분 27초)를 보고 실제 작동을 확인하십시오.

관찰 가능성 섹션 에서 오류를 클릭했든 New Relic의 오류 받은 편지함 에서 IDE에서 열기를 클릭했든 CodeStream은 스택 추적을 포함한 모든 오류 세부 정보를 표시합니다.

스택 추적을 탐색하여 문제를 조사하십시오.

스택 추적에서 아무 프레임이나 클릭하면 IDE에서 해당 파일과 줄 번호로 바로 이동합니다. 저장소의 일부가 아닌 코드를 나타내는 스택 추적 프레임(예: 외부 라이브러리)은 클릭할 수 없습니다.

스택 추적을 탐색할 때 문제의 원인으로 보이는 코드를 발견하면 해당 코드를 선택하고 설명 아이콘을 클릭하여 토론을 시작하세요. CodeStream은 해당 코드를 터치한 가장 최근 사람을 자동으로 언급하므로 적절한 사람을 토론에 쉽게 참여시킬 수 있습니다.

편집기에서 코드를 선택하여 주석을 추가하세요.

  • 문제를 식별하면 CodeStream의 기존 팀원이나 리포지토리의 Git 커밋 기록을 기반으로 제안된 사람에게 오류를 할당할 수 있습니다.
  • 해결되지 않음에서 해결됨 또는 무시됨으로 오류 상태를 업데이트할 수 있습니다.
  • ... 추가 작업 메뉴를 사용하여 Slack 또는 Microsoft Teams에서 토론을 공유하세요.

빌드 SHA 또는 릴리스 태그를 오류와 연결

CodeStream에서 오류를 보고 오류와 연결된 빌드 SHA 또는 릴리스 태그인 git 참조가 없는 경우 이 경고가 표시될 수 있습니다. CodeStream은 git 참조를 사용하여 특정 스택 추적 오류를 오류를 트리거한 환경에서 실행 중인 코드 버전과 일치시킵니다.

오류를 조사하기 위해 git 참조를 구성할 필요는 없지만 오류를 일으킨 코드 버전을 보고 있지 않을 수 있다는 점을 염두에 두십시오.

git reference not configured 경고 메시지는 다음과 같습니다. Build SHA 또는 릴리스 태그를 오류와 연결하면 CodeStream이 올바른 버전의 코드를 보고 있는지 확인하는 데 도움이 될 수 있습니다.

환경 변수를 사용하여 New Relic APM 에이전트가 프로젝트의 각 빌드와 관련된 커밋 샤를 알 수 있도록 할 수 있습니다. 실행 중인 소프트웨어 버전과 연결된 릴리스 태그 를 사용할 수도 있습니다.

New Relic APM의 경우 커밋 샤 및/또는 릴리스 태그( tags.committags.releaseTag )가 TransactionTransactionError 이벤트의 속성으로 추가됩니다. APM 환경 변수를 사용하여 이러한 속성을 설정할 수 있습니다.

빌드 파이프라인의 일부로 이러한 변수 중 하나 또는 둘 다를 설정하는 것이 좋습니다.

  • NEW_RELIC_METADATA_COMMIT - 커밋 샤. 전체를 포함하거나 처음 7자만 포함할 수 있습니다(예: 734713b ).
  • NEW_RELIC_METADATA_RELEASE_TAG - 릴리스 태그(예: v0.1.209 또는 release-209 ). 사람이 읽을 수 있다는 장점이 있습니다.

이러한 변수를 설정하는 방법에 대한 자세한 내용은 각 언어에 대한 특정 구성 세부정보입니다.

git 참조를 구성한 경우 CodeStream은 로컬에 있는 코드 버전에 오류와 관련된 참조가 포함되어 있지 않은지 알려줍니다. 이 경우 오류를 보다 효과적으로 조사하고 해결할 수 있도록 해당 참조가 포함된 코드 버전을 확인해야 할 수 있습니다.

git reference not found 경고 메시지는 다음과 같습니다. 코드 버전이 오류를 트리거한 환경과 일치하지 않습니다. 오류를 더 잘 조사하려면 다음 참조를 가져오세요.

CodeStream은 오류에 연결된 스택 추적이 없는 경우에도 알려줍니다. 이것은 스택 추적이 New Relic에서 만료되었을 때 오래된 오류에서 발생합니다.

Copyright © 2022 New Relic Inc.

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