It is the customer's responsibility to maintain redundancy for the CardioLog server. To ensure optimal operation, follow the following procedures:
Contents
- How to configure NLB for usage data collection
- How to install the CardioLog data collection web applications on a WFE
- How to configure CardioLog in the event of a SharePoint farm Failover
How to configure NLB for usage data collection
For large portals, those with over 5 million events per month, Intlock recommends using NLB for usage data collection.
Data collection is handled by the EventCollector and CardioLogAgent web applications. Multiple instances of these web applications can work in parallel - each one writing its own data into the CardioLog database.
The architecture for NLB should be as follows:
- Main server hosting a full CardioLog installation.
- Additional WFE/s which host the EventCollector and CardioLogAgent web applications.
Note: You can use the SharePoint WFEs or dedicated servers to host the EventCollector and CardioLogAgent web applications. When deploying the CardioLog Analytics SharePoint feature for usage tracking, the CardioLogAgent web application is already installed on your SharePoint WFEs under each SharePoint web application "_layouts" folder. You can install the EventCollector web application in the same location.
How to install the CardioLog data collection web applications on a WFE
- Create a new EventCollector web application on the WFE. For the new web application, create a dedicated application pool, set ASP.NET version to 2.0 and grant the application pool account the "db_owner" role on the CardioLog database. Set the authentication method of the web application to Anonymous access (disable Windows Authentication).
- Copy the files from the CardioLog server [CardioLog Installation Directory]\EventCollector to the new directory.
- Create a new CardioLogAgent web application on the WFE. For the new web application, create a dedicated application pool and set ASP.NET version to 2.0. Set the authentication method of the web application to Windows Authentication (disable Anonymous access).
- Copy the files from the CardioLog server [CardioLog Installation Directory]\CardioLogAgent to the new directory.
Note: When deploying the CardioLog Analytics SharePoint feature for usage tracking, there is no need to create a new CardioLogAgent web application. - Edit the following keys in the CardioLogAgent\web.config file, located in the <appSettings> section and enter the NLB FQDN -
<add key="EventCollectorPath" value="http[s]://[domain name]/EventCollector/monitor.aspx" />
<add key="CardioLogAgentRoot" value="http[s]://[domain name]"/>
[domain name] - the NLB FQDN for the web applications.
Note: When the EventCollector and CardioLogAgent web applications are installed on your SharePoint WFEs under each SharePoint web application "_layouts" folder, edit the following keys in the CardioLogAgent\web.config file, located in the <appSettings> section, as follows:
<add key="EventCollectorPath" value="http[s]://[domain name]/_layouts/EventCollector/monitor.aspx" />
<add key="CardioLogAgentRoot" value="/_layouts"/>
[domain name] - the SharePoint web application FQDN.
- Edit the following keys in the Java Script tracking code.
var bodycssurl = 'http[s]://[domain name]/CardioLogAgent/GetBodyStyle.aspx?rc=true'
var bodycssurl = 'http[s]://[domain name]/CardioLogAgent/GetBodyStyle.aspx?u=' + window.location + '&env=[SharePoint version]&_random='+Math.random()*100000;
ca.src = 'http[s]://[domain name]/CardioLogAgent/ca.aspx?_random='+Math.random();
tt.src = 'http[s]://[domain name]/CardioLogAgent/AgentEmbed.aspx?env=[SharePoint version]&r='+Math.random()*100000;
Note: When deploying the CardioLog Analytics SharePoint feature for usage tracking, there is no need to update the tracking code.
By default, the Java Script tracking code is embedded within a common Java Script file on your SharePoint WFEs -
For MOSS 2007 only:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\1033\core.js
For SharePoint 2010 only:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\1033\init.js
For SharePoint 2013 only:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\LAYOUTS\init.js
For MOSS 2007 with "CardioLog Analytics" SharePoint Feature only:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS\CardioLogAgent\CardioLogAgent.js
For SharePoint 2010 with "CardioLog Analytics" SharePoint Feature only:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\CardioLogAgent\CardioLogAgent.js
For SharePoint 2013 with "CardioLog Analytics" SharePoint Feature only:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\CardioLogAgent\CardioLogAgent.js
OR
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\LAYOUTS\CardioLogAgent\CardioLogAgent.js
The code is located at the end of the file, between these comments: "//Intlock tracking code start", "//Intlock tracking code end".
[domain name] - the NLB FQDN for the web application. When deploying the CardioLog Analytics SharePoint feature for usage tracking, there is no need to edit these keys (the default value is "/_layouts").
[SharePoint version] - MOSS2007, SP2010 or SP2013
An Active-Active configuration for the entire CardioLog solution is not supported.
An Active-Passive configuration for the entire CardioLog solution is available at an additional cost (the dormant server requires a production license).
How to configure CardioLog in the event of a SharePoint farm failover
- Install the CardioLog Analytics Tracking Agent Feature on the backup farm as detailed here
- Verify that the CardioLog user account has read permissions to the SharePoint databases and TEMPLATE folder on the backup farm.
- In case of a failover,
- Go to Administration > System Configuration > SharePoint Tree Adaptor > click on your SharePoint farm
- In the SharePoint Tree Adaptor dialog, fill out the following fields for the backup farm:
- Database Server - the SharePoint database instance name.
- SharePoint Configuration Database Name - the SharePoint configuration database name. Example: "SharePoint_Config"
- Authentication - database authentication type (windows integrated or SQL authentication).
- SharePoint TEMPLATE Directory - this is the full path for the SharePoint 'TEMPLATE' directory. Example: "\\<sharepoint server name>\C$\Program Files\Common Files\Microsoft Shared\Web Server Extensions\XX\TEMPLATE\" (XX - 12 for MOSS 2007, 14 for SharePoint 2010, 15 for SharePoint 2013) - Click Apply, then click Save.
In versions lower than 2.0.8.0,
- Install the CardioLog Analytics Tracking Agent Feature as detailed here OR add the Tracking Agent JavaScript Code (located in the [CardioLog Installation Folder]\CardioLogAgent\sp_js_tracking_code.txt file) to each SharePoint WFE. The tracking code should be placed in a SharePoint common .js file.
Edit the [ca.src] and [script.src] values (copy the values from your current code) -[ca.src]:
ca.src='http://[server name]:[port]/CardioLogAgent/ca.aspx?_random='+Math.random();
[script.src]:
tt.src='http://[server name]:[port]/CardioLogAgent/AgentEmbed.aspx?env=[SharePoint version]&r='+Math.random()*100000;http://[server name]:[port]/: 'http://cardiolog server name:port/'
[SharePoint version]: MOSS2007, SP2010 or SP2013 - Verify that the CardioLog user account has read permissions to the SharePoint databases and TEMPLATE folder on the backup farm.
- Keep an alternate Web.config file for the CardioLog [SP20XXTree] web application (XX - 07 for MOSS 2007, 10 for SharePoint 2010, 13 for SharePoint 2013), which includes the proper configuration settings for connecting to the SharePoint backup farm servers:
- Edit the SharePoint database connection string in the web.config file:
<connectionStrings>
<add name="configDB" connectionString="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=[SharePoint Configuration Database Name];Data Source=
[SharePoint Database Server Name]" />
<add name="contentDB" connectionString="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog={0};Data Source={1}" />
</connectionStrings>[SharePoint Configuration Database Name] - edit the SharePoint config database name
[SharePoint Database Server Name] - edit the SharePoint database server name- Edit the following keys in the web.config file:
<add key="includedWebApps" value="[SharePoint web application root URL]" />
<add key="SharePointTemplatePath" value="[SharePoint TEMPLATE path]" />
[SharePoint web application root URL] - a '*' separated list of the monitored SharePoint web applications in the farm
[SharePoint TEMPLATE path] - edit the SharePoint TEMPLATE folder path:
\\SharePoint WFE server name\C$\Program Files\Common Files\Microsoft Shared\Web Server Extensions\XX\TEMPLATE\ (XX - 12 for MOSS 2007, 14 for SharePoint 2010 and 15 for SharePoint 2013) - Test the configuration of the alternate Web.config file by dropping the file to the [SP20XXTree] directory and browsing http:// [CardioLog server name]/[SP20XXTree]/default.aspx. Verify you get an XML response displaying the portal tree structure.
- In case of a failover, drop the alternate Web.config file into the [SP20XXTree] directory.
[SP20XXTree] - SP2007Tree for MOSS 2007, SP2010Tree for SharePoint 2010 or SP2013Tree for SharePoint 2013