code: def signal_to_exception(signum, frame):
      
      if signum == signal.SIGALRM:
          raise SIGALRMException()
      if signum == signal.SIGHUP:
          raise SIGHUPException()
      if signum == signal.SIGUSR1:
          raise SIGUSR1Exception()
      if signum == signal.SIGUSR2:
          raise SIGUSR2Exception()
      raise SignalException(signum)
docs: Called by the timeout alarm during the collector run time