in sample/topic/simple_http_notify_endpoint.py [0:0]
def main(ip_addr, port, endpoint_class=server.SimpleHttpNotifyEndpoint, msg_type=u"XML", prefix=u"http://"):
# init logger
global logger
endpoint_class.access_log_file = "access_log.%s" % port
endpoint_class.msg_type = msg_type
log_file = "endpoint_log.%s" % port
logger = logging.getLogger()
file_handler = logging.handlers.RotatingFileHandler(log_file, maxBytes=100 * 1024 * 1024)
formatter = logging.Formatter(
'[%(asctime)s] [%(name)s] [%(levelname)s] [%(filename)s:%(lineno)d] [%(thread)d] %(message)s',
'%Y-%m-%d %H:%M:%S')
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
logger.setLevel(logging.INFO)
# start endpoint
addr_info = "Start Endpoint! Address: %s%s:%s" % (prefix, ip_addr, port)
print(addr_info)
try:
logger.info(addr_info)
httpd = server.ThreadedHTTPServer(('', port), endpoint_class)
httpd.serve_forever()
except KeyboardInterrupt:
print("Shutting down the simple notify endpoint!")
httpd.socket.close()