private static void DoSafeAction(Action action, ILogger logger) { try { Attempt(action); } catch (Exception e) { logger.Log(MessageLevel.Warning, e.Message); } }