public async Task LogCheck(IStep step) { await logger.Log(new StepLogDto(step.GetType().Name, StepState.Checking)); try { await step.Check(); await logger.Log(new StepLogDto(step.GetType().Name, StepState.CheckOk)); } catch (Exception e) { await logger.Log(new StepLogDto(step.GetType().Name, StepState.CheckException)); throw e; } }