통사론
newrelic.addPageAction(string $name[, JSON object $attributes])
이름 및 선택적 속성과 함께 브라우저 PageAction 이벤트를 보고합니다.
요구 사항
Browser Pro 또는 Pro+SPA 에이전트(v593 이상)
npm을 사용하여 브라우저 에이전트를 설치하는 경우
BrowserAgent
클래스를 인스턴스화할 때generic_events
기능을 활성화해야 합니다.features
배열에 다음을 추가합니다.import { GenericEvents } from '@newrelic/browser-agent/features/generic_events';const options = {info: { ... },loader_config: { ... },init: { ... },features: [GenericEvents]}자세한 내용은 npm 브라우저 설치 설명서를 참조하세요.
설명
이 API 호출은 사용자 정의 이름 및 선택적 속성이 포함된 브라우저 PageAction
이벤트 를 여러 기본 속성 과 함께대시보드 로 보냅니다. 이는 구독 버튼을 클릭하거나 자습서에 액세스하는 것과 같이 브라우저 에이전트에서 자동으로 추적하지 않는 이벤트를 추적하는 데 유용합니다.
PageAction
이벤트는 브라우저당 30초 수집 주기당 최대 120개의 이벤트로 30초마다 전송됩니다.- 120개 이벤트 제한에 도달하면 해당 수확 주기에 대한 추가 이벤트가 캡처되지 않습니다.
매개변수
매개변수 | 설명 |
---|---|
끈 | 필수의. 작업의 이름 또는 범주입니다. 속성이나 값의 이름을 지정할 때 예약된 NRQL 단어 를 사용하지 마십시오. |
JSON 객체 | 선택 과목. 하나 이상의 키/값 쌍이 있는 JSON 객체. 예: 속성/값의 이름을 지정할 때 예약된 NRQL 단어 를 사용하지 마십시오. |
예
링크 클릭 기록(JavaScript)
이 예에서는 사용자가 Try Me 링크를 선택할 때마다 PageAction 이벤트를 기록합니다. 이벤트는 clickedTryMe
의 actionName
으로 기록됩니다.
<a href="/demo" id="try-me">Try Me!</a><script> document.getElementById('try-me').addEventListener('click', function (e) { newrelic.addPageAction('clickedTryMe'); });</script>
그런 다음 다음 NRQL 쿼리를 사용하여 시도 하기 버튼을 클릭한 횟수를 쿼리할 수 있습니다.
SELECT count(*) FROM PageAction WHERE actionName = 'clickedTryMe' SINCE 1 hour ago
링크 클릭 기록(jQuery)
이 예는 사용자가 클래스가 copy-text
인 요소를 클릭할 때 PageAction 이벤트를 보냅니다. actionName
은 copy-text-button
이고 값은 결과를 처리하는 success
및 error
라는 메서드에 해당하는 Result
이라는 다른 속성으로 보고됩니다.
$('.copy-text').click(function() { var clipboard = new Clipboard('.copy-text'); clipboard.on('success', function(event) { // Do stuff // Report data to New Relic if (typeof newrelic == 'object') { newrelic.addPageAction('copy-text-button', { result: 'success' }); } }); clipboard.on('error', function(event) { // Do stuff // Report data to New Relic if (typeof newrelic == 'object') { newrelic.addPageAction('copy-text-button', { result: 'error' }); } });});
그런 다음 쿼리 작성기에서 파이 차트를 만들어 지난 30일 동안 성공과 오류로 이어진 버튼 클릭 수를 분석할 수 있습니다.
SELECT count(*) AS 'Clicks' FROM PageAction WHERE actionName = 'copy-text-button' FACET result SINCE 30 days ago
또는 쿼리를 만들어 지난 30일 동안 가장 많은 복사 버튼 클릭이 발생한 페이지를 확인할 수 있습니다.
SELECT count(*) AS 'Clicks' FROM PageAction WHERE actionName = 'copy-text-button' FACET currentUrl SINCE 30 days ago
캡처 양식 입력
이 예는 Signup 이라는 양식에서 사용자 입력(이메일 주소)을 캡처합니다. 이벤트는 userSignup
의 actionName
으로 기록됩니다.
<form action="/signup" id="myform"> <input id="email" name="email" /> <input type="submit" value="Signup" /></form><script type="text/javascript"> document.getElementById('myform').addEventListener('submit', function (e) { var email = e.target.elements['email'].value; newrelic.addPageAction('userSignup', { email: email }); });</script>
그러면 다음 NRQL 쿼리로 수집한 이메일을 볼 수 있습니다.
SELECT uniques(email) FROM PageAction WHERE actionName = 'userSignup' SINCE 1 hour ago