Dashboards
- Topics:
- Administering
CREATED FOR:
- Admin
When using AEM you are able of managing a lot of content of different types (e.g. pages, assets). AEM Dashboards provide an easy to use and customizable way to define pages that displays consolidated data.
Administering Dashboards
Creating A Dashboard
To create a new Dashboard, proceed as follows:
-
In the Tools section, click Configuration Console.
-
In the tree, Double-Click Dashboard.
-
Click New Dashboard.
-
Type the Title (e.g. My Dashboard) and the Name.
-
Click Create.
Cloning A Dashboard
You may want to have multiple dashboards to quickly see information about your content from different views. To help you to create new Dashboard, AEM provides a clone feature that you can use to duplicate an existing Dashboard. To clone a Dashboard, proceed as follows:
-
In the Tools section, click Configuration Console.
-
In the tree, Click Dashboard.
-
Click on the dashboard you want to clone.
-
Click Clone.
-
Type the Name of your new dashboard.
Removing A Dashboard
-
In the Tools section, click Configuration Console.
-
In the tree, Click Dashboard.
-
Click on the dashboard you want to delete.
-
Click Remove.
-
Click Yes to confirm.
Dashboard Components
Overview
Dashboard components are nothing more than regular AEM components. This section describes reporting components shipped with AEM.
Web Analytics Reporting Components
AEM ships with a set of components that render multiple metrics of your SiteCatalyst data. Those components are listed in the Sidekick under the Dashboard section.
Each reporting component provides at least three tabs:
-
Basic: contains the main configuration.
-
Report: contains the configuration specific of each report.
-
Style: contains styling configuration like chart size and margin.
The reporting components are initialized with a default configuration that helps you to quickly set up your dashboard.
Basic configuration
The Basic tab provides access to the following configuration entries:
Title The title displayed on the dashboard.
Request type The way data are requested.
SiteCatalyst Configuration (optional) The configuration you want to use to connect to SiteCatalyst. If not provided the configuration is assumed to be configured on the Dashboard page (via page properties).
Report Suite ID (optional) The SiteCatalyst report suite you want to use to generate the graph.
Report configuration
In order to display web statistics, you need to define the date range of the data you want to fecth. The Report tab provides two fields to define that range.
Date From Absolute or relative date from which the data is fetched.
Date To Absolute or relative date to which the data is fetched.
Each component also defines specific settings.
Overtime Report
Date Granularity Time unit of the X axis (e.g. day, hour).
Metrics The list of events you want to display.
Elements The list of elements that breaks down the metrics data in the graph.
Ranked List Report
Elements The element that breaks down the metrics data in the graph.
Metrics The event you want to display.
No. of top items Number of items displayed by the report.
Ranked Report
Metrics The event you want to display.
Elements The element that breaks down the metrics data in the graph.
Top Site Section Report
This component displays a graph showing the more visited section of a website according to the following configuration.
No. of top items Number of section displayed by in the report.
Trended Report
Date Granularity Time unit of the X axis (e.g. day, hour).
Metrics The event you want to display.
Elements The element that breaks down the metrics data in the graph.
Extending Dashboard
Overview
Dashboards are normal pages ( cq:Page
), therefore any components can be used to assemble Dashboards.
There is a default component group Dashboard
containing analytics reporting components which are enabled on the template by default.
Creating A Dashboard Template
A template defines the default content of a new Dashboard. You may use several templates for creating different types of dashboards.
Dashboard templates are created like other page templates, except that they are stored under /libs/cq/dashboards/templates/
. See the Creating Contentpage Template section.
Developing a Dashboard component
Developing a Dashboard component consists of creating a regular AEM Component. This section describes an example of a component that displays the top 10 of contributors.
The top author components is stored in the repository at /apps/geometrixx-outdoors/components/reporting
and is composed of :
-
a
jsp
file that reads jcr data and defines thehtml
placeholder. -
a client-side library containing one
js
file that fetches and orders the data, then fills thehtml
placeholder.
The following Javascript file is defined in the geout.reporting.topauthors
Client Library as a child of the component itself.
The QueryBuilder is used to query the repository to read cq:AuditEvent
nodes. The query result is a JSON object from which author contributions are extracted.
top_authors.js
$.ajax({
url: "/bin/querybuilder.json",
cache: false,
data: {
"orderby": "cq:time",
"orderby.sort": "desc",
"p.hits": "full",
"p.limit": 100,
"path": "/var/audit/com.day.cq.wcm.core.page/",
"type": "cq:AuditEvent"
},
dataType: "json"
}).done(function( res ) {
var authors = {};
// from JSON to Object
for(var r in res.hits) {
var userId = res.hits[r].userId;
if(userId == undefined) {
continue;
}
var auth = authors[userId] || {userId : userId};
auth.contrib = (auth.contrib || 0) +1;
authors[userId] = auth;
}
// order by contribution
var orderedByContrib = [];
for(var a in authors) {
orderedByContrib.push(authors[a]);
}
orderedByContrib.sort(function(a,b){return b.contrib - a.contrib});
// produce the list
for (var i=0, tot=orderedByContrib.length; i < tot; i++) {
var current = orderedByContrib[i];
$("<div> #" + (i + 1) +" "+ current.userId + " (" + current.contrib +" contrib.)</div>").appendTo("#authors-list");
}
});
The JSP
includes both global.jsp
and clientlib
.
top_authors.jsp
<%@page session="false" contentType="text/html; charset=utf-8" %><%
%><%
%><%@include file="/libs/foundation/global.jsp" %><%
%>
<ui:includeClientLib categories="geout.reporting.topauthors" />
<%
String reportletTitle = properties.get("title", "Top Authors");
%>
<html>
<h3><%=xssAPI.encodeForHTML(reportletTitle) %></h3>
<div id="authors-list"></div>
</html>
Experience Manager
- Administering User Guide overview
- Sites Features
- Website Administration
- Reusing Content: Multi Site Manager and Live Copy
- Live Copy Overview Console
- Configuring Live Copy Synchronization
- Creating and Synchronizing Live Copies
- MSM Rollout Conflicts
- MSM Best Practices
- Translating Content for Multilingual Sites
- Managing Translation Projects
- Identifying Content to Translate
- Preparing Content for Translation
- Creating a Language Root Using the Classic UI
- Connecting to Microsoft Translator
- Configuring the Translation Integration Framework
- Language Copy Wizard
- Translation Enhancements
- Translation Best Practices
- Configurations and the Configuration Browser
- AEM FAQs
- Operations
- Dashboards
- Operations Dashboard
- Backup and Restore
- Data Store Garbage Collection
- Monitoring Server Resources Using the JMX Console
- Working with Logs
- Configure the Rich Text Editor
- Configure the Video component
- The Bulk Editor
- Configuring Email Notification
- Configuring RTE for Producing Accessible Sites
- The Link Checker
- Troubleshooting AEM
- Audit Log Maintenance in AEM 6
- Editor
- Managing Access to Workflows
- Using cURL with AEM
- Configuring Undo for Page Editing
- Proxy Server Tool (proxy.jar)
- Configuring for AEM Apps
- Administering Workflows
- Configuring Search Forms
- Tools Consoles
- Reporting
- Administering Workflow Instances
- Configuring Layout Container and Layout Mode
- Enabling Access to Classic UI
- Starting Workflows
- Configure the Rich Text Editor plug-ins
- Admin Consoles
- Security
- User Administration and Security
- User, Group and Access Rights Administration
- Security Checklist
- OWASP Top 10
- Running AEM in Production Ready Mode
- Identity Management
- Adobe IMS Authentication and Admin Console Support for AEM Managed Services
- Creating a Closed User Group
- Mitigating serialization issues in AEM
- User Synchronization
- Encapsulated Token Support
- Single Sign On
- How to Audit User Management Operations in AEM
- SSL By Default
- SAML 2.0 Authentication Handler
- Closed User Groups in AEM
- Granite Operations - User and Group Administration
- Enabling CRXDE Lite in AEM
- Configuring LDAP with AEM 6
- Configure the Admin Password on Installation
- Service Users in AEM
- Encryption Support for Configuration Properties
- Handling GDPR Requests for the AEM Foundation
- Content Disposition Filter
- Personalization
- eCommerce
- Integration
- Integrating with Third-Party Services
- Integrating with Salesforce
- Integrating with Adobe Target
- Integrating with Adobe Analytics
- Connecting to Adobe Analytics and Creating Frameworks
- Configuring Link Tracking for Adobe Analytics
- Mapping Component Data with Adobe Analytics Properties
- Configuring Video Tracking for Adobe Analytics
- HTTP2 Delivery of Content FAQ
- Troubleshooting your Adobe Campaign Integration
- SharePoint Connector Licenses, Copyright Notices, and Disclaimers
- SharePoint Connector
- DHTML Viewer End-of-Life FAQs
- Integrating with Adobe Campaign Classic
- Related Community Articles
- Integrating with Adobe Campaign Standard
- Flash Viewers End-of-Life Notice
- Integrating with Adobe Creative Cloud
- Integrating with Adobe Dynamic Tag Management
- Opting Into Adobe Analytics and Adobe Target
- AEM Portals and Portlets
- Integrating with Dynamic Media Classic
- Troubleshooting Integration Issues
- Integrating with BrightEdge Content Optimizer
- Best Practices for Email Templates
- Catalog Producer
- Integrating with Silverpop Engage
- Integrating with Adobe Campaign
- Integrating with ExactTarget
- Analytics with External Providers
- Integrating with the Adobe Marketing Cloud
- Manually Configuring the Integration with Adobe Target
- Prerequisites for Integrating with Adobe Target
- Adobe Classifications
- Solutions Integration
- Target Integration with Experience Fragments
- Best Practices
- Content Management