Software > WeeWX

Errores de envio sftp por tunel vpn

(1/3) > >>

chve:
Estoy probando la estación aislada y estoy teniendo problemas con la recepción de archivos via sftp. Amenudo se me cuelga al enviar lo generado por weewx.
Tengo weewx en una raspy 3 y apache server+wireguard server en una raspy 4. Utilizo wireguard vpn para la conexión entre ambas.
Cuando queda colgado el envió tampoco tengo acceso a la Raspy 3 vía http, pero el acceso ssh siempre esta disponible, aunque de manera limitada, ya que al ver o editar cualquier archivo este lo abre, pro no muestra su contenido y cuelga la conexión ssh.
Dejo el log de cuando esta colgado y de cuando funciona. Tengo una remota idea de por donde puedan ir los tiros, pro no capto el concepto.  :; *+*

SISTEMA COLGADO. Se puede observar como es abortado el envío debido que el anterior aun esta pendiente.

--- Código: ---Sep 12 23:15:26 raspberrypi weewx[569] INFO weewx.manager: Added record 2021-09-12 23:15:00 UTC (1631488500) to database 'weewx.sdb'
Sep 12 23:15:26 raspberrypi weewx[569] INFO weewx.manager: Added record 2021-09-12 23:15:00 UTC (1631488500) to daily summary in 'weewx.sdb'
Sep 12 23:15:26 raspberrypi weewx[569] INFO weewx.engine: Launch of report thread aborted: existing report thread still running
Sep 12 23:16:42 raspberrypi systemd[1]: session-19.scope: Succeeded.
Sep 12 23:17:01 raspberrypi CRON[8574]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR paramiko.transport: Socket exception: Expiró el tiempo de conexión (110)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine: Caught unrecoverable exception in generator 'user.sftp.SFTPGenerator'
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****  Server connection dropped:
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp_client.py", line 843, in _read_response
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      t, data = self._read_packet()
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp.py", line 201, in _read_packet
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      x = self._read_all(4)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp.py", line 188, in _read_all
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      raise EOFError()
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****  EOFError
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         **** 
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****  During handling of the above exception, another exception occurred:
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         **** 
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 196, in run
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      obj.start()
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 281, in start
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      self.run()
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/user/sftp.py", line 259, in run
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      n = uploader.run()
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/user/sftp.py", line 132, in run
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      con.put(full_local_path, full_remote_path)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/pysftp/__init__.py", line 364, in put
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      confirm=confirm)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp_client.py", line 759, in put
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      return self.putfo(fl, remotepath, file_size, callback, confirm)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp_client.py", line 717, in putfo
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      reader=fl, writer=fr, file_size=file_size, callback=callback
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/util.py", line 304, in __exit__
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      self.close()
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp_file.py", line 82, in close
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      self._close(async_=False)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp_file.py", line 104, in _close
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      self.sftp._request(CMD_CLOSE, self.handle)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp_client.py", line 813, in _request
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      return self._read_response(num)
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****    File "/usr/local/lib/python3.7/dist-packages/paramiko/sftp_client.py", line 845, in _read_response
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****      raise SSHException("Server connection dropped: {}".format(e))
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****  paramiko.ssh_exception.SSHException: Server connection dropped:
Sep 12 23:17:28 raspberrypi weewx[569] ERROR weewx.reportengine:         ****  Generator terminated
Sep 12 23:17:28 raspberrypi weewx[569] INFO paramiko.transport.sftp: [chan 0] sftp session closed.
--- Fin del código ---

FUNCIONAMIENTO CORRECTO

--- Código: ---Sep 13 00:30:36 raspberrypi weewx[570] INFO weewx.manager: Added record 2021-09-13 00:30:00 UTC (1631493000) to database 'weewx.sdb'
Sep 13 00:30:36 raspberrypi weewx[570] INFO weewx.manager: Added record 2021-09-13 00:30:00 UTC (1631493000) to daily summary in 'weewx.sdb'
Sep 13 00:30:38 raspberrypi weewx[570] INFO weewx.cheetahgenerator: Generated 8 files for report StandardReport in 1.71 seconds
Sep 13 00:30:40 raspberrypi weewx[570] INFO weewx.imagegenerator: Generated 12 images for report StandardReport in 1.97 seconds
Sep 13 00:30:40 raspberrypi weewx[570] INFO weewx.reportengine: Copied 0 files to /var/www/html/weewx
Sep 13 00:30:40 raspberrypi weewx[570] INFO paramiko.transport: Connected (version 2.0, client OpenSSH_7.9p1)
Sep 13 00:30:41 raspberrypi weewx[570] INFO paramiko.transport: Authentication (password) successful!
Sep 13 00:30:41 raspberrypi weewx[570] INFO paramiko.transport.sftp: [chan 0] Opened sftp connection (server version 3)
Sep 13 00:30:47 raspberrypi weewx[570] INFO paramiko.transport.sftp: [chan 0] sftp session closed.
Sep 13 00:30:47 raspberrypi weewx[570] INFO user.sftp: sftpgenerator: transferred 20 files in 6.43 seconds
Sep 13 00:35:36 raspberrypi weewx[570] INFO weewx.manager: Added record 2021-09-13 00:35:00 UTC (1631493300) to database 'weewx.sdb'
Sep 13 00:35:36 raspberrypi weewx[570] INFO weewx.manager: Added record 2021-09-13 00:35:00 UTC (1631493300) to daily summary in 'weewx.sdb'
Sep 13 00:35:38 raspberrypi weewx[570] INFO weewx.cheetahgenerator: Generated 8 files for report StandardReport in 1.71 seconds
Sep 13 00:35:40 raspberrypi weewx[570] INFO weewx.imagegenerator: Generated 12 images for report StandardReport in 1.94 seconds
Sep 13 00:35:40 raspberrypi weewx[570] INFO weewx.reportengine: Copied 0 files to /var/www/html/weewx
Sep 13 00:35:40 raspberrypi weewx[570] INFO paramiko.transport: Connected (version 2.0, client OpenSSH_7.9p1)
Sep 13 00:35:41 raspberrypi weewx[570] INFO paramiko.transport: Authentication (password) successful!
Sep 13 00:35:41 raspberrypi weewx[570] INFO paramiko.transport.sftp: [chan 0] Opened sftp connection (server version 3)
Sep 13 00:35:46 raspberrypi weewx[570] INFO paramiko.transport.sftp: [chan 0] sftp session closed.
Sep 13 00:35:46 raspberrypi weewx[570] INFO user.sftp: sftpgenerator: transferred 20 files in 6.20 seconds
--- Fin del código ---

PRIMERA CONEXION SATISFACTORIA

--- Código: ---Sep 12 23:44:28 raspberrypi weewx[565] INFO __main__: Initializing weewx version 4.5.1
Sep 12 23:44:28 raspberrypi weewx[565] INFO __main__: Using Python 3.7.3 (default, Jan 22 2021, 20:04:44) #012[GCC 8.3.0]
Sep 12 23:44:28 raspberrypi weewx[565] INFO __main__: Platform Linux-5.10.60-v7+-armv7l-with-debian-10.10
Sep 12 23:44:28 raspberrypi weewx[565] INFO __main__: Locale is 'es_ES.UTF-8'
Sep 12 23:44:28 raspberrypi weewx[565] INFO __main__: PID file is /var/run/weewx.pid
Sep 12 23:44:28 raspberrypi weewx[570] INFO __main__: Using configuration file /etc/weewx/weewx.conf
Sep 12 23:44:28 raspberrypi weewx[570] INFO __main__: Debug is 0
Sep 12 23:44:28 raspberrypi weewx[570] INFO weewx.engine: Loading station type Interceptor (user.interceptor)
Sep 12 23:44:28 raspberrypi weewx[494]: Starting weewx weather system: weewx.
Sep 12 23:44:28 raspberrypi systemd[1]: Started LSB: weewx weather system.
Sep 12 23:44:29 raspberrypi weewx[570] INFO user.interceptor: driver version is 0.53
Sep 12 23:44:29 raspberrypi weewx[570] INFO user.interceptor: device type: observer
Sep 12 23:44:29 raspberrypi weewx[570] INFO user.interceptor: mode is listen
Sep 12 23:44:29 raspberrypi weewx[570] INFO user.interceptor: listen on :8001
Sep 12 23:44:29 raspberrypi weewx[570] INFO user.interceptor: sensor map: {'pressure': 'pressure', 'barometer': 'barometer', 'outHumidity': 'humidity_out', 'inHumidity': 'humidity_in', 'outTemp': 'temperature_out', 'inTemp': 'temperature_in', 'windSpeed': 'wind_speed', 'windGust': 'wind_gust', 'windDir': 'wind_dir', 'windGustDir': 'wind_gust_dir', 'radiation': 'solar_radiation', 'dewpoint': 'dewpoint', 'windchill': 'windchill', 'rain': 'rain', 'rainRate': 'rain_rate', 'UV': 'uv', 'txBatteryStatus': 'battery', 'extraTemp1': 'temperature_1', 'extraTemp2': 'temperature_2', 'extraTemp3': 'temperature_3', 'extraHumid1': 'humidity_1', 'extraHumid2': 'humidity_2', 'soilTemp1': 'soil_temperature_1', 'soilTemp2': 'soil_temperature_2', 'soilMoist1': 'soil_moisture_1', 'soilMoist2': 'soil_moisture_2', 'soilMoist3': 'soil_moisture_3', 'soilMoist4': 'soil_moisture_4', 'leafWet1': 'leafwetness_1', 'leafWet2': 'leafwetness_2', 'pm2_5': 'pm2_5', 'extraTemp4': 'temperature_4', 'extraTemp5': 'temperature_5', 'extraTemp6': 'temperature_6', 'extraTemp7': 'temperature_7', 'extraTemp8': 'temperature_8', 'extraHumid3': 'humidity_3', 'extraHumid4': 'humidity_4', 'extraHumid5': 'humidity_5', 'extraHumid6': 'humidity_6', 'extraHumid7': 'humidity_7', 'extraHumid8': 'humidity_8', 'soilTemp3': 'soil_temperature_3', 'soilTemp4': 'soil_temperature_4'}
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.engine: StdConvert target unit is 0x1
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.engine: Archive will use data binding wx_binding
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.engine: Record generation will be attempted in 'hardware'
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.engine: Using archive interval of 300 seconds (specified in weewx configuration)
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.restx: StationRegistry: Registration not requested.
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.restx: Wunderground: Posting not enabled.
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.restx: PWSweather: Posting not enabled.
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.restx: CWOP: Posting not enabled.
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.restx: WOW: Posting not enabled.
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.restx: AWEKAS: Posting not enabled.
Sep 12 23:44:29 raspberrypi weewx[570] INFO __main__: Starting up weewx version 4.5.1
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.manager: Starting backfill of daily summaries
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.manager: Daily summaries up to date
Sep 12 23:44:29 raspberrypi weewx[570] INFO weewx.engine: Starting main packet loop.
Sep 12 23:45:18 raspberrypi weewx[570] INFO user.interceptor: skipping rain measurement of 0.0: no last rain
Sep 12 23:45:22 raspberrypi weewx[570] INFO weewx.cheetahgenerator: Generated 8 files for report StandardReport in 3.88 seconds
Sep 12 23:45:24 raspberrypi weewx[570] INFO weewx.imagegenerator: Generated 12 images for report StandardReport in 2.10 seconds
Sep 12 23:45:24 raspberrypi weewx[570] INFO weewx.reportengine: Copied 0 files to /var/www/html/weewx
Sep 12 23:45:25 raspberrypi weewx[570] INFO paramiko.transport: Connected (version 2.0, client OpenSSH_7.9p1)
Sep 12 23:45:26 raspberrypi weewx[570] INFO paramiko.transport: Authentication (password) successful!
Sep 12 23:45:26 raspberrypi weewx[570] INFO paramiko.transport.sftp: [chan 0] Opened sftp connection (server version 3)
Sep 12 23:45:26 raspberrypi weewx[570] INFO user.sftp: sftp: attempt 1 of 3 failed: [Errno 13] Permission denied
Sep 12 23:45:26 raspberrypi weewx[570] INFO user.sftp: sftp: attempt 2 of 3 failed: [Errno 13] Permission denied
Sep 12 23:45:26 raspberrypi weewx[570] INFO user.sftp: sftp: attempt 3 of 3 failed: [Errno 13] Permission denied
Sep 12 23:45:26 raspberrypi weewx[570] ERROR user.sftp: sftp: failed to upload file /var/www/html/weewx/weekuv.png
Sep 12 23:45:36 raspberrypi weewx[570] INFO paramiko.transport.sftp: [chan 0] sftp session closed.
Sep 12 23:45:36 raspberrypi weewx[570] INFO user.sftp: sftpgenerator: transferred 40 files in 11.61 seconds
--- Fin del código ---

¿tema de permisos?... *-*

Un saludo

B.Santiago:
Tómate la molestia de cumplimentar  esto de una buena vez:

https://forum.meteoclimatic.net/index.php/topic,250.0.html

para no provocar equivocaciones o errores entre los miembros de Meteoclimatic, que no podemos tener dos mil estaciones y pico en la memoria,  y sobre todo para que cualquiera que pueda ver  tus mensajes sepa de qué estación se está hablando.

chve:

--- Cita de: B.Santiago en 13 de Septiembre de 2021, 09:37:02 ---Tómate la molestia de cumplimentar  esto de una buena vez:

https://forum.meteoclimatic.net/index.php/topic,250.0.html

para no provocar equivocaciones o errores entre los miembros de Meteoclimatic, que no podemos tener dos mil estaciones y pico en la memoria,  y sobre todo para que cualquiera que pueda ver  tus mensajes sepa de qué estación se está hablando.

--- Fin de la cita ---

Mis disculpas. Hecho.  ;)

jmviper:
El tema de permisos puede que sea que estás intentado subir los archivos a un directorio de root en la raspi que hace de servidor y no tenga esos permisos.

Cuando tengas problemas de este tipo debes de mirar, aparte de los logs de la parte de cliente (en este caso weewx) también los logs de la parte de servidor a ver porqué deniega la recepción. Mira los logs de sftp en el servidor en /var/log (en log específico de ssh o en syslog).

jantoni:
Yo soy partidario de hacer todo lo más sencillo posible.

Una vez abierto el túnel vpn yo utilizaría el protocolo NFS para utilizar el otro extremo de la conexión como un sistema de ficheros local.

Es fácil, sencillo de configurar y te quitas un driver de weewx de en medio.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa