public static PerformanceTimerManager Start(this ILogger logger, string operationName)
    {
        var performanceTimerManager = new PerformanceTimerManager(logger, operationName);

        performanceTimerManager.Start();
        return(performanceTimerManager);
    }
        public IDisposable TimeSubOperation(string subOperationName)
        {
            var timer = new PerformanceTimerManager(_logger, subOperationName);

            timer.Start();
            timer.Checkpoint($"Starting {subOperationName}");
            return(timer);
        }