Fehlerbehebung für Analytics

improve this page | report issue

Übersicht

Hier finden Sie Informationen, die Ihnen bei der Lösung von Problemen helfen, die bei Verwendung von MobileFirst Analytics auftreten können.

Es sind keine Daten in der Analysekonsole vorhanden.

Prüfen Sie die folgenden Möglichkeiten:

  • Stellen Sie sicher, dass Ihre Apps so eingestellt sind, dass sie auf den MobileFirst Server zeigen, der die Protokolle an den MobileFirst Analytics Server weiterleitet. Stellen Sie sicher, dass die folgenden Werte in den Dateien mfpclient.plist (iOS), mfpclient.properties (Android) oder config.xml (Cordova) definiert sind.
    protocol = http or https
    host = IP-Adresse Ihres MobileFirst Server
    port = In der Datei server.xml festgelegter HTTP-Port für Analyseberichte
    wlServerContext = standardmäßig "/mfp/"
  • Stellen Sie sicher, dass Ihr MobileFirst Server auf den MobileFirst Analytics Server zeigt.
    /analytics-service
    /analytics
  • Vergewissern Sie sich, dass die Methode send aufgerufen wird.
    • iOS:
      • Objective-C: [[WLAnalytics sharedInstance] send];
      • Swift: WLAnalytics.sharedInstance().send()
      • Android: WLAnalytics.send();
      • Cordova: WL.Analytics.send();
      • Web: ibmmfpfanalytics.send();

Warum gibt es Absturzdaten in der Tabelle "Absturzübersicht", aber keine Daten in der Tabelle "Absturzzusammenfassung"?

Die Absturzprotokolle müssen an den Server gesendet werden, sobald die App erneut ausgeführt wird. Stellen Sie sicher, dass Ihre Apps nach einem Absturz Protokolle senden. Senden Sie die Protokolle zur Sicherheit beim App-Start, um sicherzustellen, dass alle zuvor nicht gesendeten Informationen gemeldet werden.

Warum enthält das Ablaufdiagramm zur Servernutzung oder das Diagramm der Netzanforderungen keine Daten?

Konfigurieren Sie Ihre Apps für die Erfasssung von Analysedaten bei Gerätenetzereignissen ("Network").

ibmmfpfanalytics.logger.config({analyticsCapture: true});
  • Folgen Sie für plattformübergreifende Apps, die Cordova verwenden, den Anweisungen für iOS oder Android, da die Konfiguration mit der für native Apps übereinstimmt.
  • Wenn Sie die Erfassung von Analysedaten unter iOS ermöglichen wollen, fügen Sie den folgenden Code zur Methode application:didFinishLaunchingWithOptions Ihres Anwendungsdelegaten hinzu.
    Objective-C
    WLAnalytics *analytics = [WLAnalytics sharedInstance];
    [analytics addDeviceEventListener:NETWORK];
    Swift
    WLAnalytics.sharedInstance()
    WLAnalytics.sharedInstance().addDeviceEventListener(NETWORK)
  • Wenn Sie die Erfassung von Analysedaten unter Android ermöglichen wollen, fügen Sie den folgenden Code zur Methode onCreate Ihrer Application-Unterklasse hinzu.
    Java
    WLAnalytics.init(this);
    WLAnalytics.addDeviceEventListener(DeviceEvent.NETWORK);

Warum sind keine Daten zu App-Sitzungen vorhanden?

Konfigurieren Sie Ihre Apps für die Erfasssung von Analysedaten mit dem Listener für Gerätelebenszyklusereignisse ("Lifecycle").

  • Folgen Sie für plattformübergreifende Apps, die Cordova verwenden, den Anweisungen für iOS oder Android, da die Konfiguration mit der für native Apps übereinstimmt.
  • Wenn Sie die Erfassung von Analysedaten unter iOS ermöglichen wollen, fügen Sie den folgenden Code zur Methode application:didFinishLaunchingWithOptions Ihres Anwendungsdelegaten hinzu.

    Objective-C
    WLAnalytics *analytics = [WLAnalytics sharedInstance];
    [analytics addDeviceEventListener:LIFECYCLE];
    Swift
    WLAnalytics.sharedInstance()
    WLAnalytics.sharedInstance().addDeviceEventListener(LIFECYCLE)
  • Wenn Sie die Erfassung von Analysedaten unter Android ermöglichen wollen, fügen Sie den folgenden Code zur Methode onCreate Ihrer Application-Unterklasse hinzu.
    Java
    WLAnalytics.init(this);
    WLAnalytics.addDeviceEventListener(DeviceEvent.LIFECYCLE);

Die Analytics Console reagiert nicht mehr, wenn mehrere Benutzer auf die Konsole zugreifen.


Wenn Mobile Foundation Analytics in Vorversionen von WebSphere Liberty Version 8.5.5.6 implementiert ist und mehrere Benutzer auf die Konsole zugreifen, wird die Konsole blockiert bzw. reagiert die Konsole nicht mehr auf Benutzeranforderungen.

  • Zu dieser Situation kommt es, weil WebSphere Liberty keine Executor-Threads mehr für die Reaktion auf Anforderungen zur Verfügung stehen. Das führt zu einer Sperrsituation.
  • Die Standardanzahl von Liberty-Kernthreads ist die Anzahl der Hardware-Threads.
  • Lösen Sie dieses Problem, indem Sie die Anzahl der Threads mit dem Parameter für Liberty-Executor-Threads auf einen über dem Standardwert liegenden Wert setzen.
    Fügen Sie die folgende Konfiguration zur Liberty-Datei server.xml hinzu:
    <executor name="LargeThreadPool" id="default" coreThreads="80" maxThreads="80" keepAlive="60s" stealPolicy="STRICT" rejectedWorkPolicy="CALLER_RUNS" />
  • In WebSphere Liberty 8.5.5.6 sind diese Optimierungseinstellungen in der Regel nicht erforderlich.

Zusätzliche Referenzinformationen

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