docs: async def manage(self):
          """ Manage function docstring"""
          self._vms = await self.iaas.list_vms(self.name)
  
          vms_stat = Counter([vm.get_state() for vm in self._vms])
          missing = self.count - len(self._vms) if len(self._vms) < self.count else 0
          logging.info(
              'VMs Status: %s expected, %s in iaas, %s running, %s nearby shutdown, %s pending, %s after time shutdown, '
              '%s terminated, %s error, %s unknown, %s missing',
              self.count, len(self._vms), vms_stat[VmState.RUNNING.value], vms_stat[VmState.NEARBY_SHUTDOWN.value],
              vms_stat[VmState.PENDING.value], vms_stat[VmState.AFTER_TIME_SHUTDOWN.value],
              vms_stat[VmState.TERMINATED.value], vms_stat[VmState.ERROR.value], vms_stat[VmState.UNKNOWN.value], missing, extra=self._extra
          )
          for vm in self._vms:
              if vm.is_dead():
                  logging.info("Terminate %s", vm, extra=self._extra)
                  await vm.terminate()
                  self.terminated += 1
          to_create = self.count - (len(self._vms) - self.terminated - vms_stat[VmState.NEARBY_SHUTDOWN.value])
          to_create = to_create if to_create > 0 else 0
          logging.debug("Create %s Vm", to_create, extra=self._extra)
          await self._create_vms(to_create)
          await self._healthcheck(self._vms)
          logging.info(
              'VMs Status update: %s terminated, %s terminated by healthcheck, %s created, %s failed healthcheck',
              self.terminated, self.healthcheck_terminated, to_create, len(self.runtime.failed_checks),
              extra=self._extra
          )