The Analytics Connector Pack modules provide a framework and connectors to inject your analytics data into the Magnolia UI enabling authors and marketeers to make data-driven decisions.
The overall process to configure a dashboard is:
Connect to a data supplier, such as Adobe Analytics, Google Analytics, Matomo, a file, or another third party analytics data provider.
Configure the data available to your end users in the Analytics app.
Use the Analytics app to build a dashboard and add charts as Widgets.
If required, tweak your dashboard and charts using the generated YAML files.
The pack delivers out-of-the-box connectors, the Analytics app and extensive predefined samples to help you build your own charts and dashboards.
We recommend you build dashboards and charts using the app, but you can also manually create or alter them in the YAML configuration files.
Module structure
artifactID
Description
magnolia-analytics-parent
Parent reactor.
magnolia-analytics-amcharts
Provides a default implementation to connect to amCharts, which provides JavaScript-based interactive charts and maps programming libraries and tools.
magnolia-analytics-google-connector
Provides a default implementation to connect to Google UA.
Google UA property stopped processing data on July 1, 2023.
To continue measuring website performance, set up a Google Analytics (GA4) property.
magnolia-analytics-google4-connector
Provides a default implementation to connect to Google Analytics (GA4) using OAuth2.
magnolia-analytics-matomo-connector
Provides a default implementation to connect to Matomo.
magnolia-analytics-adobe-connector
Provides a default implementation to connect to Adobe Analytics.
magnolia-analytics
Provides the foundation and the API for the Analytics add-on.
magnolia-analytics-ui
Provides the Analytics app, the demo dashboard and predefined chart types that you can reuse.
magnolia-analytics-amcharts-samples
Provides sample
dashboards. If you don’t want to have the sample dashboards available, remove this submodule.
Installing with Maven
Bundled modules are automatically installed for you.
If the module is unbundled, add the following to your bundle including your project’s <dependencyManagement> section and your webapp’s <dependencies> section.
If the module is unbundled but the parent POM manages the version, add the following to your webapp’s <dependencies> section.
Should you need to specify the module version, do it using <version>.
Configuration
The magnolia-analytics-ui submodule provides the Analytics app configuration, the demo dashboard you see in the app, and several preconfigured charts.
Marketers or editors can use the Analytics app to create dashboards and charts using the UI.
When they do so, YAML configuration files are created and can be edited to change or refine the dashboards and charts.
The magnolia-analytics-amcharts-samples module provides additional sample dashboards.
You can edit the configuration of the app and dashboards as part of a light module (YAML).
Define the data supplier(s) for the charts to be displayed in the Analytics app dashboard. Marketers or editors can select the data suppliers you configure when they create dashboards and widgets in the Analytics app.
You later refer to the data supplier in the chart definitiondataSupplier property.
Data suppliers are defined under:
/<module name>/dataSuppliers/<dataSupplierRegistryFile.yaml>
External data suppliers
Adobe Analytics
Google Analytics 4
Matomo
Abstract external
You must have an appropriate account and credentials to connect to Adobe Analytics.
To find your Organization ID, see Accessing Adobe Client Credentials above.
technicalAccountId
required
Your Technical Account ID.
To find your Technical Account ID, see Accessing Adobe Client Credentials above.
imsHost
required
Adobe IMS (Identity Management System) host URL typically refers to the base domain used for authentication and identity-related services within Adobe’s ecosystem.
This is the endpoint where OAuth requests are directed.
In Analytics module 1.2, JWT authentication was used.
In 1.3 and later, JWT credentials are no longer supported and must be replaced with OAuth Server-to-Server credentials.
For information on how to migrate an existing project, see How to migrate Adobe credentials from JWT to OAuth Server-to-Server.
For information on how to configure a new project, see Accessing Adobe Client Credentials above.
parameters
required
The parameters used in the REST call to configure the JSON results retrieved. These parameters vary depending on the data supplier used.
Each parameter is a key-value pair.
All the parameters shown in the example are required:
gFilterType - Global filter type (for example you want to see data in dateRange format or something else).
startDate, endDate - Default date range configuration for data in the report. You can later change this in the chart displayed in the Analytics app using the date filters.
metricId - Specifies which kind of report data you want to see. For more information, see Metrics overview.
dimension - Type of breakdown filter, such as variables/daterangeday or variables/daterangehour.
You must have an appropriate account and credentials to connect to GA4.
For more information, see Google Analytics 4.
Replace by the path to the json file with your private key (this can be found in the bottom-left corner when searching for key.json and then highlighting it)
2
Replace with your propertyId than can be found in your GA4 account dashboard.
You must have an appropriate account and credentials to connect to Matomo.
You must use the info.magnolia.analytics.matomo.datasource.MatomoDataSupplierWithTransformer class in Analytics module 1.2 (instead of the Analytics module 1.1 info.magnolia.analytics.matomo.datasource.MatomoDataSupplier class) to automatically transform data into readable data of amCharts.
The parameters used in the REST call to configure the JSON results retrieved. These parameters vary depending on the data supplier used.
Each parameter is a key-value pair.
For Matomo, at least the format: json key-value is required to retrieve JSON format data.
See the Matomo API documentation (https://developer.matomo.org/api-reference/reporting-api#API) to find valid parameters for Matomo. For example, the Matomo example above retrieves JSON format data using the link:https://developer.matomo.org/api-reference reporting-api#API[Matomo API.get^].
filteringSubSetExpression
optional
Use to configure segment filtering.
segment
optional
Expression to filter a segment.
For example: pageUrl=@%s
defaultAPIMethodForTotalReport
required
Use to configure the API to get a total report. Specific to the Metric number chart.
API suggestion: API.get
If you want to integrate your own external analytics tool, implement the info.magnolia.analytics.datasource.AbstractExternalDataSupplier class, which provides credential parameters. This class extends AbstractDataSupplier so data filtering in the UI is also supported.
The Google Analytics data supplier extends this generic class with Google Analytics account credentials.
Google Universal Analytics (UA) stopped collecting data in July 2023. You must use Google Analytics 4 instead.
Internal data suppliers
Abstract
File-based
Periscope
Content tags
info.magnolia.analytics.datasource.AbstractDataSupplier enables you to filter chart data using filter fields in the Magnolia UI, for example, the filters used to select a start and end date for your data.
This supplier is suitable for internal data that need filters for display purposes.
Depending on your requirements, you can configure a file-based data supplier using the class info.magnolia.analytics.datasource.FileBasedDataSupplier to fetch data from a JSON file.
In our demo dashboard, we show an example of search data taken from the Magnolia Find Bar data using a custom data supplier with a limit on the number of results returned:
The class info.magnolia.analytics.datasource.PeriscopeDataSupplier provided in Analytics module 1.1 has been deprecated in favor of info.magnolia.analytics.datasource.FrequentlySearchAppDataSupplier due to changes in the JSON data.
From 1.2, we recommend using the Analytics app to create charts.
Marketers and editors can create charts visually in the Analytics app.
When they do so, a yaml file is generated automatically with the
dashboard and chart definitions. For example:
Magnolia provides integration with amCharts (info.magnolia.analytics.amcharts.data.AmChartDefinition) but you can also write your own simple charts (info.magnolia.analytics.common.SimpleChartDefinition).
Magnolia also provides info.magnolia.analytics.amcharts.data.DynamicSeriesGenerator to dynamically display values from multiple series.
Predefined amCharts chart types
The predefined amCharts chart types provided in Analytics module 1.1 are not compatible with 1.2. In Analytics module 1.2, you must use predefined chart definitions instead.
We recommend you use the 1.2 Analytics app to re-create your 1.1 dashboards and widgets from scratch. However, we provide an example of how to migrate in How to migrate Analytics module 1.1 dashboards to 1.2 if you prefer to reconfigure your charts and dashboards.
The magnolia-analytics-ui submodule provides several predefined
amCharts charts under /analytics-ui/chartTypes:
simple-line.yaml
trend-lines.yaml
line-different-colors-ups-downs.yaml
simple-bar.yaml
floating-bar.yaml
3d-bar.yaml
simple-column.yaml
triangle-column.yaml
3d-column.yaml
pie.yaml
3d-pie.yaml
donut-with-radial-gradient.yaml
3d-donut.yaml
candlestick.yaml
xy-chart-fills-axis.yaml
ohlc.yaml
timeline.yaml
You can see details of the amCharts chart types in their documentation.
You can reuse the predefined chart types when defining your chart
definition using
YAML
includes and decorating the series provided.
Predefined chart definitions
The magnolia-analytics-ui submodule provides several predefined chart definitions under /analytics-ui/charts.
simple-line.yaml
trend-lines.yaml
simple-bar.yaml
floating-bar.yaml
3d-bar.yaml
simple-column.yaml
triangle-column.yaml
3d-column.yaml
pie.yaml
3d-pie.yaml
donut-with-radial-gradient.yaml
3d-donut.yaml
candlestick.yaml
xy-chart-fills-axis.yaml
ohlc.yaml
metric-number.yaml
word-cloud.yaml
The analytics-amcharts-samples submodule provides several predefined chart definitions under /analytics-amcharts-samples/charts.
timeline.yaml
pictorial.yaml
pyramid.yaml
funnel.yaml
Simple chart definition
This example shows the configuration for a simple chart that displays an icon plus the number of unique visitors to a page used to display results in the Magnolia A/B/n Testing app.
Adobe Analytics simple column chart definition example
chartDefinitions:chart-1:!include:/analytics-ui/charts/column-and-bar/simple-column.yamldataSupplier:adobeDataSupplierchartType:# Decorate series for mapping json dataseries:-name:seriesdataFields:-name:categoryXjsonPath:$.rows[*].value-name:valueYjsonPath:$.rows[*].data[0]Copy
Google Analytics 4 simple column chart definition example
chartDefinitions:line2GA:!include:/analytics-ui/charts/column-and-bar/simple-column.yamllabel:SessionbydatefromGA4chartType:# This is example how to decorate chart type to decorate data field mappingseries:-name:seriesdataFields:-name:categoryXjsonPath:$.rows.[*].dimensionValues.[*].value# Decorate jsonPath for categoryX to map data from GA4-name:valueYjsonPath:$.rows.[*].metricValuess.[*].value# Decorate jsonPath for valueY to map data from GA4dataSupplier:googleSupplierCopy
chart2:!include:/analytics-ui/charts/pie-and-donut-group/pie.yamldataSupplier:mostActiveUsersOnPageDataSupplierlabel:dashboard.chart.chart2chartType:# This is an example of how to decorate a chart type to decorate data field mappingseries:-name:seriesdataFields:-name:categoryjsonPath:$.[*].user# Decorate jsonPath for categoryX to map data from GA-name:valuejsonPath:$.[*].['numberofactivations']ticks:disabled:truelabels:disabled:trueCopy
Defines the values displayed in the simple chart. Because all data suppliers must return JSON, you can specify a property in that JSON or use a JSONPath expression to point to the value you want to display.
For example, to get the number of unique visitors from the JSON file:
$.get_rate[0].nb_uniq_visitors
chartType
required if you are using predefined chart definitions and overriding chart type series to adjust the data to your requirements
For example:
chartType:
# This is example how to decorate chart type to decorate data field mapping
series:
- name: series
dataFields:
- name: categoryX
jsonPath: $.reports[*].data.rows[*].dimensions[*] # Decorate jsonPath for categoryX to map data from GA
- name: valueY
jsonPath: $.reports[*].data.rows[*].metrics[*].values[*] # Decorate jsonPath for valueY to map data from GA
Copy
class
required
Chart type class: info.magnolia.analytics.amcharts.data.configuration.AmChartType
series
required
Each chart type can support only relevant amCharts series. When using a predefined chart type, the correct series is included. You must override the series to adjust the data to your requirements.
You must modify the entire series. Not just parts of it.
Series have two main purposes:
Setting appearance and behavior of a series of chart/map items.
Binding individual items in series to source data.
Defines the connection between data item and actual properties in raw data.
The name and value properties are required for the amCharts data fields. If you need a more advanced selection of data, you can also use the jsonPath property to filter the data.
name
required
The name of the data field.
value
required
The value of the data field.
jsonPath
optional
The JSONPath expression filters the data you retrieve about your site from the data supplier. The syntax you use depends on your data and what you want to display in your chart.
If you use a Google Analytics data supplier, you must have a valid
Google Analytics access token to be able to run API requests. Get one
here.
From 1.2, we recommend using the Analytics app to change the dashboard layout.
Editors and marketers can use the Analytics app to change the dashboard
layout. By default, the dashboard is set to two equal-sized columns
(layoutId: "50-50"). Charts are positioned automatically on a first
come, first served basis in the columns from left to right on as many
rows as are necessary for the number of charts you add.
When a dashboard is created or edited, layoutId and styleName
properties are added to the dashboard definition. You can edit them
manually if required.
Set the enabled property to false to disable caching.
When you click the refresh button on the dashboard, the cache is invalidated.
Refreshing the dimension and metric metadata cache
Magnolia gets the dimensions and metrics displayed to users from live third-party metadata.
In general, third-party data suppliers, such as Adobe Analytics, Google Analytics or Matomo, don’t change their metadata very frequently. Magnolia therefore stores the metadata for each supplier in a resource file and reads from the file each time a user wants to see all the metrics and dimensions for the data supplier they select.
Developers can define filters to drill down into the data displayed in
the charts that are configured. When set, each filter is applied to all
the charts in the dashboard simultaneously. For example, if you set a
filter to display a given time range, all the charts display data for
that time range.
You can use basic
Magnolia
field types to define filters, such as date, rich text, and so on.
Complex fields such as multiValue, composite, switchable and
collapsibleComposite are not supported.
The filter parameters depend on the type of data supplier used (see
properties below).
The filter names are used to append the REST call against the supplier.
Therefore, the value here must have a counterpart in the given data suppliers. You can also use filters to
override parameters.
info.magnolia.analytics.datasource.FrequentlySearchAppDataSupplier:
limitTopSearch is a number used for frequently searched apps. The
default is 10 results.
info.magnolia.analytics.datasource.ContentTagsDataSupplier:
numberOfTags is a number used for the content tags word cloud. The
default is 50 tags.
info.magnolia.analytics.datasource.MostActiveUsersOnPageDataSupplier:
startDate and endDate are used for most active users by publication.
The default is all data available.
info.magnolia.analytics.datasource.RecentPageActivitiesDataSupplier:
startDate and endDate are used for recently activated, modified and
created pages. The default is the last 7 days.
A text label displayed as the title of the filter in the dashboard. For
example Start date.
placeholder
optional
Text to be displayed in the filter field when you don’t want the filter
to appear empty.
options
optional
Options to be applied to the filter contents. The sub-properties depend
on the field type being used.
Using date filters
If you don’t set a value for the date parameter in the data supplier yaml file (such as /matomo/dataSuppliers/demoMatomoSupplier.yaml), the dashboard display uses the default value (for Matomo: last7).
In the dashboard, if the filter startDate and endDate are left empty by the user, the date parameter value from the data supplier yaml file is used in widgets for that data supplier.
If the user enters a startDate and endDate in the filter, the date value range selected is used in widgets for that data supplier.
If the user only enters a startDate, data for that date only is displayed in widgets for that data supplier.
If the user only enters an endDate, data for that date only is displayed in widgets for that data supplier.
Enabling and disabling dashboard definitions
By default, all the dashboards you or your end users create are available in the Analytics app.
If you don’t want a dashboard to be available in the app, you must set
the enabled property in the dashboard definition to false.
When there are no user-defined dashboards available in the app, the
fallback display by default is the demo dashboard provided by Magnolia.
If you disable the default demo dashboard, nothing is displayed in the
app when no user-defined dashboards are available.
Configuring the dashboard displayed by default
By default, the demo dashboard is the dashboard selected in the dropdown and displayed when you open the Analytics app.
If you want to change the default dashboard displayed, add the dashboardName property to /analytics-ui/apps/analytics.yaml and set its value to the name of the dashboard you want.
subApps:dashboard:class:info.magnolia.analytics.ui.app.DashboardSubAppDescriptordashboardName:timeline# this is the real name of dashboard and its `enabled` property must be `true`Copy
The dashboard definition name you set must exist under /analytics-ui/dashboards and be enabled.
Configuring the list of data suppliers available
You can configure which data suppliers are available to your end users in the Analytics app Add widget and Edit widget dialogs.
To do so, edit the configuration for the ignoredDataSupplierNamesStartingWith property under analytics-ui/config.yaml.
For example, by default, Magnolia removes the A/B/n Testing data supplier from the dropdown:
ignoredDataSupplierNamesStartingWith:-testResultsDataSupplier#ignore supplier in ab testingCopy
If you want to remove all data suppliers starting with the word "dummy", the configuration is:
ignoredDataSupplierNamesStartingWith:-testResultsDataSupplier#ignore supplier in ab testing-dummy# ignore all supplier name starting with "dummy"Copy
Configuring the list of chart types available
You can configure which chart types are available to your end users in the Analytics app Add widget and Edit widget dialogs when adding advanced widgets.
To do so, edit the configuration for the chartTypeConfigurationName property in the:
You can reuse one of the predefined chart definitions in the chart type dropdown, except those which have more than two data fields (such as the candlestick or ohlc chart types).
For example, to make the predefined word-cloud chart type available to your users when they add or edit all widgets, add it to the options as shown below.
We recommend you provide an i18n key for the chart types you add to analytics-ui/i18n/magnolia-analytics-ui-messages_en.properties. You can find the key by opening the dialog and looking in the dropdown:
If you want to update an existing chart created in v1.1 with a new chart type, use a YAML include to add it to the chart definition.
chart4:!include:/analytics-ui/charts/word-cloud.yamldataSupplier:contentTagsDataSupplierchartType:# Decorate series for mapping json dataseries:-name:seriesdataFields:-name:wordvalue:tagjsonPath:$.[*].tag-name:valuevalue:weightjsonPath:$.[*].weightCopy
Changing the theme and CSS
You can change the CSS and theme of the dashboard charts to suit your
visual requirements.
To do so, update the amcharts.css and amcharts_theme.js files in
/info/magnolia/analytics/amcharts/vaadin.
+
To make your charts responsive, enable the feature by adding the responsive property to the chart definition and setting it to enabled: true as shown in this example:
If you enable responsiveness, when a chart’s pixelWidth is ⇐ 500px, Magnolia automatically hides the chart legend.
You can change the responsive rules in
/info/magnolia/analytics/amcharts/vaadin/amcharts_connector.js.
Configuring default metrics and dimensions
The following default metrics and dimensions are used for each third-party data supplier. You can change the defaults through decoration in the data supplier yaml file.
Adobe Analytics
Metric
ID
Visits
metrics/visits
Unique Visitors
metrics/visitors
Page Views
metrics/pageviews
Time Spent per Visit
metrics/timespentvisit
Bounce Rate
metrics/bouncerate
Dimension
ID
Date
variables/daterangeday
Google Analytics 4
Label
ID
Users
activeUsers
Sessions
sessions
Items viewed
itemsViewed
Avg. Session Duration
averageSessionDuration
Bounce Rate
bounceRate
Dimension
ID
Date
date
Matomo
Label
ID
Unique Visitors
nb_uniq_visitors
Visits
nb_visits
Actions
nb_actions
Total time spent
sum_visit_length
Bounce Rate
bounce_rate
Dimension
ID
Date
API.get
Example: Decorating default metrics and dimensions
In this example, the Adobe Analytics data supplier is decorated to change the default dimension and metrics.
The default time granularity dimension has been changed from days (daterangeday) to weeks (daterangeweek). The default metrics are now revenue and time spent per visit.
With this decoration, all commonly used metrics charts created by end users in the app are based on these new defaults.
defaultCommonDimension:variables/daterangeweekdefaultCommonMetrics:'metrics/revenue':"Revenue"'metrics/timespentvisit':"Time spent per visit"Copy
The metric ID is the value on the left. The value on the right is the i18n key displayed to users in the app. If no i18n key is set, the metric ID is displayed.
Configuring metric data start dates
You can configure the start date for the metric data for each data supplier in /<module name>/dataSuppliers/<dataSupplierRegistryFile.yaml>.
This controls what data end users see in the widgets they add in Analytics app.
Defaults:
Adobe:
endDate: '2020-01-15'
startDate: '2020-01-01'
Matomo: last7
Google Analytics: 7DaysAgo
Configuring date formatting in widgets
You can configure how dates are displayed in widgets either for each data supplier or for all the widgets, regardless of where the data comes from.
To configure date formatting for a specific data supplier, add the properties below to: /<module name>/dataSuppliers/<dataSupplierRegistryFile>.yaml
For example, for Adobe, /adobe-analytics/dataSuppliers/adobeDataSupplier.yaml:
Date format you want to use in the charts defined for each data supplier.
If defined for a given data supplier, this property overrides the dateFormat property.
dateFormat
Defines the date format for all suppliers.
Default value: dd.MM.yy.
If the dateFormat property is configured in the /analytics/config.yaml file, and toDateFormat property isn’t, the value of the dateFormat property is used for date formatting.
If both the properties are configured, the value of toDateFormat is used.
Configuring decimal formatting in widgets
Like date formatting, you can configure how decimals are displayed in widgets either for each data supplier or for all the widgets, regardless of where the data comes from.
To configure decimal number formatting for a specific data supplier, add the decimalNumberFormat property to: /<module name>/dataSuppliers/<dataSupplierRegistryFile>.yaml
For example, for Adobe, `/adobe-analytics/dataSuppliers/adobeDataSupplier.yaml:
The default value "#0.00" is set for all data suppliers in /analytics/config.yaml.
"#0.00" corresponds to two figures after the decimal point, for example, 1.23.
"#0.0000" corresponds to four figures after the decimal point, for example, 1.2345.
If the decimalNumberFormat property is configured in both the /analytics/config.yaml file, and the <dataSupplierRegistryFile.yaml>, the value in the <dataSupplierRegistryFile.yaml> is used.
Converting time metrics to seconds for Matomo widgets
This configuration only applies to data suppliers configured with the info.magnolia.analytics.matomo.datasource.MatomoDataSupplierWithTransformer class.
In some cases, Matomo returns time metrics as, for example, 2 days 12:34:56.789. This means 2 days, 12 hours, 34 minutes, and 56.789 seconds. To be correctly displayed and compared on a chart, a value such as 00:01:30.00 should be converted to seconds only: 90.
You can configure time metrics so they display as seconds using the property metricsForTimeToSecondsConversion property in matomo/config.yaml.
Add metrics to this list as required for your data.
Displaying analytics in an IUX slot
In addition to viewing analytics charts in the Analytics app, you can
display them next to the content they apply to in IUX (Integrated User
eXperience) slots.
IUX slots are extension panels in the browser subapp. The panel allows
you to configure a list of extension views in the
workbench and
replaces info.magnolia.ui.workbench.contenttool.ContentToolDefinition of
Magnolia
5 UI.
The first slot, introduced in Magnolia 6.2, is a wide horizontal slot at
the top of content apps such as the Pages app.
Use decoration to configure the:
Extension panel in the Pages app (see
extensionViews
for configuration and properties).
Charts to be displayed.
Data suppliers providing the analytics data.
Use the Refresh button in the Analytics app dashboard to clear the cache of the data supplier providing the data displayed in the IUX slot.
extensionViews:-name:analytics1icon:icon-analytics-appview:name:analytics$type:analyticsViewchartDefinitions:-name:adobePageViewslabel:"Total Adobe Page Views"class:info.magnolia.analytics.amcharts.data.AmChartDefinitiondataSupplier:adobePageViewsDataSupplierchartType:!include:/analytics-ui/chartTypes/line-and-area/line-different-colors-ups-downs.yamlseries:-name:seriesdataFields:-name:categoryXjsonPath:"$.rows[*].value"-name:valueYjsonPath:"$.rows[*].data[0]"xAxes:!override-name:xaxerenderer:labels:truncate:truemaxWidth:90#maxWidth can be change due to your config, exp: 120 instead of 90-name:adobeMetricFilterlabel:"Adobe Page Views With Metric Filters"class:info.magnolia.analytics.amcharts.data.AmChartDefinitiondataSupplier:adobeMetricFilterDataSupplierchartType:!include:/analytics-ui/chartTypes/line-and-area/line-different-colors-ups-downs.yamlseries:-name:seriesdataFields:-name:categoryXjsonPath:"$.rows[*].value"-name:valueYjsonPath:"$.rows[*].data[0]"xAxes:!override-name:xaxerenderer:labels:truncate:truemaxWidth:90dataSuppliers:adobePageViewsDataSupplier:class:info.magnolia.analytics.adobe.datasource.AdobeDataSuppliercredentials:parameters:serviceUrl:https://analytics.adobe.io/api/xxxxxxxxxxxx/reportsclientId:<your-client-id>clientSecret:<your-client_secret>companyId:<your-company-id>orgId:xxxxxxx@AdobeOrgscope:<your-scopes>technicalAccountId:xxxxxx@techacct.adobe.comimsHost:https://ims-na1.adobelogin.comimsExchange:https://ims-na1.adobelogin.com/ims/token/v3parameters:rsid:xxxxxxxxgFilterType:dateRangemetricId:metrics/pageviewsdimension:variables/evar3#This is just an example, variables need to be configured to map with pageName or pageUrlfilteringSubSetExpression:clause:CONTAINS'%s'#selected node pathadobeMetricFilterDataSupplier:class:info.magnolia.analytics.adobe.datasource.AdobeDataSuppliercredentials:parameters:serviceUrl:https://analytics.adobe.io/api/xxxxxxxxxxxx/reportsclientId:<your-client-id>clientSecret:<your-client_secret>companyId:<your-company-id>orgId:xxxxxxx@AdobeOrgscope:<your-scopes>technicalAccountId:xxxxxx@techacct.adobe.comimsHost:https://ims-na1.adobelogin.comimsExchange:https://ims-na1.adobelogin.com/ims/token/v3parameters:rsid:xxxxxxxxgFilterType:dateRangemetricId:metrics/pageviewsdimension:variables/daterangedaymetricFiltersExpression:-id:0type:breakdowndimension:variables/evar1#This is just an example, variables need to be configured to map with pageName or pageUrlitemValue:"%s"#selected node path-id:1type:dateRangefilterFields:-name:startDate$type:dateField-name:endDate$type:dateFieldCopy
itemIds - A list of itemIds to include in the report.
excludeItemIds - A list of itemIds to exclude in the report.
clause - A search clause to use when filtering dimensions.
includeSearchTotal - Includes a special element called searchTotals in the response that contains the total of the filtered items. The default is false.
The Adobe Analytics breakdown reports documentation indicates that breakdowns in the API are useful when you want to see the cross-product of values from two different dimensions. When requesting a breakdown report, use the metricsFilters and dimension parameters to request the additional dimension.
The configuration in this decoration file (with the
relevant credentials added) results in charts displayed in an IUX slot
at the top of the Pages app for the Travel Demo pages.
Not all segments work in Matomo. We recommend you check your segment is working in your Matomo dashboard first by following the instructions in the Matomo documentation before configuring your IUX slot in Magnolia. See How to build custom segments in Matomo and refer to the further reading section for some other useful links.
Adobe Experience Cloud
https://experience.adobe.com/#/@magnoliaexchange/home
This is the Adobe Analytics UI. It’s a little different from Google Analytics. You drag-and-drop metrics and filters (Adobe term for dimensions, but it’s really the same thing) to create reports/charts.
Adobe Analytics for GA users
https://experienceleague.adobe.com/docs/analytics/technotes/ga-to-aa/home.html?lang=en
Documentation that helps you to learn core concepts and workflows in Adobe Analytics, focusing on key similarities and differences between Adobe and other popular tools (GA). This guide is designed for analysts who are familiar with basic digital analytics concepts, but new to Adobe Analytics.
This release brings some improvements, bug fixes, and major new features.
Google Analytics 4
This release brings the Google Analytics 4 connector to the Analytics Connector Pack. (ANALYTICS-381)
With Google Universal Analytics (UA) shutting down, we’re moving our UA connector into maintenance mode until the end of the year.
Following this period, in accordance with our Deprecation Policy, we will proceed to deprecate and retire the UA connector.
Improvements
Some notifications containing long messages did not offer multiline message as there was an inconsistency in the CSS. This has been improved. (ANALYTICS-444)
Bug fixes
The connector was displaying an error message ERROR lia.analytics.google.datasource.GoogleDataSupplier: Credentials is null or service is not instantiated (ANALYTICS-404)
Analytics module 1.2.2
Released on September 20, 2021.
This release provides improvements to dragging and dropping widgets around the dashboard and some bug fixes.
Widget drag and drop usability enhancements
To keep the UI uncluttered, widget icons are now hidden until the user mouses over the chart.
A drag and drop handle icon has been added to widgets in the Analytics app and a more obvious frame is displayed so users can better visualize where they are moving the widget.
Since Magnolia 6.2.11, widgets with custom views did not display the correct dialog when editing the widget. (ANALYTICS-373)
The dashboard layout crashed after opening a chart in full screen mode and dragging and dropping a chart. (ANALYTICS-375)
The Definitions app displayed a severity level of MAJOR when analytics data suppliers were missing credentials. This has now been changed to MINOR. (ANALYTICS-377)
Analytics module 1.1.2
Released on September 20, 2021.
This maintenance release provides the following bug fix:
The Definitions app displayed a severity level of MAJOR when analytics data suppliers were missing credentials. This has now been changed to MINOR. (ANALYTICS-377)
Analytics module 1.2.1
Released on July 9, 2021.
This release provides the following bug fixes and an improvement for using Adobe Analytics in an IUX slot:
Add widget action in Analytic app does not work with Magnolia 6.2.9. (ANALYTICS-361)
Client-secret key not resolved for Adobe supplier in Analytics IUX slot. (ANALYTICS-364)
Enable filtering for Adobe supplier in Analytics IUX slot. (ANALYTICS-365)
Adobe Analytics requires specific configuration in Adobe Launch and the Magnolia template to enable filters in the analytics IUX slot.
Analytics module 1.1.1
Released on July 9, 2021.
This release provides the following bug fix and improvement for using Adobe Analytics in an IUX slot:
Client-secret key not resolved for Adobe supplier in Analytics IUX slot. (ANALYTICS-364)
Enable filtering for Adobe supplier in Analytics IUX slot. (ANALYTICS-365)
Adobe Analytics requires specific configuration in Adobe Launch and the Magnolia template to enable filters in the analytics IUX slot.
Analytics module 1.2
Released on May 7, 2021.
The Analytics module is included in the Magnolia cloud webapp bundle. It is not bundled in the standard DX Core webapp.
Note that, for the time being, Analytics module 1.1 is bundled in the dx-core-cloud-webapp bundle.
New UI for no-code dashboards and widgets
This release delivers a new user-friendly UI to empower editors and marketeers in creating and editing their own dashboards and widgets.
In Analytics module 1.1, only technical users who were able to work with YAML files could build charts and dashboards.
Now users can create a dashboard and add widgets featuring commonly used metrics in just a few clicks. A preview of the widget being created is displayed as soon as metrics are selected. Once added to the dashboard, widgets can be dragged and dropped around, or expanded for better viewing.
See the Analytics app for how to create dashboards and add widgets.
Commonly used metrics out-of-the-box and advanced metrics
Default metrics and dimensions are provided for each third-party analytics tool so that end users can start creating popular widgets as soon as the data supplier is configured.
Users with in-depth knowledge of their analytics data can access all the metrics and dimensions available from their data supplier when adding widgets by clicking the Add metrics button.
Analytics data from different sources in one dashboard
A dashboard can contain widgets displaying data from different data suppliers.
You can create widgets from different sources of analytics data, such as Adobe Analytics, file-based data, Google Analytics, Matomo, and display them all in a single dashboard.
Persistent filters
Previously, dashboard filters were cleared when you changed the dashboard layout, added a widget or dragged and dropped a widget.
Now filters persist until you reload the dashboard, select another dashboard, add a dashboard or delete a dashboard.
Dynamic tooltips in charts
To provide more visual information about the data in the widgets, dynamic tooltips are now displayed by default when mousing over charts.
The green tooltip is the label for the Y axis.
JSON Path Evaluator
A JSONPath evaluator is provided to help you test and evaluate your JSONPath.
Backwards compatibility with Analytics module 1.1 charts
Analytics module 1.2 supports the display of dashboards created using the previous version of this module. Dashboards created in version 1.1 can be viewed, but not edited. Users are notified of this limitation in the UI.
We recommend you use the new Analytics app to re-create your 1.1 dashboards and widgets from scratch. However, we provide an example of how to migrate in How to migrate Analytics module 1.1 dashboards to 1.2 if you prefer to reconfigure your charts and dashboards.
Timeline chart supported
A new timeline chart type is provided by the magnolia-analytics-amcharts-samples module. See the amCharts timeline chart demo.
Registries for data suppliers and chart definitions
Previously, dataSuppliers and chartDefinitions were configured in the dashboard yaml definitions and would sometimes need to be duplicated.
Now, Magnolia provides registries for the dataSupplier and chartDefinition configuration.
Data suppliers are defined once under this directory: /<module name>/dataSuppliers/<dataSupplierRegistryFile.yaml>.
The chartDefinition configuration in the dashboard definition yaml file can be included from the chart definitions provided by the magnolia-analytics-ui submodule:
The AnalyticsDataSupplierCache used in 1.1 has been replaced by the Addon-commons cache module in 1.2.
If you customized your cache configuration in 1.1, update the new cache configuration under /analytics/decorations/addon-commons-cache/config.yaml.
Deprecated classes
The class info.magnolia.analytics.google.datasource.GoogleDataSupplierWithDateFormatter provided in Analytics module 1.1 for date formatting has been deprecated in favor of info.magnolia.analytics.google.datasource.GoogleDataSupplier in 1.2.
The class info.magnolia.analytics.matomo.datasource.MatomoDataSupplier provided in Analytics module 1.1 for date formatting has been deprecated in favor of info.magnolia.analytics.matomo.datasource.MatomoDataSupplierWithTransformer.
The class info.magnolia.analytics.datasource.MostActiveUsersDataSupplier provided in Analytics module 1.1 has been deprecated in favor of info.magnolia.analytics.datasource.MostActiveUsersOnPageDataSupplier due to json data has been changed.
The class info.magnolia.analytics.datasource.PeriscopeDataSupplier provided in Analytics module 1.1 has been deprecated in favor of info.magnolia.analytics.datasource.FrequentlySearchAppDataSupplier due to json data has been changed.
The class info.magnolia.analytics.datasource.RecentActivitiesDataSupplier provided in Analytics module 1.1 has been deprecated in favor of info.magnolia.analytics.datasource.RecentPageActivitiesDataSupplier due to json data has been changed.
This release delivers a new connector for Adobe Analytics.
Analytics module 1.0
Released on July 9, 2019.
Initial release of the Analytics Connector Pack modules, which provide a framework and connectors to inject your analytics data into the Magnolia UI enabling authors and marketeers to make data-driven decisions. See Analytics Connector Pack for an overview of the functionality provided.
Analytics Connector Pack compatibility
Module version
Magnolia CMS version
1.2.4+
6.2.45+
1.2.3
6.2.34+
1.2.0 to 1.2.2
6.2.2+
1.1.0 to 1.1.2
6.2+
1.0
6.1
A note about connector compatibilty
The third-party versions listed below are the versions Magnolia has
developed and tested against. If you don’t see a particular version
listed, it simply means that we do not routinely test on it.
If you are using another version of the third-party tool and run into
compatibility issues, please contact our Support.