Saturday, July 23, 2016

Check your Sitecore Pipeline/Processor Performance

Is your website running slow? You hooked lots of pipeline/processer in your website may be this is one of the reason of slowness.

How you check the sequence of your pipeline/processor and processing time?

We inject lot of processor/pipeline over the period of time, as per the custom requirement of the project resulted increase the custom configuration files which include custom processor/pipeline patches like after/before or some override the existing pipeline, so the question is how to see consolidate view of your pipeline/processer?

So the all problem is solved by the Sitecore hidden GEM called Pipelines.aspx Page profiler which is available under Website\App_Config\Include\pipeline.aspx

You can hit this page http://sitecore8/sitecore/admin/pipelines.aspx (change your instance name)
By default this is disable like this:

ashish bansal

To enable this renaming the /App_Config/Include/Sitecore.PipelineProfiling.config.disabled file to Sitecore.PipelineProfiling.config

 <configuration xmlns:patch="" xmlns:set="">  
       Specifies whether or not pipeline profiling is enabled. When it is enabled, a profiling snapshot is available   
       at /sitecore/admin/pipelines.aspx.  
       Default value: true  
    <setting name="Pipelines.Profiling.Enabled" set:value="true" />  
       Specifies whether or not the pipeline profiler measures CPU usage. Measuring CPU usage adds a performance overhead  
       to the pipeline but provides additional information about the behavior of the processors.  
       Default value: false  
    <setting name="Pipelines.Profiling.MeasureCpuTime" set:value="false" />  

And set the value true of below setting for gathering more information
<setting name="Pipelines.Profiling.MeasureCpuTime" set:value="true" />

Now hit the URL:

You can check all pipeline/processor are captured in this report, including the custom processor like Diagona.

Below is the explanation of the profiler parameters:

This profiling page data is very useful to pinpoint the processors/pipeline spending most of the time and improve performance by optimizing those specific processors.

I hope you like this blog; feel free to comment your thought or suggestion.

Happy Sitecoring J