private LoggerPhaseScope(string phaseName, LogLevel?perfLogLevel, AggregatedPerformanceScope aggregatedPerformanceLogger)
        {
            if (string.IsNullOrWhiteSpace(phaseName))
            {
                throw new ArgumentException("Phase name cannot be null or white space.", nameof(phaseName));
            }

            _ac = AmbientContext.GetOrCreateAmbientContext().CreateBranch();

            _originPhaseName = GetPhaseName();
            phaseName        = _originPhaseName == null ? phaseName : _originPhaseName + "." + phaseName;
            SetPhaseName(phaseName);
            if (perfLogLevel != null)
            {
                _performanceScope = new PerformanceScope("Scope:" + phaseName, perfLogLevel.Value, aggregatedPerformanceLogger);
            }
        }
 public LoggerPhaseScope(string phaseName, LogLevel perfLogLevel, AggregatedPerformanceScope aggregatedPerformanceLogger)
     : this(phaseName, (LogLevel?)perfLogLevel, aggregatedPerformanceLogger)
 {
 }
 public PerformanceScope(string content, LogLevel level, AggregatedPerformanceScope aggregatedPerformanceLogger) : this(content, level)
 {
     _aggregatedPerformanceLogger = aggregatedPerformanceLogger;
 }