LD.Sitecore.LogAnalyzer.Azure
A better version of the Azure plugin for Sitecore Log Analyzer.
This module is meant to replace the default Azure plugin that comes with Sitecore Log Analyzer.
Background
The problem with the original plugin is that the date/time filter is performed on the Timestamp
column for
the WADLogsTable
table on your Azure table storage. This is a no-no, as this column is not indexed, so in effect the query amounts to a simple table scan. For chatty logs, this may take hours to process, or even fail altogether.
This plugin performs the query the right way, i.e. it queries on the PartitionKey
column which is indexed,
which leads to an efficiency gain of many orders of magnitude. For all intents and purposes, the plugin behaves in exactly the same way as the default plugin that's shipped with SCLA.
Installation and Use
Clone the repository and build the LD.SitecoreLogAnalyzer.Modules.Azure.Present
project. In order to build successfully, you have to copy into the /Libraries
directory the following files from SCLA's bin directory:
- Microsoft.WindowsAzure.Storage.dll
- Ninject.dll
- SitecoreLogAnalyzer.Common.dll
- SitecoreLogAnalyzer.Kernel.dll
- SitecoreLogAnalyzer.exe
After building, copy LD.SitecoreLogAnalyzer.Modules.Azure.Present.dll
and LD.SitecoreLogAnalyzer.Modules.Azure.dll
from your output directory to SCLA's bin directory. Then, edit SitecoreLogAnalyzer.config, and add the following in the configuration/modules
section:
<add name="Azure Storage Table (LD)" assembly="LD.SitecoreLogAnalyzer.Modules.Azure">
<invoker type="LD.Sitecore.LogAnalyzer.Modules.Azure.Presentation.AzureSourceInvoker, LD.SitecoreLogAnalyzer.Modules.Azure.Present" image="..\Resources\Azure.png"></invoker>
</add>
You can use the SitecoreLogAnalyzer.Azure.config
configuration file to store your Azure storage account's credentials. This file is also used by SCLA's default Azure plugin, so if you choose to use the two plugins side-by-side, you may store your credentials in a new file called SitecoreLogAnalyzer.Azure.config
. This plugin will give preference to that file if it can find it.