Energy-efficient fault-tolerant scheduling in a fog-based smart monitoring application