本文整理汇总了Python中xlog.error函数的典型用法代码示例。如果您正苦于以下问题:Python error函数的具体用法?Python error怎么用?Python error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了error函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: save_ip_list
def save_ip_list(self, force=False):
if not force:
if self.iplist_need_save == 0:
return
if time.time() - self.iplist_saved_time < 10:
return
self.iplist_saved_time = time.time()
try:
self.ip_lock.acquire()
ip_dict = sorted(self.ip_dict.items(), key=lambda x: x[1]['handshake_time'])
with open(self.good_ip_file, "w") as fd:
for ip_str, property in ip_dict:
fd.write( "%s %s %s %d\n" % (ip_str, property['domain'], property['server'], property['handshake_time']) )
with open(self.bad_ip_file, "w") as fd:
for ip in self.bad_ip_pool:
xlog.debug("save bad ip:%s", ip)
fd.write("%s\n" % (ip))
self.iplist_need_save = 0
except Exception as e:
xlog.error("save good_ip.txt fail %s", e)
finally:
self.ip_lock.release()
开发者ID:az0ne,项目名称:XX-Net,代码行数:26,代码来源:google_ip.py
示例2: try_sort_ip_by_handshake_time
def try_sort_ip_by_handshake_time(self, force=False):
if time.time() - self.last_sort_time_for_gws < 10 and not force:
return
self.last_sort_time_for_gws = time.time()
self.ip_lock.acquire()
try:
ip_dict_handshake_time = {}
for ip_str in self.ip_dict:
if 'gws' not in self.ip_dict[ip_str]['server']:
continue
ip_dict_handshake_time[ip_str] = self.ip_dict[ip_str]['handshake_time']
ip_time = sorted(ip_dict_handshake_time.items(), key=operator.itemgetter(1))
self.gws_ip_list = [ip_str for ip_str,handshake_time in ip_time]
except Exception as e:
xlog.error("try_sort_ip_by_handshake_time:%s", e)
finally:
self.ip_lock.release()
time_cost = (( time.time() - self.last_sort_time_for_gws) * 1000)
if time_cost > 30:
xlog.debug("sort ip time:%dms", time_cost) # 5ms for 1000 ip. 70~150ms for 30000 ip.
self.adjust_scan_thread_num()
开发者ID:az0ne,项目名称:XX-Net,代码行数:26,代码来源:google_ip.py
示例3: add_ip
def add_ip(self, ip_str, handshake_time, domain=None, server=None):
if not isinstance(ip_str, basestring):
xlog.error("add_ip input")
handshake_time = int(handshake_time)
self.ip_lock.acquire()
try:
if ip_str in self.ip_dict:
self.ip_dict[ip_str]['handshake_time'] = handshake_time
self.ip_dict[ip_str]['timeout'] = 0
self.ip_dict[ip_str]['history'].append([time.time(), handshake_time])
return False
self.iplist_need_save = 1
self.ip_dict[ip_str] = {'handshake_time':handshake_time, 'domain':domain, 'server':server,
'timeout':0, "history":[[time.time(), handshake_time]], "fail_time":0,
"get_time":0}
if 'gws' in server:
self.gws_ip_list.append(ip_str)
return True
except Exception as e:
xlog.error("set_ip err:%s", e)
finally:
self.ip_lock.release()
return False
开发者ID:az0ne,项目名称:XX-Net,代码行数:28,代码来源:google_ip.py
示例4: try_sort_gws_ip
def try_sort_gws_ip(self, force=False):
if time.time() - self.last_sort_time_for_gws < 10 and not force:
return
self.ip_lock.acquire()
self.last_sort_time_for_gws = time.time()
try:
self.good_ip_num = 0
ip_rate = {}
for ip_str in self.ip_dict:
if "gws" not in self.ip_dict[ip_str]["server"]:
continue
ip_rate[ip_str] = self.ip_dict[ip_str]["handshake_time"] + (self.ip_dict[ip_str]["fail_times"] * 1000)
if self.ip_dict[ip_str]["fail_times"] == 0:
self.good_ip_num += 1
ip_time = sorted(ip_rate.items(), key=operator.itemgetter(1))
self.gws_ip_list = [ip_str for ip_str, rate in ip_time]
except Exception as e:
xlog.error("try_sort_ip_by_handshake_time:%s", e)
finally:
self.ip_lock.release()
time_cost = (time.time() - self.last_sort_time_for_gws) * 1000
if time_cost > 30:
xlog.debug("sort ip time:%dms", time_cost) # 5ms for 1000 ip. 70~150ms for 30000 ip.
self.adjust_scan_thread_num()
开发者ID:sun3596209,项目名称:XX-Net,代码行数:29,代码来源:google_ip.py
示例5: update_ip
def update_ip(self, ip_str, handshake_time):
if not isinstance(ip_str, basestring):
xlog.error("set_ip input")
handshake_time = int(handshake_time)
if handshake_time < 5: # this is impossible
return
self.ip_lock.acquire()
try:
if ip_str in self.ip_dict:
# Case: some good ip, average handshake time is 300ms
# some times ip package lost cause handshake time become 2000ms
# this ip will not return back to good ip front until all become bad
# There for, prevent handshake time increase too quickly.
org_time = self.ip_dict[ip_str]['handshake_time']
if handshake_time - org_time > 500:
self.ip_dict[ip_str]['handshake_time'] = org_time + 500
else:
self.ip_dict[ip_str]['handshake_time'] = handshake_time
self.ip_dict[ip_str]['timeout'] = 0
self.ip_dict[ip_str]['history'].append([time.time(), handshake_time])
self.ip_dict[ip_str]["fail_time"] = 0
self.iplist_need_save = 1
return
#logging.debug("update ip:%s not exist", ip_str)
except Exception as e:
xlog.error("update_ip err:%s", e)
finally:
self.ip_lock.release()
self.save_ip_list()
开发者ID:az0ne,项目名称:XX-Net,代码行数:35,代码来源:google_ip.py
示例6: start_connect_register
def start_connect_register(high_prior=False):
global high_prior_connecting_num, low_prior_connecting_num, last_connect_time
if not connect_interval:
return
ccc_lock.acquire()
try:
if high_prior_connecting_num + low_prior_connecting_num > config.https_max_connect_thread:
atom_lock = threading.Lock()
atom_lock.acquire()
if high_prior:
high_prior_lock.append(atom_lock)
else:
low_prior_lock.append(atom_lock)
ccc_lock.release()
atom_lock.acquire()
ccc_lock.acquire()
last_connect_interval = time.time() - last_connect_time
if last_connect_interval < 0:
xlog.error("last_connect_interval:%f", last_connect_interval)
return
if last_connect_interval < connect_interval/1000.0:
wait_time = connect_interval/1000.0 - last_connect_interval
time.sleep(wait_time)
if high_prior:
high_prior_connecting_num += 1
else:
low_prior_connecting_num += 1
finally:
last_connect_time = time.time()
ccc_lock.release()
开发者ID:guoyunliang,项目名称:XX-Net,代码行数:35,代码来源:connect_control.py
示例7: save_ip_list
def save_ip_list(self, force=False):
if not force:
if self.iplist_need_save == 0:
return
if time.time() - self.iplist_saved_time < 10:
return
self.iplist_saved_time = time.time()
try:
self.ip_lock.acquire()
ip_dict = sorted(self.ip_dict.items(), key=lambda x: (x[1]["handshake_time"] + x[1]["fail_times"] * 1000))
with open(self.good_ip_file, "w") as fd:
for ip_str, property in ip_dict:
fd.write(
"%s %s %s %d %d\n"
% (
ip_str,
property["domain"],
property["server"],
property["handshake_time"],
property["fail_times"],
)
)
self.iplist_need_save = 0
except Exception as e:
xlog.error("save good_ip.txt fail %s", e)
finally:
self.ip_lock.release()
开发者ID:sun3596209,项目名称:XX-Net,代码行数:30,代码来源:google_ip.py
示例8: get_host_ip
def get_host_ip(self, host):
self.try_sort_ip_by_handshake_time()
self.ip_lock.acquire()
try:
ip_num = len(self.ip_dict)
if ip_num == 0:
#logging.warning("no gws ip")
time.sleep(1)
return None
for ip_str in self.ip_dict:
domain = self.ip_dict[ip_str]["domain"]
if domain != host:
continue
get_time = self.ip_dict[ip_str]["get_time"]
if time.time() - get_time < 10:
continue
handshake_time = self.ip_dict[ip_str]["handshake_time"]
fail_time = self.ip_dict[ip_str]["fail_time"]
if time.time() - fail_time < 300:
continue
xlog.debug("get host:%s ip:%s t:%d", host, ip_str, handshake_time)
self.ip_dict[ip_str]['history'].append([time.time(), "get"])
self.ip_dict[ip_str]['get_time'] = time.time()
return ip_str
except Exception as e:
xlog.error("get_gws_ip fail:%s", e)
traceback.print_exc()
finally:
self.ip_lock.release()
开发者ID:az0ne,项目名称:XX-Net,代码行数:33,代码来源:google_ip.py
示例9: req_log_handler
def req_log_handler(self):
req = urlparse.urlparse(self.path).query
reqs = urlparse.parse_qs(req, keep_blank_values=True)
data = ''
cmd = "get_last"
if reqs["cmd"]:
cmd = reqs["cmd"][0]
if cmd == "set_buffer_size" :
if not reqs["buffer_size"]:
data = '{"res":"fail", "reason":"size not set"}'
mimetype = 'text/plain'
self.send_response(mimetype, data)
return
buffer_size = reqs["buffer_size"][0]
xlog.set_buffer_size(buffer_size)
elif cmd == "get_last":
max_line = int(reqs["max_line"][0])
data = xlog.get_last_lines(max_line)
elif cmd == "get_new":
last_no = int(reqs["last_no"][0])
data = xlog.get_new_lines(last_no)
else:
xlog.error('PAC %s %s %s ', self.address_string(), self.command, self.path)
mimetype = 'text/plain'
self.send_response(mimetype, data)
开发者ID:hzg0102,项目名称:XX-Net,代码行数:28,代码来源:web_control.py
示例10: get_gws_ip
def get_gws_ip(self):
self.try_sort_gws_ip()
self.ip_lock.acquire()
try:
ip_num = len(self.gws_ip_list)
if ip_num == 0:
#logging.warning("no gws ip")
time.sleep(10)
return None
for i in range(ip_num):
if self.gws_ip_pointer >= ip_num:
if time.time() - self.gws_ip_pointer_reset_time < 1:
time.sleep(1)
continue
else:
self.gws_ip_pointer = 0
self.gws_ip_pointer_reset_time = time.time()
elif self.gws_ip_pointer > 0 and time.time() - self.gws_ip_pointer_reset_time > 3:
self.gws_ip_pointer = 0
self.gws_ip_pointer_reset_time = time.time()
ip_str = self.gws_ip_list[self.gws_ip_pointer]
get_time = self.ip_dict[ip_str]["get_time"]
if time.time() - get_time < self.ip_connect_interval:
self.gws_ip_pointer += 1
continue
if time.time() - self.ip_dict[ip_str]['success_time'] > 300: # 5 min
fail_connect_interval = 1800 # 30 min
else:
fail_connect_interval = 120 # 2 min
fail_time = self.ip_dict[ip_str]["fail_time"]
if time.time() - fail_time < fail_connect_interval:
self.gws_ip_pointer += 1
continue
time_now = time.time()
active_time = self.ip_dict[ip_str]['data_active']
transfered_data = self.ip_dict[ip_str]['transfered_data'] - ((time_now - active_time) * config.ip_traffic_quota)
if transfered_data > config.ip_traffic_quota_base:
self.gws_ip_pointer += 1
continue
handshake_time = self.ip_dict[ip_str]["handshake_time"]
xlog.debug("get ip:%s t:%d", ip_str, handshake_time)
self.ip_dict[ip_str]['history'].append([time.time(), "get"])
self.ip_dict[ip_str]['get_time'] = time.time()
self.gws_ip_pointer += 1
return ip_str
except Exception as e:
xlog.error("get_gws_ip fail:%s", e)
traceback.print_exc()
finally:
self.ip_lock.release()
开发者ID:neteasy-work,项目名称:XX-Net,代码行数:57,代码来源:google_ip.py
示例11: report_connect_closed
def report_connect_closed(self, ip_str, reason=""):
xlog.debug("%s close:%s", ip_str, reason)
self.ip_lock.acquire()
try:
if ip_str in self.ip_dict:
self.ip_dict[ip_str]["links"] -= 1
self.append_ip_history(ip_str, "C[%s]" % reason)
except Exception as e:
xlog.error("report_connect_closed err:%s", e)
finally:
self.ip_lock.release()
开发者ID:sun3596209,项目名称:XX-Net,代码行数:11,代码来源:google_ip.py
示例12: load_sock
def load_sock():
if config.PROXY_ENABLE:
if config.PROXY_TYPE == "HTTP":
proxy_type = socks.HTTP
elif config.PROXY_TYPE == "SOCKS4":
proxy_type = socks.SOCKS4
elif config.PROXY_TYPE == "SOCKS5":
proxy_type = socks.SOCKS5
else:
xlog.error("proxy type %s unknown, disable proxy", config.PROXY_TYPE)
config.PROXY_ENABLE = 0
if config.PROXY_ENABLE:
socks.set_default_proxy(proxy_type, config.PROXY_HOST, config.PROXY_PORT, config.PROXY_USER, config.PROXY_PASSWD)
开发者ID:hzg0102,项目名称:XX-Net,代码行数:14,代码来源:connect_manager.py
示例13: head_request
def head_request(self, ssl_sock):
if ssl_sock.host == '':
ssl_sock.appid = appid_manager.get_appid()
if not ssl_sock.appid:
xlog.error("no appid can use")
return False
host = ssl_sock.appid + ".appspot.com"
ssl_sock.host = host
else:
host = ssl_sock.host
# public appid don't keep alive, for quota limit.
if ssl_sock.appid.startswith("xxnet-") and ssl_sock.appid[7:].isdigit():
#logging.info("public appid don't keep alive")
#self.keep_alive = 0
return False
#logging.debug("head request %s", host)
request_data = 'HEAD /_gh/ HTTP/1.1\r\nHost: %s\r\n\r\n' % host
response = None
try:
ssl_sock.settimeout(10)
ssl_sock.sock.settimeout(10)
data = request_data.encode()
ret = ssl_sock.send(data)
if ret != len(data):
xlog.warn("head send len:%d %d", ret, len(data))
response = httplib.HTTPResponse(ssl_sock, buffering=True)
response.begin()
status = response.status
if status != 200:
xlog.debug("app head fail status:%d", status)
raise Exception("app check fail")
return True
except httplib.BadStatusLine as e:
inactive_time = time.time() - ssl_sock.last_use_time
xlog.debug("%s keep alive fail, time:%d", ssl_sock.ip, inactive_time)
return False
except Exception as e:
xlog.debug("head request fail:%r", e)
return False
finally:
if response:
response.close()
开发者ID:huangjingfang,项目名称:XX-Net,代码行数:49,代码来源:connect_manager.py
示例14: load_range_content
def load_range_content(self):
if os.path.isfile(user_range_file):
self.range_file = user_range_file
else:
self.range_file = default_range_file
xlog.info("load ip range file:%s", self.range_file)
fd = open(self.range_file, "r")
if not fd:
xlog.error("load ip range %s fail", self.range_file)
return
content = fd.read()
fd.close()
return content
开发者ID:sun3596209,项目名称:XX-Net,代码行数:15,代码来源:google_ip_range.py
示例15: get_gws_ip
def get_gws_ip(self):
self.try_sort_ip_by_handshake_time()
self.ip_lock.acquire()
try:
ip_num = len(self.gws_ip_list)
for i in range(ip_num):
if ip_num == 0:
#logging.warning("no gws ip")
time.sleep(1)
return None
if self.gws_ip_pointer >= ip_num:
if time.time() - self.gws_ip_pointer_reset_time < 1:
time.sleep(1)
continue
else:
self.gws_ip_pointer = 0
self.gws_ip_pointer_reset_time = time.time()
elif self.gws_ip_pointer > 0 and time.time() - self.gws_ip_pointer_reset_time > 3:
self.gws_ip_pointer = 0
self.gws_ip_pointer_reset_time = time.time()
ip_str = self.gws_ip_list[self.gws_ip_pointer]
if self.is_bad_ip(ip_str):
self.gws_ip_pointer += 1
continue
get_time = self.ip_dict[ip_str]["get_time"]
if time.time() - get_time < self.ip_connect_interval:
self.gws_ip_pointer += 1
continue
handshake_time = self.ip_dict[ip_str]["handshake_time"]
fail_time = self.ip_dict[ip_str]["fail_time"]
if time.time() - fail_time < 300:
self.gws_ip_pointer += 1
continue
xlog.debug("get ip:%s t:%d", ip_str, handshake_time)
self.ip_dict[ip_str]['history'].append([time.time(), "get"])
self.ip_dict[ip_str]['get_time'] = time.time()
self.gws_ip_pointer += 1
return ip_str
except Exception as e:
xlog.error("get_gws_ip fail:%s", e)
traceback.print_exc()
finally:
self.ip_lock.release()
开发者ID:az0ne,项目名称:XX-Net,代码行数:47,代码来源:google_ip.py
示例16: add_ip
def add_ip(self, ip_str, handshake_time, domain=None, server="", fail_times=0):
if not isinstance(ip_str, basestring):
xlog.error("add_ip input")
return
if config.USE_IPV6 and ":" not in ip_str:
xlog.warn("add %s but ipv6", ip_str)
return
handshake_time = int(handshake_time)
self.ip_lock.acquire()
try:
if ip_str in self.ip_dict:
self.ip_dict[ip_str]["handshake_time"] = handshake_time
self.ip_dict[ip_str]["fail_times"] = fail_times
self.ip_dict[ip_str]["fail_time"] = 0
self.append_ip_history(ip_str, handshake_time)
return False
self.iplist_need_save = 1
self.good_ip_num += 1
self.ip_dict[ip_str] = {
"handshake_time": handshake_time,
"fail_times": fail_times,
"transfered_data": 0,
"data_active": 0,
"domain": domain,
"server": server,
"history": [[time.time(), handshake_time]],
"fail_time": 0,
"success_time": 0,
"get_time": 0,
"links": 0,
}
if "gws" in server:
self.gws_ip_list.append(ip_str)
return True
except Exception as e:
xlog.exception("add_ip err:%s", e)
finally:
self.ip_lock.release()
return False
开发者ID:sun3596209,项目名称:XX-Net,代码行数:45,代码来源:google_ip.py
示例17: load_proxy_config
def load_proxy_config():
global default_socket
if config.PROXY_ENABLE:
if config.PROXY_TYPE == "HTTP":
proxy_type = socks.HTTP
elif config.PROXY_TYPE == "SOCKS4":
proxy_type = socks.SOCKS4
elif config.PROXY_TYPE == "SOCKS5":
proxy_type = socks.SOCKS5
else:
xlog.error("proxy type %s unknown, disable proxy", config.PROXY_TYPE)
raise
socks.set_default_proxy(
proxy_type, config.PROXY_HOST, config.PROXY_PORT, config.PROXY_USER, config.PROXY_PASSWD
)
default_socket = socket.socket
开发者ID:sun3596209,项目名称:XX-Net,代码行数:18,代码来源:check_ip.py
示例18: update_ip
def update_ip(self, ip_str, handshake_time):
if not isinstance(ip_str, basestring):
xlog.error("set_ip input")
return
handshake_time = int(handshake_time)
if handshake_time < 5: # that's impossible
xlog.warn("%s handshake:%d impossible", ip_str, 1000 * handshake_time)
return
self.ip_lock.acquire()
try:
if ip_str in self.ip_dict:
time_now = time.time()
# Case: some good ip, average handshake time is 300ms
# some times ip package lost cause handshake time become 2000ms
# this ip will not return back to good ip front until all become bad
# There for, prevent handshake time increase too quickly.
org_time = self.ip_dict[ip_str]["handshake_time"]
if handshake_time - org_time > 500:
self.ip_dict[ip_str]["handshake_time"] = org_time + 500
else:
self.ip_dict[ip_str]["handshake_time"] = handshake_time
self.ip_dict[ip_str]["success_time"] = time_now
if self.ip_dict[ip_str]["fail_times"] > 0:
self.good_ip_num += 1
self.ip_dict[ip_str]["fail_times"] = 0
self.append_ip_history(ip_str, handshake_time)
self.ip_dict[ip_str]["fail_time"] = 0
self.iplist_need_save = 1
# logging.debug("update ip:%s not exist", ip_str)
except Exception as e:
xlog.error("update_ip err:%s", e)
finally:
self.ip_lock.release()
self.save_ip_list()
开发者ID:sun3596209,项目名称:XX-Net,代码行数:41,代码来源:google_ip.py
示例19: report_ip_traffic
def report_ip_traffic(self, ip_str, bytes):
if bytes == 0:
return
self.ip_lock.acquire()
try:
if ip_str in self.ip_dict:
time_now = time.time()
active_time = self.ip_dict[ip_str]['data_active']
transfered_data = self.ip_dict[ip_str]['transfered_data'] - ((time_now - active_time) * config.ip_traffic_quota)
if transfered_data < 0:
transfered_data = 0
transfered_data += bytes
self.ip_dict[ip_str]['transfered_data'] = transfered_data
self.ip_dict[ip_str]['data_active'] = time_now
self.ip_dict[ip_str]['history'].append([time.time(), "%d_B" % bytes])
except Exception as e:
xlog.error("report_ip_trafic err:%s", e)
finally:
self.ip_lock.release()
开发者ID:neteasy-work,项目名称:XX-Net,代码行数:22,代码来源:google_ip.py
示例20: do_AGENT
def do_AGENT(self):
def get_crlf(rfile):
crlf = rfile.readline(2)
if crlf != "\r\n":
xlog.warn("chunk header read fail crlf")
request_headers = dict((k.title(), v) for k, v in self.headers.items())
payload = b''
if 'Content-Length' in request_headers:
try:
payload_len = int(request_headers.get('Content-Length', 0))
#logging.debug("payload_len:%d %s %s", payload_len, self.command, self.path)
payload = self.rfile.read(payload_len)
except NetWorkIOError as e:
xlog.error('handle_method_urlfetch read payload failed:%s', e)
return
elif 'Transfer-Encoding' in request_headers:
# chunked, used by facebook android client
payload = ""
while True:
chunk_size_str = self.rfile.readline(65537)
chunk_size_list = chunk_size_str.split(";")
chunk_size = int("0x"+chunk_size_list[0], 0)
if len(chunk_size_list) > 1 and chunk_size_list[1] != "\r\n":
xlog.warn("chunk ext: %s", chunk_size_str)
if chunk_size == 0:
while True:
line = self.rfile.readline(65537)
if line == "\r\n":
break
else:
xlog.warn("entity header:%s", line)
break
payload += self.rfile.read(chunk_size)
get_crlf(self.rfile)
gae_handler.handler(self.command, self.path, request_headers, payload, self.wfile)
开发者ID:23niu,项目名称:XX-Net,代码行数:38,代码来源:proxy_handler.py
注:本文中的xlog.error函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论