The Analytics Receiver is an optional service that can be set up to receive event logs from mobile applications and forward them to Analytics in a phased manner using an in-memory event queue. Analytics Receiver maintains an in-memory event queue to store the logs before sending them to MobileFirst Analytics.
The default setup and configuration for mobile Analytics is that the MobileFirst Server receives all mobile client event logs and forwards them to the MobileFirst Analytics. When there are a large number of devices, high usage of the mobile client applications, and substantial analytics data logged and sent from client applications the performance of MobileFirst Server could be impacted. Enabling the Analytics Receiver will take away the burden of analytics events processing from the MobileFirst Server, thereby allowing MobileFirst Server resources to be fully utilized for runtime functions.
The Analytics Receiver can be set up and configured anytime. Update the Mobile client applications with the latest Mobile Foundation client SDKs. There are no changes required to the application code. Update the MobileFirst Server JNDI properties with the Analytics Receiver configurations so that the Analytics Receiver endpoint is available to client applications for sending analytics events.
Analytics Receiver configuration
The analytics receiver WAR file is included with the MobileFirst Server installation. For more information, see the distribution structure of the MobileFirst Server.
- For information about how to install the MobileFirst Analytics Receiver Server, see the MobileFirst Analytics Receiver Server installation guide.
For more information about how to configure the IBM MobileFirst Analytics Receiver, see the Configuration Guide.
As a quick configuration check after installing Analytics Receiver, make sure that the following JNDI properties are pointing to MobileFirst Analytics.
Property Description Default Value receiver/receiver.analytics.url Required. The URL that is exposed by the MobileFirst Analytics Server that receives incoming analytics data. For example, http://hostname:port/analytics-service/rest. None receiver/receiver.analytics.username The user name that is used if the data entry point is protected with basic authentication. None receiver/receiver.analytics.password The password that is used if the data entry point is protected with basic authentication. None receiver/receiver.analytics.event.qsize Optional. Size of analytic event queue size. It should be added with caution by providing ample JVM heap size. Default queue size 10000. None receiver/receiver.authorization.server.url Required. The URL of the OAuth authorization server that is used by analytics receiver service. If the property is not set properly, analytic logs will not be able to sent to the analytics receiver service. None receiver/receiver.authorization.client.id Required. The identifier of the confidential client that handles OAuth authorization for the analytics receiver service. None receiver/receiver.authorization.client.secret Required. The secret of the confidential client that handles OAuth authorization for the analytics receiver service. None
To enable receiver to be used as loguploader make sure the following JNDI properties are set in the MobileFirst Server. These JNDI properties should point to MobileFirst Analytics Receiver Server.
Property Description Default Value mfp/mfp.analytics.receiver.url Required. The URL that is exposed by the MobileFirst Analytics Receiver Server that receives incoming analytics data. For example, http://hostname:port/analytics-receiver/rest. None
MobileFirst Admin Service
The following table shows the properties that can be set in the MobileFirst Admin Service. These properties are required to configure confidential client for Analytics Receiver service.
|mfpadmin/mfp.receiver.authorization.client.id||Required. The identifier of the confidential client that handles OAuth authorization for the analytics receiver service. Mandatory only if the in-app feedback feature is enabled.||None|
|mfpadmin/mfp.receiver.authorization.client.secret||Required. The secret of the confidential client that handles OAuth authorization for the analytics receiver service. Mandatory only if the in-app feedback feature is enabled.||None|
- Make sure that the Analytics setup is not disturbed in the MobileFirst Server since server logs are still transmitted directly from MobileFirst Server to MobileFirst Analytics Server .
For information on troubleshooting MobileFirst Analytics Receiver, see Analytics Receiver Troubleshooting.▲