###前提・実現したいこと
Pythonモジュール paramiko を用いてssh接続しています。
詳細な数は把握できていませんが、大量のファイルを読み込む際、長時間接続したときに以下のエラーが出ます。
###発生している問題・エラーメッセージ
No handlers could be found for logger "paramiko.transport" Traceback (most recent call last): File "/Users/yamano/Dropbox/hotel/python_program/kadouritsu/main/kyoto_db>=50_jalan.py", line 203, in <module> main() File "/Users/yamano/Dropbox/hotel/python_program/kadouritsu/main/kyoto_db>=50_jalan.py", line 199, in main test() File "/Users/yamano/Dropbox/hotel/python_program/kadouritsu/main/kyoto_db>=50_jalan.py", line 90, in test get_data(sftp,files_n2) File "/Users/yamano/Dropbox/hotel/python_program/kadouritsu/main/kyoto_db>=50_jalan.py", line 162, in get_data duplcheck = [] File "/Library/Python/2.7/site-packages/paramiko/util.py", line 322, in __exit__ self.close() File "/Library/Python/2.7/site-packages/paramiko/sftp_file.py", line 72, in close self._close(async=False) File "/Library/Python/2.7/site-packages/paramiko/sftp_file.py", line 93, in _close self.sftp._request(CMD_CLOSE, self.handle) File "/Library/Python/2.7/site-packages/paramiko/sftp_client.py", line 729, in _request return self._read_response(num) File "/Library/Python/2.7/site-packages/paramiko/sftp_client.py", line 761, in _read_response raise SSHException('Server connection dropped: %s' % str(e)) paramiko.ssh_exception.SSHException: Server connection dropped: [Finished in 1561.1s with exit code 1] [shell_cmd: python -u "/Users/yamano/Dropbox/hotel/python_program/kadouritsu/main/kyoto_db>=50_jalan.py"] [dir: /Users/yamano/Dropbox/hotel/python_program/kadouritsu/main] [path: /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin]
###該当のソースコード
実行プログラムはかなり長いので一部割愛します。
python
1HOST_ADDRESS = "xxx.xxx.xx.xx" #データ収集時の接続先ホストIPアドレス 2SSH_PORT = 22 #SSH接続ポート 3SSH_PASSWORD = "xxxxxx" #SSH接続パスワード 4SSH_USERNAME = "xxxxxx" #SHH接続ユーザ名 5#SFTP接続の準備 6conn = paramiko.SSHClient() 7conn.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 8conn.connect(HOST_ADDRESS, port=SSH_PORT, password=SSH_PASSWORD, username=SSH_USERNAME) 9sftp = conn.open_sftp() #ファイルを取得 10f_n = 'xxx/xxx/xx.csv' 11with sftp.open(f_n, "r") as f: 12 lines= f.readlines() 13 ''' 14 処理内容 15 ''' 16
###試したこと
こちらのサイトに記載のエラー内容を見ましたが英語のためいまいち。。
http://stackoverflow.com/questions/35592714/paramiko-sftp-connection-drops-while-uploading-large-file
###補足情報(言語/FW/ツール等のバージョンなど)
クライアントOS MacOS 10.10.4
接続先OS Ubuntu 4.8.2
sshで開いているファイルのサイズは、おおよそ30KBほどで、ループ処理により開いて閉じての読み込み作業を何時間も回しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。