The Sitecore Pipeline Profiler is disabled by default. What is the performance impact when enabling it?
Is it recommended to only do this in development, or can it be safely run in production?
I have tried enabling pipeline profiling in production and there was no noticeable performance penalty, as long as CPU measurements (Pipelines.Profiling.MeasureCpuTime
) were off.
With CPU timings measured, the overall page load time was increased by something like 3% (a rough estimate).
I know this is anecdotal evidence, but I don't believe anyone has actually measured what the impact is, since it is so small. Normally, you'd only enable pipeline profiling if there are already performance issues on your website, so this minimal additional slowdown will not be noticeable.
Depends on what you mean by "safely". If you are investigating performance issues or metrics on your production environment - go ahead and enable it. It will add overhead, but so will any other form of performance measurement.
I would not recommend you leave it running indefinitely however. Switch it on to get your data, then switch it off again.
Performance impact on most systems is negligible. So unless your server is maxed out and struggling for resource, you should be fine.