class f2bSubscriberDaemon(daemon):
	def __sigTERMhandler(self,signum,frame):
		syslog.syslog("fail2ban-zmq-tools Subscriber: Caught signal %d. Initiating shutdown..." % signum)
		self.quit()

	def run(self):
		syslog.syslog("fail2ban-zmq-tools Subscriber starting")
		signal.signal(signal.SIGTERM,self.__sigTERMhandler)
		signal.signal(signal.SIGINT,self.__sigTERMhandler)
		self.subscriber = Subscriber(subscriberconfig=subscriberconfig)
		self.subscriber.start()
		syslog.syslog("fail2ban-zmq-tools Subscriber running. Main process waiting for termination signal. Threads working.")
		signal.pause()
		syslog.syslog("fail2ban-zmq-tools Subscriber exiting.")
		
	def quit(self):
		signal.signal(signal.SIGTERM,signal.SIG_IGN)
		syslog.syslog("fail2ban-zmq-tools Subscriber: Stopping threads...")
		self.subscriber.join()
Exemple #2
0
class f2bSubscriberDaemon(daemon):
    def __sigTERMhandler(self, signum, frame):
        syslog.syslog("fail2ban-zmq-tools Subscriber: Caught signal %d.\
                       Initiating shutdown..." % signum)
        self.quit()

    def run(self):
        syslog.syslog("fail2ban-zmq-tools Subscriber starting")
        signal.signal(signal.SIGTERM, self.__sigTERMhandler)
        signal.signal(signal.SIGINT, self.__sigTERMhandler)
        self.subscriber = Subscriber(subscriberconfig=subscriberconfig)
        self.subscriber.start()
        syslog.syslog("fail2ban-zmq-tools Subscriber running.\
                       Main process waiting for termination signal.\
                       Threads working.")
        signal.pause()
        syslog.syslog("fail2ban-zmq-tools Subscriber exiting.")

    def quit(self):
        signal.signal(signal.SIGTERM, signal.SIG_IGN)
        syslog.syslog("fail2ban-zmq-tools Subscriber: Stopping threads...")
        self.subscriber.join()
Exemple #3
0
if __name__ == '__main__':
    import time
    from subscriber import Subscriber

    vehicle = Vehicle(STEERING_GPIO, THROTTLE_GPIO, FREQUENCY, MIN_DUTY,
                      IDLE_DUTY, MAX_DUTY, TIMEOUT)
    vehicle.start()

    subscriber = Subscriber(
        port=13337,
        timeout=TIMEOUT * 2,
    )
    subscriber.start()

    subscriber.set_receive_callback(vehicle.add_state_event)

    while 1:
        try:
            time.sleep(1)
        except KeyboardInterrupt:
            break

    subscriber.stop()
    subscriber.join()

    print(repr(vehicle))

    vehicle.stop()
    vehicle.join()