Configuring the Analytics Index
This configuration file helps to track users' search activity so that it can be re-purposed in a meaningful way.
For example, if users search for a term repeatedly and if this term has not been indexed, then you can add content to link to the search term. Alternatively, after data mining a particular search behavior, you can help future users to find terms within pages that are associated with the search term: "Because you have searched for term X, you may also be interested in terms A, B, and C."
To set up an independent index for Analytics queries:
- Navigate to
[Drive]:\[path-to-DSS-root-directory],
and open Search.config in a text editor.ImportantSearch.config acts as a hub for all InSite Search configurations and must be configured before configuring KeymatchSource.config.
The example below displays generic code contained within Search.config. <?xml version="1.0"?> <configuration> <configSections> <section name="Search" type="Ingeniux.Search.Configuration.IndexingConfiguration, Ingeniux.Search"/> </configSections> <Search indexLocation="App_Data\LuceneIndex" synonymsLocation="[Drive]:\[path to DSS root directory]\published\iss-config\Synonyms.xml" indexingEnabled="true" queryMaxClauses="1024"> <Hiliter startTag="<strong>" endTag="</strong>"/> <Settings> <add name="defaultIndexingAnalyzer" value="Ingeniux.Search.Analyzers.StemmingIndexingAnalyzer, Ingeniux.Search"/> <add name="defaultQueryAnalyzer" value="Ingeniux.Search.Analyzers.StemmingQueryAnalyzer, Ingeniux.Search"/> <add name="QueryFieldsFileLocation" value="[Drive]:\[path to DSS root directory]\[subfolder(s)]\QueryFields.xml"/> <add name="DocumentBoostByFacetsFileLocation" value="App_Data\DocumentBoostByFacetsFileLocation.xml"/> <add name="GSearchFieldMapping" value="[Drive]:\[path to DSS root directory]\[subfolder(s)]\GSearchFieldMapping.xml"/> </Settings> <IndexingSources> <add name="CMSPublishedContent" type="Ingeniux.Runtime.Search.DssContentSearchSource" settingsFile="[Drive]:\[path to DSS root directory]\settings\SearchSource.config"/> <add name="KeyMatch" type="Ingeniux.Search.KeyMatchSearchDocumentSource" settingsFile="App_Data\KeymatchSource.config"/> <add name="SpellCheckDictionary" type="Ingeniux.Search.SpellCheckerSearchDocumentSource" settingsFile="App_Data\spellcheckerSource.config"/> <add name="SiteCrawlerSource" type="Ingeniux.Search.HtmlSiteSource" settingsFile="App_Data\sitecrawlerSource.config"/> <add name="Analytics" type="Ingeniux.Search.AnalyticsSearchDocumentSource" settingsFile="App_Data\analyticSource.config"/> </IndexingSources> <SearchProfiles> <add name="Independent-search-profile-1"> <Sources> <add name="KeyMatch"/> <add name="SpellCheckDictionary"/> <add name="analytics"/> </Sources> </add> </SearchProfiles> </Search> </configuration>
- If an
<add>
element doesn't already exist for analytics within the<IndexingSources>
element, create one. Complete the following steps in the<add>
element:- Enter an arbitrary, unique name as the value of the
@name
attribute for identification purposes. - Enter Ingeniux.Search.AnalyticsSearchDocumentSource as the value
of
@type
attribute. - Enter the filepath to AnalyticSource.config for
the value of the
@settingsFile
attribute.NoteYou can use a relative path to the default Keymatch configuration file (i.e., App_Data\AnalyticSource.config), which is included during installation.
For example, your analytics <add>
element and attributes should look similar to the following code: - Enter an arbitrary, unique name as the value of the
- Save and close Search.config.
- Navigate to
[Drive]:\[path-to-DSS-root-directory]\App_Data,
and open AnalyticSource.config in a text editor.
The example below displays generic code contained within AnalyticSource.config. <?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="Search" type="Ingeniux.Search.Configuration.IndependentIndexingSourceConfig, Ingeniux.Search" /> </configSections> <Search indexLocation="App_Data\Index_Analytics"> <Settings> <!-- tracking cycles are year month--> <add name="trackingCycle" value="year" /> <!-- BatchPeriod in seconds --> <add name="batchPeriod" value="300" /> </Settings> </Search> </configuration>
- Locate the
<Search>
element, and enter the filepath to the analytics index files as the value of the@indexLocation
atttribute.NoteThe default value is App_Data\Index_Analytics.For example, the <Search>
element opening tag should look similar to the following code: - Locate the
<Settings>
element, then set the following<add>
name/value pairs:- Locate the
<add>
element with trackingCycle as the@name
attribute value. In the@value
attribute, enter the cycle of saving results to index.NoteThe default value is year. - Locate the
<add>
element with batchPeriod as the@name
attribute value. In the@value
attribute, enter the interval at which results are saved (in seconds).The default value is 300, which is five minutes.
- Locate the
- Save and close AnalyticSource.config.