public void Dispose() { _stopwatch.Stop(); if (!_supressed) { var duration = _stopwatch.ElapsedMilliseconds; var lykkeLogger = _context.GetLykkeLogger(); var message = GetMessage(); switch (_logLevel) { case LogLevel.Info: lykkeLogger.Info(message, duration, _process, _trigger); break; case LogLevel.Warning: lykkeLogger.Warning(message, duration, _process, _trigger, _exception); break; case LogLevel.Error: lykkeLogger.Error(message, duration, _process, _trigger, _exception); break; case LogLevel.FatalError: lykkeLogger.FatalError(message, duration, _process, _trigger, _exception); break; case LogLevel.Monitoring: lykkeLogger.Monitoring(message, duration, _process, _trigger); break; } } }