Page History
Contents
Table of Contents |
---|
Anchor | ||||
---|---|---|---|---|
|
...
...
...
We recommend installing the CardioLog Analytics application on a dedicated server, and the CardioLog Analytics database on a dedicated SQL Server instance. The CardioLog Analytics application and database can be installed on-premise, on physical servers or virtual machines, or hosted on Microsoft Azure virtual machines (IaaS) which meet the system requirements and with the required ports and permissions.
The following architecture diagrams display a typical implementation of CardioLog Analytics hosted on-premise, or on Microsoft Azure virtual machines (IaaS):
Anchor | ||||
---|---|---|---|---|
|
SharePoint On-Premise
SharePoint Online/Yammer
Anchor | ||||
---|---|---|---|---|
|
Note: When hosting CardioLog Analytics on Microsoft Azure virtual machines (IaaS) and tracking a SharePoint on-premise farm, a site-to-site VPN is required. To support single sign on and leverage all product features, the Azure servers should be domain-joined.
Anchor | ||||
---|---|---|---|---|
|
The CardioLog Analytics solution includes the following components:
User Interface | A web application for configuring and viewing the web analytics reports. |
Database | A repository (SQL database) for storing all tracking and reporting data. |
Website Tree Service | A web service which provides the structure of the monitored website to CardioLog. |
Tracking Agent | A JavaScript tag which is included in all website pages, monitors site usage and personalizes site content. |
Event Collector | A web service which sends tracking data from the tracking agent to the CardioLog database. |
CardioLog Scheduling Service | |
A Windows service that runs scheduled jobs, including usage data processing, website tree structure syncing and user information syncing. | |
CardioLog Diagnostics Service | A Windows service used to run regular health checks on the CardioLog system. |
The CardioLog Scheduling Service includes the following components:
- Usage Data Processing - Processes incoming tracking data from the Event Collector every hour.
- Portal Tree Updates - Retrieves the structure of the portal (ie., Monitored environments). This is done by creating an XML file which outlines the hierarchical structure of the portal, and then translates the XML data into relational data. This structure is the basis for data aggregations.
- Report Scheduling - Responsible for the automatic generation of all scheduled reports, and their distribution and publication.
- Active Directory Updates - Retrieves the list of all users and groups directly from Active Directory, SharePoint or custom sources for use with visitor segmentation and other user targeted features.
- User Categories Updates - Retrieves the list of custom user categories from specific designated web services for Active Directory, SharePoint or custom sources for or use with visitor segmentation and other user targeted features.
Anchor | ||||
---|---|---|---|---|
|
In order to provide enhanced reports and meaningful insights to stakeholders to better understand and improve the business, the CardioLog Analytics solution collects, processes and stores data from various sources. Some of these sources are shared (such as the SharePoint databases, SharePoint APIs, SharePoint user profiles, Active Directory, IIS logs*) and some are the unique IP of CardioLog Analytics (such as the JavaScript tracking agent).
Data collected by CardioLog Analytics includes the following:
- Page tagging: Page URL; query string; date and time; user ID; session ID; browser type and operating system; IP address; search terms; position of clicked search results; amount of time spent on a page; page loading time.
- Active Directory or SharePoint user profiles: User account name; user display name; email; and additional optional attributes such as department and location (configurable)
- Social activity from SharePoint and other social networks such as Yammer and Sitrion: Ratings; likes; follows; comments; groups and group activity, etc.
- Website tree service: Page ID; URL; title; content type; template; owner; editor; date created; date updated; size; and additional optional meta data fields.
To enable CardioLog Analytics to provide distinctive reports with exceptional value, the solution is required to collect, store and process more data and information than most generic analytic solutions.
The following events are collected via page tagging:
- Page view
- Document view/download
- Page duration (time spent on page)
- Page load time
- Page interactions (such as scroll) - optional
- External link click
- Search
- Search result click
- Search result preview
- Video interactions (such as play/auto play/pause/stop/seek/full screen/sound) - optional
* History data is collected from IIS logs during the initial installation only
Anchor | ||||
---|---|---|---|---|
|
- Download Tracking Code - The JavaScript The JavaScript tracking code is code is added to SharePoint using a the SharePoint feature (or a common page component such as master pages) and and is downloaded to the client's browser with each page request.
- Personalize Content (Optional) - Information about the based on visitor segments is downloaded to the client's browser with each page request. The JavaScript code hides the content of the page, adds or modifies relevant page elements and finally re-then displays the custom page according to visitor segments.
- Track Usage Usage Data - Information about user actions within the on website pages is sent to the CardioLogAgent the CardioLogAgent web application - located on the SharePoint WFEs via asynchronous JavaScript calls (AJAX). Actions such as document clicks, search results clicks and external links clicks are stored in cookies first and sent to the CardioLogAgent web application after the user visits a website page.
- Store Usage Data - The CardioLogAgent web application passes on the usage tracking information , via HTTP/S web requests , to the EventCollector web application - which located on the CardioLog application server, which writes the data into the CardioLog database.
- Process Usage Data - The Usage The Usage Data Processing service Processing service processes incoming tracking data from Event Collector (every hour by default)the EventCollector application. By default, this occurs hourly.
- View Usage Data - The processed data is visible in the Report Center and Analysis Center Report Center and Analysis Center.
The data collected by CardioLog
isincludes page URL, query string, user name, date and time, browser type, operating system, workstation IP and WFE server IP.
TrackingTracking of usage data operates in a non-invasive transparent manner and
doesshould not affect the monitored website's overall performance and response time. It is asynchronous to the monitored website's execution and
users'user activity,
thusand therefore has no direct impact on the monitored environment.
TheThe product has a marginal footprint on the website and can be turned off instantly should
a diagnosis be requiredyou require any site diagnosis.
JavaScript Tracking Code
Website usage tracking is performed by the Tracking Agent - , which is a 150KB piece 300KB block of JavaScript code (out , half of which 75KB are optional), is optional. The code is added to the all relevant website pages.
CardioLog Agent File | Bytes SentReceived | Bytes ReceivedSent | ||
/CardioLogAgent/AgentEmbed.aspx | 146000 | |||
/CardioLogAgent/ | cagetCAData.aspx (optional) | ~300 | ||
/CardioLogAgent/ | caUserca.aspx (optional) | 425~168000 | 77668 70139 387 | |
/CardioLogAgent/caUser.aspx (optional) | ~300 | ~100 | ||
/CardioLogAgent/tunnel.aspx | 1681~291 | 410~300 |
The download time for the Tracking Agent JavaScript code is dependent upon multiple factors - such as including network connectivity and band widthbandwidth. Generally, the download time is almost negligible.The The Tracking Agent JavaScript code is loaded executed on page document ready, and sends usage data to the CardioLog server - asynchronously. It can also be loaded on window onload. The
After the first time a page is loaded, the larger files (AgentEmbed.aspx and ca.aspx) are cached in the browser for one hour. This allows speeding up the loading process of the tracking agent and save bandwidth.
The ca.aspx file is cached by page URL and may contains CSS information about personalized pages configured in CardioLog (such as behavioral targeting rules and A/B and MVT tests).
The size of the getCAData.aspx file depends on the personalized content configured in CardioLog (such as visitor segments, surveys, message bars, behavioral targeting rules and A/B and MVT tests).
The Tracking Agent stores data in session cookies, it is recommended to increase the cookie size limit to at least 8 MB and make sure cookies are not cleared automatically when the browser is closed.
The calls to the CardioLog server do not affect the page response time.In case of If there is a connection error, in order to avoid unwanted overhead, the tracking agent tries to reconnect after 60 seconds (configurable) in seconds in order to send usage data. The page will be displayed without modifications - if any - , assuming any were available, after 5 seconds (configurable).Intlock of no response. For more information see Tracking Agent Configuration. Intlock encourages each customer to perform his/her run their own performance tests.