Analytics 문제점 해결

improve this page | report issue

개요

MobileFirst Analytics를 사용할 때 발생할 수 있는 문제를 해결하는 데 도움을 주는 정보를 찾아보십시오.

Analytics Console에 데이터가 없음

다음 가능성을 확인해 보십시오.

  • 앱이 로그를 MobileFirst Analytics Server에 전달하는 MobileFirst Server를 가리키도록 설정되어 있는지 확인하십시오. mfpclient.plist(iOS), mfpclient.properties(Android) 또는 config.xml(Cordova) 파일에 다음 값이 설정되어 있는지 확인하십시오.
    protocol = http 또는 https
    host = MobileFirst Server의 IP 주소
    port = 분석 보고를 위해 server.xml 파일에 설정된 HTTP 포트
    wlServerContext = 기본값 "/mfp/"
  • MobileFirst Server가 MobileFirst Analytics Server를 가리키는지 확인하십시오.
    /analytics-service
    /analytics
  • send 메소드를 호출하고 있는지 확인하십시오.
    • iOS:
      • Objective-C: [[WLAnalytics sharedInstance] send];
      • Swift: WLAnalytics.sharedInstance().send()
      • Android: WLAnalytics.send();
      • Cordova: WL.Analytics.send();
      • Web: ibmmfpfanalytics.send();

충돌 개요 테이블에는 충돌 데이터가 있지만 충돌 요약 테이블에는 아무것도 없는 이유

앱이 다시 실행되고 나면 충돌 로그를 서버에 전송해야 합니다. 충돌 후 앱이 로그를 전송하는지 확인하십시오. 확실히 하기 위해, 앱 시작 시 로그를 전송하여 이전에 전송되지 않은 정보가 보고되게 하십시오.

서버 사용 플로우 그래프 또는 네트워크 요청 그래프에 데이터가 없는 이유

네트워크 디바이스 이벤트에 대한 분석을 수집하도록 앱을 구성하십시오.

ibmmfpfanalytics.logger.config({analyticsCapture: true});
  • Cordova를 사용하는 크로스 플랫폼 앱의 경우, 구성이 네이티브 앱과 동일하므로 iOS 또는 Android 안내서를 따르십시오.
  • iOS에서 네트워크 분석 데이터 캡처를 사용으로 설정하려면 애플리케이션 위임 application:didFinishLaunchingWithOptions 메소드에 다음 코드를 추가하십시오.
    Objective-C
    WLAnalytics *analytics = [WLAnalytics sharedInstance];
    [analytics addDeviceEventListener:NETWORK];
    Swift
    WLAnalytics.sharedInstance()
    WLAnalytics.sharedInstance().addDeviceEventListener(NETWORK)
  • Android에서 네트워크 분석 데이터 캡처를 사용으로 설정하려면 애플리케이션 서브클래스 onCreate 메소드에 다음 코드를 추가하십시오.
    Java
    WLAnalytics.init(this);
    WLAnalytics.addDeviceEventListener(DeviceEvent.NETWORK);

앱 세션에 대한 데이터가 없는 이유

라이프사이클 디바이스 이벤트 리스너를 사용하여 분석을 수집하도록 앱을 구성하십시오.

  • Cordova를 사용하는 크로스 플랫폼 앱의 경우, 구성이 네이티브 앱과 동일하므로 iOS 또는 Android 안내서를 따르십시오.
  • iOS에서 네트워크 분석 데이터 캡처를 사용으로 설정하려면 애플리케이션 위임 application:didFinishLaunchingWithOptions 메소드에 다음 코드를 추가하십시오.

    Objective-C
    WLAnalytics *analytics = [WLAnalytics sharedInstance];
    [analytics addDeviceEventListener:LIFECYCLE];
    Swift
    WLAnalytics.sharedInstance()
    WLAnalytics.sharedInstance().addDeviceEventListener(LIFECYCLE)
  • Android에서 네트워크 분석 데이터 캡처를 사용으로 설정하려면 애플리케이션 서브클래스 onCreate 메소드에 다음 코드를 추가하십시오.
    Java
    WLAnalytics.init(this);
    WLAnalytics.addDeviceEventListener(DeviceEvent.LIFECYCLE);

여러 사용자가 Analytics Console에 액세스하는 경우 콘솔이 응답하지 않음


Mobile Foundation Analytics가 8.5.5.6 이전의 WebSphere Liberty 버전에 배치되었으며 여러 사용자가 콘솔에 액세스하는 경우 콘솔이 멈추거나 추가 사용자 요청에 대해 응답을 중지합니다.

  • 이 상황은 WebSphere Liberty에서 요청을 서비스하기 위한 Executor 스레드가 부족하게 되어 발생합니다. 이는 교착 상황으로 이어집니다.
  • Liberty 코어 스레드의 기본 수는 하드웨어 스레드의 수입니다.
  • 이 문제를 해결하려면 Liberty executor 스레드 매개변수의 스레드 수를 기본값보다 큰 값으로 구성하십시오.
    Liberty의 server.xml에 다음 구성을 추가하십시오.
    <executor name="LargeThreadPool" id="default" coreThreads="80" maxThreads="80" keepAlive="60s" stealPolicy="STRICT" rejectedWorkPolicy="CALLER_RUNS" />
  • 이러한 튜닝 설정은 Websphere Liberty 8.5.5.6의 경우에는 일반적으로 필요하지 않습니다.

추가 참조

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on May 13, 2020