use recover to avoid module.Start/Stop panic