으로 애플리케이션을 구성한 경우 데이터가 나타날 때까지 몇 분간 기다리세요. 몇 분 동안 기다렸는데도 여전히 데이터가 표시되지 않는 경우, 다음의 문제 해결 팁을 시도해 보세요. 이러한 팁 중 일부는 브라우저 모델링이 JavaScript 스니펫을 APM-모니터 앱에 자동으로 삽입하도록 허용하거나 직접 배치 또는 NPM 패키지를 통해 JavaScript 스니펫을 삽입하여 앱을 구현하거나 배포하는지 여부에 따라 달라집니다.
해결책
권장사항: Diagnostics CLI가 다운로드되면, 터보, 목표 브라우저는 다음과 같은 버섯줄 옵션을 실행하여 확인합니다: /nrdiag -browser-url YOUR-WEBSITE-URL -suites browser. Diagnostics CLI에서 반환된 정보는 뉴렐릭 지원팀과 통신할 때 사용할 수 있습니다.
귀하의 브라우저 배포 에이전트가 에이전트가 있는 계정 모니터에 대해 배포했다면 APM 배포를 참조하세요. JavaScript 복사/붙여넣기 방법을 사용하여 브라우저 배포 에이전트를 구현한 경우 복사/붙여넣기 배포를 참조하세요. NPM을 통해 설치하는 경우 프로젝트 빌드와 번들러에 따라 달라지므로 자체적인 문제 해결이 필요합니다. 어떤 배포 방법이 있는지 확실하지 않으면 진단 도구에서 배포 방법이 반환됩니다.
스크립트 요소 중 하나가 누락된 경우 다음 단계에 따라 문제 해결을 계속하십시오. 스크립트 요소가 있고 몇 분 후에도 데이터가 나타나지 않으면 support.newrelic.com 에서 지원을 받으십시오.
웹페이지에 JavaScript 오류가 표시되거나 뉴렐릭 의 Errors 페이지 에 데이터가 표시되지 않는 경우, UI 앱에 활성화된 다른 JavaScript 오류 모니터링 프레임워크가 있는지 확인하세요. 일부 JavaScript 오류 모니터는 브라우저 모니터링 기능을 방해할 수 있습니다.
New Relic의 자동 계측 기능을 사용하는 경우 에이전트가 올바르게 구성되었는지 확인하십시오. 각 에이전트에는 자동 계측을 켜거나 끄기 위한 구성 파일 설정과 특정 지침이 있습니다.
APM 에이전트의 구성 파일을 수정한 경우 수정된 설정을 선택하도록 애플리케이션을 다시 시작해야 합니다.
Java 에이전트: 앱 서버의 "작업" 캐시를 플러시합니다. 이렇게 하면 앱 서버가 강제로 다시 컴파일됩니다.
.NET 에이전트: flush_dotnet_temp.cmd 명령을 사용하여 asp.net 캐시 디렉터리가 깨끗한지 확인하세요. 이렇게 하면 앱 서버가 페이지 로드 타이밍 계측을 사용하여 ASP를 다시 컴파일하게 됩니다.
이전 단계에서 설명한 대로 JavaScript가 페이지에 있는지 확인하십시오. JavaScript 스니펫 을 확인하십시오. 페이지에 없으면 수동 API 계측 확인 에 설명된 대로 수동 계측을 사용하십시오. 다음 단계로 진행하려면 먼저 Javascript가 페이지에 있어야 합니다.
애플리케이션이 주로 보안 로컬 네트워크 내에서 로드되는 경우 사용자가 브라우저 데이터를 보고하는 데 필요한 네트워크 엔드포인트에 연결할 수 있는지 확인하십시오. 여기에는 New Relic의 CDN과 비콘 이 포함됩니다.
JavaScript 복사/붙여넣기를 통한 배포
다음 문제 해결 단계는 New Relic의 브라우저 모니터링 에이전트가 HTML 복사/붙여넣기 방법 을 사용하여 배포되었을 때의 문제에 적용됩니다.
애플리케이션의 Browser settings 에서 브라우저 모니터링이 활성화되었는지 확인하세요.
메트릭을 캡처하고 New Relic으로 보내는 데 필요한 스크립트 요소에 대한 페이지 소스를 확인하십시오. 브라우저에서 페이지 소스를 보고 다음과 같이 시작 부분에서 스크립트 요소를 찾습니다.
<scripttype="text/javascript">
;window.NREUM||(NREUM={});NREUM.init={ ...
펼쳐보기 요소가 누락된 경우 해당 요소를 새 코드에 붙여넣고 구현하고 배포했는지 확인하세요. 아직 자바스크립트 스니펫을 붙여넣지 않았다면 브라우저 앱의 Settings 페이지 에서 다시 복사할 수 있습니다. 해당하는 경우 해당 페이지를 제공하는 애플리케이션을 다시 시작하세요.
여전히 스크립트가 표시되지 않으면 다음 단계에 따라 문제 해결을 계속하십시오.
Javascript 스니펫이 애플리케이션에서 제공하는 페이지에 나타나도록 하려면 코드를 추가하기 전에 캐시된 페이지 버전이 지워졌는지 확인하십시오.
CDN 캐시를 확인하십시오.
웹서버 캐시를 비우십시오.
자바스크립트를 가능한 한 head 상단에 가깝게 삽입하되 위치 구분 meta 태그(X-UA 호환 및 문자 집합) 뒤에 삽입합니다. 주석 외부에 있어야 합니다. 다음은 일반 형식의 예입니다.
<!DOCTYPEhtml>
<html>
<head>
<metatags>
{PLACE NEW RELIC SCRIPT TAG HERE}
<scriptandlinktags>
</head>
<body>
...
</body>
</html>
Javascript가 올바르게 배치된 경우 사용자에게 제공된 최종 HTML과 붙여넣은 원본 스니펫을 비교하여 완전하고 동일한지 확인하세요. 불완전하거나 수정된 스니펫은 올바르게 보고되지 않을 수 있습니다. 이는 적절한 방법을 사용하지 않고 렌더링된 원시 자바스크립트를 정제하거나 변경하려는 프레임워크에서 발생할 수 있습니다.
웹페이지에 JavaScript 오류가 표시되거나 뉴렐릭 의 JavaScript errors 페이지 에 데이터가 표시되지 않는 경우, UI 앱에 활성화된 다른 JavaScript 오류 모니터 프레임워크가 있는지 확인하세요. 일부 JavaScript 오류 모니터는 브라우저 모니터링 기능을 방해할 수 있습니다.
애플리케이션이 주로 보안된 로컬 네트워크 내에 로드되는 경우 사용자가 브라우저 데이터를 보고하기 위해 필요한 네트워크 엔드포인트에 접속할 수 있는지 확인하세요. 여기에는 뉴렐릭의 CDN과 비콘이 포함됩니다.
Razor Framework를 사용하는 .NET 앱에서 복사/붙여넣기 설치 방법 을 사용하는 경우 다음 오류가 발생할 수 있습니다.
Parser Error Message: "").pop().split("" is not valid at the start of a code block. Only identifiers, keywords, comments, "(" and "{" are valid.
error CS0103: The name 'nr' does not exist in the current context
이 오류는 브라우저 모니터링을 위한 JavaScript 스니펫의 @ 기호로 인해 발생합니다. @ 기호는 Razor에서 코드 블록의 시작을 나타냅니다. 문제를 일으키는 줄은 다음과 같습니다.