introduce timeouts
This commit is contained in:
parent
706cc21ab7
commit
3749347005
1 changed files with 7 additions and 4 deletions
|
@ -32,6 +32,7 @@ import requests
|
||||||
import configparser
|
import configparser
|
||||||
from requests.packages.urllib3.exceptions import InsecureRequestWarning
|
from requests.packages.urllib3.exceptions import InsecureRequestWarning
|
||||||
|
|
||||||
|
TIMEOUT = 3
|
||||||
|
|
||||||
logger = logging.getLogger('qrcode_reader')
|
logger = logging.getLogger('qrcode_reader')
|
||||||
logging.basicConfig(level=logging.INFO)
|
logging.basicConfig(level=logging.INFO)
|
||||||
|
@ -96,6 +97,7 @@ class Connector():
|
||||||
|
|
||||||
def login(self):
|
def login(self):
|
||||||
try:
|
try:
|
||||||
|
logger.debug('connecting to eventman at %s' % self.login_url)
|
||||||
self.session = requests.Session()
|
self.session = requests.Session()
|
||||||
self.session.verify = False
|
self.session.verify = False
|
||||||
ca = cfg['eventman'].get('ca')
|
ca = cfg['eventman'].get('ca')
|
||||||
|
@ -108,10 +110,11 @@ class Connector():
|
||||||
params['username'] = username
|
params['username'] = username
|
||||||
if password:
|
if password:
|
||||||
params['password'] = password
|
params['password'] = password
|
||||||
req = self.session.post(self.login_url, json=params)
|
req = self.session.post(self.login_url, json=params, timeout=TIMEOUT)
|
||||||
req.raise_for_status()
|
req.raise_for_status()
|
||||||
req.connection.close()
|
req.connection.close()
|
||||||
except requests.exceptions.ConnectionError as ex:
|
logger.info('connection to eventman at %s established' % self.login_url)
|
||||||
|
except Exception as ex:
|
||||||
logger.error('unable to connect to %s: %s' % (self.login_url, ex))
|
logger.error('unable to connect to %s: %s' % (self.login_url, ex))
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
@ -123,7 +126,7 @@ class Connector():
|
||||||
params = {cfg['event']['field']: code, '_errorMessage': 'code: %s' % code}
|
params = {cfg['event']['field']: code, '_errorMessage': 'code: %s' % code}
|
||||||
checkin_url = self.checkin_url + '?' + urllib.parse.urlencode(params)
|
checkin_url = self.checkin_url + '?' + urllib.parse.urlencode(params)
|
||||||
json = convert(dict(self.cfg['actions']))
|
json = convert(dict(self.cfg['actions']))
|
||||||
req = self.session.put(checkin_url, json=json)
|
req = self.session.put(checkin_url, json=json, timeout=TIMEOUT)
|
||||||
error = False
|
error = False
|
||||||
try:
|
try:
|
||||||
req.raise_for_status()
|
req.raise_for_status()
|
||||||
|
@ -175,7 +178,7 @@ if __name__ == '__main__':
|
||||||
cfg = configparser.ConfigParser(interpolation=configparser.ExtendedInterpolation())
|
cfg = configparser.ConfigParser(interpolation=configparser.ExtendedInterpolation())
|
||||||
cfg.read(args.config)
|
cfg.read(args.config)
|
||||||
if cfg['qrcode_reader'].getboolean('debug'):
|
if cfg['qrcode_reader'].getboolean('debug'):
|
||||||
logging.basicConfig(level=logging.DEBUG)
|
logger.setLevel(logging.DEBUG)
|
||||||
connector = Connector(cfg)
|
connector = Connector(cfg)
|
||||||
if args.code:
|
if args.code:
|
||||||
connector.checkin(args.code)
|
connector.checkin(args.code)
|
||||||
|
|
Loading…
Reference in a new issue