map.apps user interaction

Overview

map.apps usage

The map.apps user interactions can be captured via ingest and logstash pipelines, with the ingest pipeline being the preferred method.

The ingest pipeline ct-monitor-analytics is able to normalize and pseudonymize the user interactions before they are stored in Elasticsearch.

The Logstash pipeline ct-analytics is an alternative method which is now deprecated and will continue to be supported for backwards compatibility.

Procedure

  1. Configuring the logstash pipeline ct-analytics

  2. Uploading the analytics bundles to map.apps Manager

  3. Configuration of map.apps

Upload Analytics Bundles

To use the bundles of service.monitor, install them in map.apps.

  1. Login to the map.apps Manager as Admin user.

  2. Go to the Bundles tab.

  3. Click + Upload and select ct-monitor-analytics-js-[VERSION].jar.
    service.monitor’s Analytics bundles are now displayed in the list of installed bundles.

  4. Refresh the map.apps Manager to see the Analytics tab.

Configuration of map.apps

You can use service.monitor to collect and display usage data of a map.apps installation. Change or add the below properties in the map.apps application.properties file to integrate service.monitor in map.apps. Afterwards, restart the Servlet Container or reload the context.

The path of the map.apps data.directory.location is different than the one of service.monitor.
application.properties (map.apps)
#### service.monitor Integration
analytics.service.url=/monitor-analytics/resources/usage/log
analytics.message.src=map.apps
appservice.default.bundles=analytics_restservice

servicemonitor.base.url=/monitor
analytics.management.role=maAdmin
analytics.service.url

HTTP endpoint for collecting usage data by means of service.monitor webapp.

analytics.message.src

Name of the message’s source (for analyses purposes).

Property status: new
Default: map.apps

appservice.default.bundles

Bundles, that are loaded for each app.

If you add the analytics_restservice bundle to the property, all apps will send the collected data to the analytics.service.url by default. This happens even if the analytics_restservice bundle is not listed in the allowedBundles section of an app, simplifying the one-time activation of service.monitor for all apps.

When editing and saving an app via Live-Configuration in map.apps the bundles mentioned above will be added to the app.json file. This change remains even if bundles are removed from the appservice.defaultbundles list again.

This property applies only to apps provided via the map.apps app service and not to apps stored in the file system.

Property status: warning may already pre-exist
Default: analytics_restservice (since map.apps 4.16)

Default: system,templatelayout,analytics_restservice

servicemonitor.base.url

HTTP endpoint for embedding /monitor webapp as part of map.apps Management view.

Property status: new
Default: https://monitoring-host.example.com/monitor

analytics.management.role

Name of role that is required to view /monitor webapp in map.apps Manager

Property status: new
Default: maAdmin

If the map.apps is not running on the same as the service.monitor monitor-analytics-webapp, add the host to the allowedProxyUrls in the map.apps application.properties file.

== Enable logging by app To enable logging for an app, add one bundle with writer component (e.g. analytics_restservice) to the allowedBundles section in the app.json. To enable logging for all apps instead, see appservice.default.bundles.

app.json
{
  "load": {
    "allowedBundles": [
      ...
      "analytics_restservice"
    ]
  }
  ...
}