Configure the processing service
You can configure how the processing service processes interactions. For example, if you have two or more processing service instances, you can select different channels for each one to process.
To start the Sitecore Universal processing Service web application, make sure that a request has been sent to the web application. To check the status of the processing service, open a browser and navigate to <instance_name>/status
.
There are five configuration files that contain the settings for the processing service in Universal Tracker (UT).
Use patch files to change configurations. Do not edit the configuration files directly.
The configuration files are:
-
<website_name>\sitecore\Sitecore.Tracking.Processing.ChannelManagement\PipelinesConfig\channelTypes.json
This configuration file contains the channels that are defined in Sitecore. The UT processing service only processes interactions from these channels.
Each channel has this structure:
-
Id - the Sitecore item unique identifier for a channel. You find the ID in the Sitecore marketing control panel.
NoteThe default channel IDs in
channelTypes.json
may not match the actual IDs on your installation. To enable the channels, you must enter the correct IDs by opening your Marketing Control Panel, copying the IDs of the channels, and pasting the IDs into the channels inchannelTypes.json
. -
Name - the channel name. Can be different than the name that is set for the channel in Sitecore.
-
TimeOut - defines when the collection service marks an interaction as closed. If an active interaction is not updated for the period of time defined in TimeOut, the collection service marks the interaction closed, retrieves it from storage, and sends it to processing.
-
Type - fully qualified name of the channel type.
-
-
<website_name>\sitecore\Sitecore.Tracking.Processing.ChannelManagement\PipelinesConfig\channelTypeDefinitions.json
This configuration file contains extension points for defining pre-filter, enrichment, and post-filter pipelines for specific channels. The file has the following structure:
-
Channels - an array of channel groups with their pipelines and processors. A group allows you to apply a configuration to a number of channels at once. You do this by adding the channel IDs to the group.
-
GroupName - the name of the channel group. If you name a group default, the definitions in the group will be used for any channel that is not included in any groups. If you name the group anything else, the definitions in it will only be used for channels that are included in the group's IDs array.
-
IDs - an array of channel IDs. The IDs are defined in the
channelTypes.json
file. -
Type - a base channel type definition that uses fully qualified channel pipeline names.
-
PreFilters - the first pipeline the processing engine runs. The pipeline contains two sections:
-
Type - a fully qualified name of a pre-filtering pipeline object.
-
Processors - an array of processors that run inside the pre-filtering pipeline. You can extend this array with your own types by including them in JSON with a fully qualified name.
-
-
Enrichment - the second pipeline the processing engine runs. It contains the same sections as the PreFilters pipeline.
-
PostFilters - the final pipeline the processing engine runs. It contains the same sections as the PreFilters pipeline.
-
-
<website_name>\sitecore\Sitecore.Tracking.Processing.Engine\Config\config.xml
This configuration file contains the basic settings that control the processing engine. The settings are:
-
Tracking.Processing.ProcessingInterval - the length of the interval, in number of seconds, between times when the processing service checks for interactions to process
-
Tracking.Processing.InteractionTimeoutIncrement - buffer, in number of minutes, between attempts at processing a checked out interaction. If there is a processing failure, the service will not attempt to process the interaction again until the InteractionTimeoutIncrement has passed.
-
Tracking.Processing.MaxConcurrency - the number of workers in a pool.
-
Tracking.Processing.BatchSize - number of interactions included for processing in one iteration.
-
Tracking.Processing.ProcessingThresholdPercent - percent of completed interactions at which a new batch is initiated.
-
xConnect.ServiceUrl - connection string to the xConnect service. Specify the hostname of the xConnect service. In a scaled environment, specify the xConnect collection site instead. For example,
<ServiceUrl>https://sc910xp1_collection</ServiceUrl>
. -
xConnect.ClientCertificate - the client certificate for xConnect. For example:
RequestResponse<ClientCertificate>StoreName=My;StoreLocation=LocalMachine;FindType=FindByThumbprint;FindValue=FF4637E7A2CACE7C0754E6B3C3552133E8E85614</ClientCertificate>
You can read more about the xConnect certificates in the Sitecore Experience Platform Installation Guide.
For Azure deployments you must upload the certificate in SSL settings, in the Private certificates section. If you use a self-signed certificate, add
AllowInvalidClientCertificates=true
to the connection string:RequestResponse<ClientCertificate>StoreName=My;StoreLocation=LocalMachine;FindType=FindByThumbprint;FindValue=756432701B71E1622C9CAA308DB39579ABC9C6C7;AllowInvalidClientCertificates=true</ClientCertificate>
-
xConnect.RequestTimeout - timeout for requests to the xConnect server. The default value is two minutes.
-
-
<website_name>\sitecore\Sitecore.Tracking.Processing.ChannelManagement\Config\config.xml
.This configuration file defines the path links for the
ChannelTypesConfig
andChannelDefinitionsConfig
files. -
<website_name>\sitecore\Sitecore.Tracking.SqlServer\Config\config.xml
.This configuration file is a part of UT SQL. It contains the ConnectionString that specifies the connection to the UT SQL database.
NoteThe ConnectionString must be the same for the processing and collection services.