스택 전체에서 충돌을 제거하고 속도를 높임으로써 모든 모바일 앱 릴리스에서 더 나은 성능을 구축할 수 있습니다. 다음은 New Relic으로 모바일 모니터링을 최대한 활용하기 위한 몇 가지 모범 사례입니다.
1. 데이터 수집 시작
Start collecting data in production.
앱 스토어의 다음 릴리스를 위해 모바일 모니터링 SDK를 앱에 추가하면 즉각적인 가치를 확인할 수 있습니다. 단순히 New Relic의 기능을 테스트하는 경우라도 iOS 또는 Android 에이전트를 프로덕션 릴리스에 설치하는 것이 좋습니다. 이렇게 하면 모든 모바일 모니터링 기능과 최종 사용자의 경험을 실제로 이해하는 데 충분한 양의 데이터를 얻을 수 있습니다.
iOS 앱의 개발 릴리스에 대해 하나의 앱 및 관련 앱 토큰을 사용하고, 해당 iOS 앱의 프로덕션 릴리스에 대해 다른 앱 및 관련 앱 토큰을 사용하고, Android 앱의 개발 및 프로덕션 릴리스에 대해 또 다른 앱 토큰 쌍을 사용합니다. 쿼리 빌더를 사용하여 4개의 앱 토큰에서 데이터를 비교할 수 있습니다.
다음으로 모바일 에이전트를 설치 및 구성합니다.
iOS 또는 Android용 New Relic SDK 최신 버전을 다운로드하여 모바일 앱에 추가하세요. ( iOS 및 Android 용 전체 단계)
필요에 따라 설치를 구성합니다. 예를 들어:
iOS 또는 Android 용 전체 네트워크 분석 기능을 사용하려면 기능 플래그를 활성화하여 MobileRequest 이벤트를 캡처하세요.
프로덕션 빌드에 대한 dSYM 업로드를 자동화합니다.
놀라움을 피하려면 모바일 에이전트를 시작하는 표준 패턴을 따르십시오. 또한 다른 SDK를 시작하기 전에 에이전트를 시작하십시오. 자세한 내용은 Android 설치 및 구성 과 iOS 설치 및 구성 에 대한 설명서를 참조하십시오.
애플리케이션의 새 릴리스를 배포합니다.
2. 데이터 탐색
Immediately be able to explore your data.
뉴렐릭이 데이터 보고를 시작하자마자 시간을 내어 모바일 앱에 대한 풍부한 정보를 탐색해 보세요. 시작하려면 one.newrelic.com 으로 이동하여 Mobile 선택하세요.
그것을하는 방법
충돌의 원인을 찾아 해결할 수 있습니다. 그런 다음 충돌을 방지할 수 있도록 충돌 이면의 추세를 파악합니다.
지리적 위치, 이동통신사, ASN 소유자(Wi-Fi 제공업체), 장치, 연결 유형 등의 사용량 분포를 확인하십시오.
3. 예방 조치를 취하십시오
Use alert notifications to help uncover the causes behind crashes and errors.
프로덕션 환경에서 모바일 모니터링 기능을 실행하고 주요 기능 중 일부를 탐색했다면 New Relic을 사용하여 모바일 애플리케이션의 중요한 문제를 발견할 수 있습니다. 특히 충돌 및 오류에 중점을 둡니다.
지표 기반 시작점으로 사용하여 문제에 대한 높은 수준의 가시성을 확보하세요.
그런 다음 새로운 서비스나 기능이 추가되면 New Relic의 보다 표적화된 이벤트 기반(NRQL) 경고를 사용하여 가장 중요한 문제가 신속하게 처리되도록 하세요.
이러한 경고를 사용하여 충돌이 많은 사용자에게 영향을 미치는지 여부를 확인하세요. 그렇다면 관련 담당자(예: 모바일 앱 팀의 대기 중인 구성원과 관련 백엔드 서비스 소유자 모두)에게 알림이 전송됩니다.
팀에서 충돌 비율(세션당 충돌) 및 모바일 앱 충돌의 영향을 받는 사용자 비율의 변화에 대응하는 방법을 알고 있는지 확인하십시오.
그것을하는 방법
지표 기반 알림 및 모바일 모니터링 UI를 사용하세요.
모바일 팀의 주요 구성원이 새로운 충돌에 대한 이메일 수신에 동의했는지 확인하십시오. 이 이메일은 모바일 앱의 UI 페이지에서 충돌 유형으로 이동합니다.
팀의 주요 구성원이 Slack 또는 선택한 다른 알림 알림 채널에서 볼 수 있는 충돌률 임계값 에 대한 알림을 만듭니다.
경고 알림에는 임계값을 초과한 차트를 검사할 수 있는 UI에 대한 링크가 포함됩니다. 거기에서 링크를 클릭하면 관련 모바일 모니터링 페이지로 이동하여 추가 세부 정보를 얻을 수 있습니다.
메트릭 기반의 흐름을 이벤트 기반 알림 및 모바일 앱 및 시스템별 와 결합합니다.
가장 최근에 출시된 프로덕션 버전의 충돌에 초점을 맞춘 NRQL 경고를 만듭니다.
최신 앱 버전에서 충돌의 영향을 받는 사용자의 비율에 초점을 맞춘 추가 NRQL 경고를 생성합니다(사용자 기반에 대한 전반적인 영향을 확인하기 위해).
4. 충돌에 대해 자세히 알아보기
Take your crash reporting to the next level.
이제 재현하기 어려운 충돌을 다음과 같이 해결해야 할 때입니다.
애플리케이션에 추가 계측 적용.
충돌 이벤트 추적, NRQL 쿼리 및 대시보드를 활용하여 데이터를 시각화합니다.
그것을하는 방법
충돌은 모바일 애플리케이션을 대규모로 실행하는 데 있어서 피할 수 없는 부분입니다. 우리는 가장 큰 영향을 미치는 충돌을 이해하는 데 도움이 되는 도구를 제공합니다. Crash analysis UI 사용하여 가장 자주 발생하는 충돌, 충돌이 없는 사용자의 비율, 방금 경험한 특정 사용자에게 충돌이 발생한 충돌의 80%와 관련된 파일 및 방법 등을 확인하세요.
충돌 분석으로 충격이 큰 충돌을 추적합니다.
사용자 정의 속성 을 추가하여 가치가 가장 높은 고객을 분류한 다음 이를 사용하여 가장 가치 있는 잠재고객에 따라 충돌을 분류하세요.
이동 경로 및 사용자 지정 이벤트를 추가하여 모든 충돌 발생(지난 90일 동안)까지 이어지는 자세한 이벤트 추적을 생성합니다. 그런 다음 모바일 모니터링 UI에서 이 충돌 이벤트 추적을 확인합니다.
크래시를 더 잘 재현하고 디버깅하려면 이동 경로 및 사용자 정의 속성을 사용하십시오. 예를 들어 recordBreadrumb API를 사용하여 다음과 같은 비정상 종료를 디버그하는 데 도움이 될 수 있는 상태의 중간 세션 변경을 추적합니다.
연결 유형 변경
방향 변경
앱 코드의 주요 지점에서 CPU 및 메모리 상태
기존 이벤트에 사용자 정의 속성을 추가하여 모바일 앱에 대해 더 정확한 질문을 할 수 있습니다. 다음과 같은 차원을 추가합니다.
사용자 ID: 특정 사용자 문제에 대응하고 가장 영향을 받는 고객 및 세그먼트를 더 잘 이해하는 데 사용합니다.
상점 ID: 오래된 장치, 잘못된 Wi-Fi 등의 문제를 해결하는 데 사용합니다.
사용자 세그먼트: 가장 큰 영향을 받는 고객 및 세그먼트를 더 잘 이해하는 데 사용합니다. 예를 들어 로그인한 것과 로그인하지 않은 것입니다.
세션 종료 시 장바구니에 담긴 돈
앱 진입의 출처 또는 귀속
모바일 앱 전반에 걸쳐 맞춤형 속성 이름을 표준화하고 웹사이트에 맞춰( 사용하는 경우) 최종 사용자 채널 전반에서 성능을 비교하고 대조할 수 있습니다. 모바일 에이전트는 충돌된 세션과 충돌하지 않은 세션의 마지막 복합체 결합을 추적하여 사용자가 앱을 종료하기 전에(의도적으로 또는 충돌로 인해) 무엇을 보았는지에 대한 가시성을 제공합니다.
5. KPI에 집중
Bring your key performance indicators to life.
앱의 비즈니스 크리티컬 측면에 대한 사용자 활동을 포함하여 가장 중요한 신호에 집중하기 위해 사용자 지정 상호 작용 및 이벤트를 만듭니다. 이러한 강력한 API를 사용하여 거의 모든 것에 맞춤형 계측을 추가할 수 있습니다. 다음은 몇 가지 사용 사례입니다.
그것을하는 방법
사용자 지정 이벤트를 사용하여 기능 사용을 추적합니다. 예를 들어:
사용자 지정 이벤트를 사용하여 앱과 웹사이트 간의 사용자 흐름을 추적합니다.
사용자 지정 이벤트 또는 모바일 이동 경로를 사용하여 주요 사용자 흐름(로그인, 장바구니 등)의 성능을 최적화합니다.
맞춤형 이벤트를 사용하여 디지털 고객에게 보다 빠르고 상황에 맞는 지원 경험을 제공하십시오.
recordCustomEvent API를 사용합니다. 그런 다음 다음을 사용하여 다양한 기능의 사용을 비교합니다.
SELECTcount(*)FROM MyNewMobileEventType FACET name
사용자 정의 이벤트를 사용하여 페이지 로드 시간 측정:
앱 시작 타이머를 만들어 사용자가 탭하여 앱을 시작하고 앱 코드에서 첫 번째 화면을 사용할 수 있는 지점 사이의 경과 시간을 측정합니다. 다음과 같은 것을 사용하여 New Relic에 타이머 값을 기록합니다.