2017-03-13 37 views
1

我試圖通過不同的線程在python連接到主機,但有時得到錯誤(1次在25次執行) 我看到類似的線程,並希望更新點到8.1.1會解決這個問題,但沒有解決。無效的需求,解析錯誤在「''」

代碼片段:

def getkpis(self,cmd,host): 
    ssh=paramiko.SSHClient() 
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
    try: 
     ssh.connect(host,username='root',look_for_keys=True) 
     stdin, stdout, stderr = ssh.exec_command(cmd) 
     paramiko.util.log_to_file("kpiparamiko.log") 
     output=stdout.read() 
     appendarray=output.split('\n') 
     sys.stdin.flush() 
     ssh.close() 
    except paramiko.SSHException, e: 
     print str(e) 

錯誤看出:

Exception in thread Thread-1: 
Traceback (most recent call last): 
File "/usr/lib64/python2.7/threading.py", line 811, in __bootstrap_inner 
self.run() 
File "/usr/lib64/python2.7/threading.py", line 764, in run 
self.__target(*self.__args, **self.__kwargs) 
File "/conf/home/smodugu/kpiparse.py", line 56, in getkpis 
ssh.connect(host,username='root',look_for_keys=True) 
File "/usr/lib/python2.7/site-packages/paramiko/client.py", line 338, in  connect 
t.start_client() 
File "/usr/lib/python2.7/site-packages/paramiko/transport.py", line 493, in  start_client 
raise e 
RequirementParseError: Invalid requirement, parse error at "''" 

回答

0

昨天,我能夠通過使用setuptools的舊版本的來解決這個問題,pip install "setuptools<34"但那麼今天的問題又回來了。我可以通過在排隊線程的循環中添加0.1秒的睡眠來解決這個問題。爲什麼多線程調用paramiko的SSHClient導致這個錯誤與pip/setuptools,我不知道。