Page MenuHomePhabricator
Paste P6589

sseclient-hanger.py
ActivePublic

Authored by zhuyifei1999 on Jan 15 2018, 9:03 PM.
Tags
None
Referenced Files
F12580321: sseclient-hanger.py
Jan 15 2018, 9:12 PM
F12579947: sseclient-hanger.py
Jan 15 2018, 9:03 PM
Subscribers
None
#! /usr/bin/python
from __future__ import print_function
from datetime import datetime
import code
import signal
import sys
from sseclient import SSEClient
TIMEOUT = 60
def on_timeout(signum, frame):
print('[{}] Timeout on RC'.format(
datetime.now().isoformat()), file=sys.stderr)
signal.signal(signal.SIGALRM, on_timeout)
signal.alarm(TIMEOUT)
def on_interactreq(signum, frame):
code.interact(local=globals())
signal.signal(signal.SIGUSR1, on_interactreq)
client = SSEClient('https://stream.wikimedia.org/v2/stream/recentchange')
for event in client:
signal.alarm(TIMEOUT)
print(datetime.now().isoformat(), end='\r')