Meteoclimatic

Software => WeeWX => Mensaje iniciado por: gmirallesg en 13 de Agosto del 2016, 01:47:21 am

Título: Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: gmirallesg en 13 de Agosto del 2016, 01:47:21 am
Buenas noches!

Me gustaría poder mandar los ficheros de la estación que tengo a dos sitios distintos mediante Ftp. Esto es posible?

Gracias!

Gabriel
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 13 de Agosto del 2016, 07:41:40 am
Pues no lo he probado nunca,  pero seguro que es posible
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 13 de Agosto del 2016, 08:54:19 am
Se me olvidaba, duplica el FTP

Llama a uno

[[FTP1]]

y al otro

[[FTP2]]

El resto de valores según el servidor.....y no cambies el skin. El skin para FTP es que viene, skin=Ftp

Ya nos cuentas
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 19 de Agosto del 2016, 18:26:46 pm
¿Lo probaste?

¿Funcionó?

Dar feedback......todos nos podemos beneficiar
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 24 de Septiembre del 2016, 19:10:58 pm
Hola, estaba intentando hacer esto, pero al duplicar como decía Jantoni no ocurre absolutamente nada: ni se envían los archivos al nuevo servidor, ni aparece ningún tipo de error en el log de Weewx. Es como si se ignoraran los cambios en el archivo, como si no tuviera en cuenta la segunda sección FTP...

¿Alguna idea?
Saludos
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 25 de Septiembre del 2016, 10:12:14 am
Si....que pongas, al menos, las dos secciones FTP, quitando usuarios y password, claro

Adivinos, no somos.....no obstante, a este paso, llegaremos ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 25 de Septiembre del 2016, 11:22:24 am
Ah si, es verdad... se me había pasado:

Código: [Seleccionar]
[[FTP1]]
        # FTP'ing the results to a webserver is treated as just another report,
        # albeit one with an unusual report generator!
        skin = Ftp
       
        # If you wish to use FTP, uncomment and fill out the next four lines.
        user =
        password =
        server =
        path = /.
       
        # Set to True for a secure FTP (SFTP) connection. Not all servers
        # support this.
        secure_ftp = False
       
        # To upload files from something other than what HTML_ROOT is set
        # to above, specify a different HTML_ROOT here.
        #HTML_ROOT = /var/www/weewx
       
        # Most FTP servers use port 21
        port = 21
       
        # Set to 1 to use passive mode, zero for active mode
        passive = 1

[[FTP2]]
        # FTP'ing the results to a webserver is treated as just another report,
        # albeit one with an unusual report generator!
        skin = Ftp
       
        # If you wish to use FTP, uncomment and fill out the next four lines.
        user =
        password =
        server =
        path = /.
       
        # Set to True for a secure FTP (SFTP) connection. Not all servers
        # support this.
        secure_ftp = True
       
        # To upload files from something other than what HTML_ROOT is set
        # to above, specify a different HTML_ROOT here.
        #HTML_ROOT = /var/www/weewx
       
        # Most FTP servers use port 21
        port = 22
       
        # Set to 1 to use passive mode, zero for active mode
        passive = 1

En el servidor 2 utilizo el puerto 22 porque así me lo especificaban en los datos, también el campo secure_ftp es 'True' porque ponían que el protocolo es SFTP. También probé con 'False' y de ninguna de las formas funcionaba.

¿Podría ser por utilizar diferentes puertos?

Saludos y gracias una vez más  ;)
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 25 de Septiembre del 2016, 16:01:03 pm
No....sin haber probado nunca lo que hemos hablado del FTP, ahora que dices que no funciona, puedo ver con claridad lo que pasa, o eso al menos creo.....pero con fiebre todo se emborrona.

Veréis, cuando FTP manda los ficheros de un skin, genera un fichero llamado #FTP.last con la fecha y hora de la última transmisión.

Si los ficheros a transmitir son más antiguos que la hora y fecha a la que apuntan #FTP.last simplemente no se envian.

No sé si hay opción de eliminar la grabación de ese fichero....que además implicaría la transmisión de todos los ficheros que no se cambian nunca.

Opción sencilla, cada FTP envía un skin.

Por lo que habría que duplicar el skin que estés usando y se solucionaría el problema. A costa de CPU, claro
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 25 de Septiembre del 2016, 21:30:39 pm
Gracias Jantoni

Opción sencilla, cada FTP envía un skin.

Por lo que habría que duplicar el skin que estés usando y se solucionaría el problema. A costa de CPU, claro

Esto creo que me vendría como el anillo al dedo, porque precisamente lo que quiero hacer es mandar unos determinados skins a un servidor y otros al otro.

Cuando dices de duplicar el skin, ¿a que te refieres? ¿a duplicar el skin.conf, o los archivos de skin?

Saludos y gracias de nuevo
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 25 de Septiembre del 2016, 23:43:09 pm
Al skin completo, duplicándolo en weewx.conf y copiando el nuevo skin a otro directorio....

Es decir....duplicarlo ;D ;D ;D

Standard y Standardbis
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 25 de Septiembre del 2016, 23:43:55 pm
Ah....y ojo con el HTML_ROOT en weewx.conf
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 28 de Septiembre del 2016, 16:24:37 pm
Hola Jantoni, gracias por responder. Estoy ahora intentando duplicar los skins como dijiste pero hay algo que no termina de funcionar...
Comento lo que he hecho hasta ahora:

-He creado una carpeta, /etc/weewx/skins/Standard_sabi, donde he metido los mismos skins que en Standard, pero he modificado el skin.conf de esa carpeta para que no se generen tantos archivos (de momento para las pruebas sobra, además los skins que quiero enviar al otro servidor serán diferentes). No he tocado nada más de ese skin.conf

-He creado otro directorio,  /var/www/weewx/sabi, donde quiero que se generen los skins que subiré al nuevo servidor.

-He modificado el weewx.conf de esta manera:
Código: [Seleccionar]
[StdReport]
   
    # Where the skins reside, relative to WEEWX_ROOT
    SKIN_ROOT = /etc/weewx/skins
   
    # Where the generated reports should go, relative to WEEWX_ROOT
    HTML_ROOT = /var/www/weewx
   
    # The database binding indicates which data should be used in reports.
    data_binding = wx_binding
   
    # Each of the following subsections defines a report that will be run.
   
    [[StandardReport]]
        # See the customizing guide to change the units, plot types and line
        # colors, modify the fonts, display additional sensor data, and other
        # customizations. Many of those changes can be made here by overriding
        # parameters, or by modifying templates within the skin itself.
       
        # The StandardReport uses the 'Standard' skin, which contains the
        # images, templates and plots for the report.
        skin = Standard
        [[[Units]]]
            [[[[Groups]]]]
                group_altitude = meter
                group_speed2 = km_per_hour2
                group_pressure = mbar
                group_rain = mm
                group_rainrate = mm_per_hour
                group_temperature = degree_C
                group_degree_day = degree_C_day
                group_speed = km_per_hour   
    [[FTP]]
        # FTP'ing the results to a webserver is treated as just another report,
        # albeit one with an unusual report generator!
        skin = Ftp
       
        # If you wish to use FTP, uncomment and fill out the next four lines.
        user = Usuario_servidor_1
        password = Contraseña_servidor_1
        server = Servidor_1
        path = /.
       
        # Set to True for a secure FTP (SFTP) connection. Not all servers
        # support this.
        secure_ftp = False
       
        # To upload files from something other than what HTML_ROOT is set
        # to above, specify a different HTML_ROOT here.
        #HTML_ROOT = /var/www/weewx
       
        # Most FTP servers use port 21
        port = 21
       
        # Set to 1 to use passive mode, zero for active mode
        passive = 1
   
    [[RSYNC]]
        # rsync'ing to a webserver is treated as just another report
        skin = Rsync
       
        # If you wish to use rsync, you must configure passwordless ssh using
        # public/private key authentication from the user account that weewx
        # runs as to the user account on the remote machine where the files
        # will be copied.
        #
        # The following three lines determine where files will be sent.
        #server = replace with the rsync server name, e.g, www.threefools.org
        #path = replace with the rsync destination directory (e.g., /weather)
        #user = replace with the rsync username
       
        # Rsync can be configured to remove files from the remote server if
        # they don't exist under HTML_ROOT locally. USE WITH CAUTION: if you
        # make a mistake in the remote path, you could could unintentionally
        # cause unrelated files to be deleted. Set to 1 to enable remote file
        # deletion, zero to allow files to accumulate remotely.
        delete = 0

    [[Meteosabi]]
        # See the customizing guide to change the units, plot types and line
        # colors, modify the fonts, display additional sensor data, and other
        # customizations. Many of those changes can be made here by overriding
        # parameters, or by modifying templates within the skin itself.
       
        # The StandardReport uses the 'Standard' skin, which contains the
        # images, templates and plots for the report.
        skin = Standard_sabi
        [[[Units]]]
            [[[[Groups]]]]
                group_altitude = meter
                group_speed2 = km_per_hour2
                group_pressure = mbar
                group_rain = mm
                group_rainrate = mm_per_hour
                group_temperature = degree_C
                group_degree_day = degree_C_day
                group_speed = km_per_hour   
    [[FTP2]]
        # FTP'ing the results to a webserver is treated as just another report,
        # albeit one with an unusual report generator!
        skin = Ftp
       
        # If you wish to use FTP, uncomment and fill out the next four lines.
        user = Usuario_servidor_2
        password = Contraseña_servidor_2
        server = Servidor_2
        path = /.
       
        # Set to True for a secure FTP (SFTP) connection. Not all servers
        # support this.
        secure_ftp = False
       
        # To upload files from something other than what HTML_ROOT is set
        # to above, specify a different HTML_ROOT here.
        HTML_ROOT = /var/www/weewx/sabi
       
        # Most FTP servers use port 21
        port = 22
       
        # Set to 1 to use passive mode, zero for active mode
        passive = 1
   
En la configuración del servidor 2, he probado las distintas combinaciones entre Port 21 ó 22, y Secure_FTP=true/false. He descomentado el HTML_ROOT con la ruta del directorio en el que deben estar los archivos a subir al nuevo servidor.

El problema es que en ese directorio no aparece nada, así que malamente se van a subir al servidor... Creo que me habré dejado algo por algún sitio, que de alguna manera "fuerce" a que los archivos se guarden en ese directorio, y lo lógico a mi entender es que estuviera en el skin.conf, pero allí no he encontrado alusiones al directorio donde se suben normalmente.

Por otra parte, en el log aparece lo siguiente:
Código: [Seleccionar]
Sep 28 14:16:04 pi1 weewx[21708]: cheetahgenerator: Generated 32 files for report StandardReport in 44.73 seconds
Sep 28 14:16:08 pi1 weewx[21708]: genimages: Generated 8 images for StandardReport in 4.43 seconds
Sep 28 14:16:28 pi1 weewx[21708]: reportengine: ftp'd 57 files in 19.36 seconds
Sep 28 14:16:54 pi1 weewx[21708]: cheetahgenerator: Generated 5 files for report Meteosabi in 25.60 seconds
Sep 28 14:16:57 pi1 weewx[21708]: genimages: Generated 7 images for Meteosabi in 3.84 seconds
Sep 28 14:16:59 pi1 weewx[21708]: reportengine: ftp'd 0 files in 1.27 seconds

Es decir, de alguna forma se están generando los archivos para el nuevo servidor (Meteosabi), pero ni se suben ni aparecen en el directorio... creo que se generan en el directorio normal, /var/www/weewx, dadas las fechas de modificación de los archivos (hay precisamente 7 imágenes y 5 archivos generados 1 minuto más tarde que los otros).

Tampoco sé si con arreglar esto se solucionará el problema, ya que dependiendo de la elección del puerto o de secure_FTP=true/false, en el log aparecían time-outs por parte del servidor...

Espero estar a punto de conseguirlo y que sea algo sencillo que haya pasado por alto. A ver si me podéis echar un cable...

Gracias, y un saludo ;)
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 28 de Septiembre del 2016, 16:36:02 pm
Acabo de hacer otra prueba, eliminando de la parte del weewx.conf el directorio /var/www/weewx/sabi y poniendo el habitual. Los archivos se han subido al nuevo servidor (y al antiguo también, por supuesto  plau2).

Lo más sencillo creo que será seguir así y utilizar nuevos nombres para los nuevos skins, de forma que no se "solapen".

Gracias Jantoni por indicarme el camino  ;D ;D

EDITO: he encontrado que en el nuevo servidor se ha subido absolutamente todo, no sólo lo que le he indicado en el skin.conf que hay en la carpeta. Como es lógico por otra parte, ya que indicar esos archivos hace que se generen, no que se suban...
¿Hay alguna manera de subir al nuevo servidor unos archivos en concreto en lugar de todos?

Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 30 de Septiembre del 2016, 18:35:52 pm
Miguel.....repítemente como has configurado los dos skin.

Cada skin tiene sus archivos propios.

Y luego, cada FTP mandará los archivos de cada skin (en realidad, los archivos contenidos en el directorio de cada skin)
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 30 de Septiembre del 2016, 18:54:14 pm
En el caso del skin original (Standard), lo he dejado como lo tenía. Es decir, en el directorio /etc/weewx/skins/Standard no he tocado nada (ni el skin.conf).

Para el nuevo skin, lo que he hecho ha sido duplicar y renombrar el directorio /etc/weewx/skins/Standard (ahora es /etc/weewx/skins/Standard_sabi), y en el skin.conf de este nuevo directorio he quitado algunos archivos para que no se generen. El resultado es que de los 40 archivos que se generan para el Standard, sólo se "vuelven a generar" 12 para el Standard_sabi.

Lo que no he conseguido hacer es que estos 12 archivos se guarden en otro directorio distinto para que se suban desde allí al nuevo servidor (y sólo esos 12 archivos, no los 40). Es decir, tal y como lo tengo, se generan en /var/www/weewx los archivos de Standard, y cuando acaba se generan allí mismo los de Standard_sabi. Después, se suben todos los archivos que hay en esa carpeta a ambos servidores. En los skin.conf no hay especificación de dónde se deben guardar los archivos a generar.

Espero no estar mezclando cosas (aunque es probable que sea así)...

Un saludo y gracias por atenderme  ;)
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 30 de Septiembre del 2016, 22:20:48 pm
Ummmmmmm

Pero es que el skin debes indicarlo en /etc/weewx/weewx.conf

Algo así

Citar
[StdReport]
    SKIN_ROOT = /etc/weewx/skins

    HTML_ROOT = /var/www/weewx

    data_binding = wx_binding


    [[StandardReport]]
        skin = Standard

    [[pepitoskin]]
        skin = pepito
        HTML_ROOT = /var/www/weewx/pepito

    [[FTP]]
        skin = Ftp
        user =
        password =
        server =
        path =
        secure_ftp = False
        # If you wish to upload files from something other than what HTML_ROOT
        # is set to above, then reset it here:
        #HTML_ROOT = /var/www/weewx
        port = 21
        passive = 1

    [[pepitoFTP]]
        skin = Ftp
        user =
        password =
        server =
        path =
        secure_ftp = False
        # If you wish to upload files from something other than what HTML_ROOT
        # is set to above, then reset it here:
        HTML_ROOT = /var/www/weewx/pepito
        port = 21
        passive = 1
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 30 de Septiembre del 2016, 23:53:32 pm
Vale, muchas gracias!
Me faltaba la parte de:

    [[pepitoskin]]
        skin = pepito
        HTML_ROOT = /var/www/weewx/pepito


Pensaba que con indicarlo en el FTP bastaria  :;

Mañana lo pruebo y comento el resultado

Saludos
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 01 de Octubre del 2016, 09:59:10 am
Y si duplicas los ficheros de un skin en otro, recuerda eliminar ese archivo que marca la fecha y hora del último envio.
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez? (SOLUCIONADO)
Publicado por: Wlarues en 01 de Octubre del 2016, 15:57:22 pm
Bueno, pues de nuevo muchas gracias Jantoni, ahora ya va como la seda ;D ;D

Voy a resumir lo que he hecho, por si alguien entra en este hilo para que no tenga que leerselo entero

-Para los skins, lo más sencillo es duplicar el /etc/weewx/skins/Standard (de esta forma creas, por ejemplo, el directorio /etc/weewx/skins/Standard_bis).

-Una vez creado este directorio, modificar el skin.conf que está dentro para que se generen los archivos e imágenes que convengan para el nuevo servidor.

-Crear un directorio vacío PARALELO al /var/www/weewx (por ejemplo, /var/www/weewx_bis), ya que si se crea dentro del primero, al servidor original se suben todos los archivos (incluidos los que deben ir al nuevo servidor).

-Modificar el weewx.conf (en /etc/weewx/weewx.conf) como indicaba Jantoni en el mensaje anterior, es decir:
Código: [Seleccionar]
[StdReport]
    SKIN_ROOT = /etc/weewx/skins

    HTML_ROOT = /var/www/weewx

    data_binding = wx_binding


    [[StandardReport]]
        skin = Standard

    [[pepitoskin]]
        skin = Standard_bis
        HTML_ROOT = /var/www/weewx_bis

    [[FTP]]
        skin = Ftp
        user =
        password =
        server =
        path =
        secure_ftp = False
        # If you wish to upload files from something other than what HTML_ROOT
        # is set to above, then reset it here:
        #HTML_ROOT = /var/www/weewx
        port = 21
        passive = 1

    [[FTP_bis]]
        skin = Ftp
        user =
        password =
        server =
        path =
        secure_ftp = False
        # If you wish to upload files from something other than what HTML_ROOT
        # is set to above, then reset it here:
        HTML_ROOT = /var/www/weewx_bis
        port = 21
        passive = 1
Evidentemente, rellenando correctamente los datos de ambos servidores.

-Reiniciar Weewx para que los cambios en weewx.conf tengan efecto.

Saludos
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: jantoni en 01 de Octubre del 2016, 16:02:41 pm
Un matiz.

No hace falta generar el directorio del nuevo skin, es decir /var/www/------

Weewx ya se encarga de hacerlo. Así no hay problemas con los permisos de los directorios y los ficheros.
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: errea en 25 de Noviembre del 2016, 14:57:06 pm
Un matiz.

No hace falta generar el directorio del nuevo skin, es decir /var/www/------

Weewx ya se encarga de hacerlo. Así no hay problemas con los permisos de los directorios y los ficheros.

A mi me va a ir bien tu investigación si paso a WeeWX, ya que tendré que subir también datos a ese segundo FTP, que curiosamente será el mismo que tu, ja ja.  :)

Un saludo Miguel.
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 25 de Noviembre del 2016, 15:19:20 pm
Hombre Errea, cuanto tiempo!  :D :D

Si te pasas a Weewx verás que funciona bastante mejor, al menos eso es lo que yo he notado.

Cualquier cosa que necesites por aquí intentaremos echar un cable  ;)

Saludos
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: errea en 28 de Noviembre del 2016, 14:44:27 pm
Como diría jantoni estoy en el lado oscuro desde hace años, Cumulus y ahora CumulusMX, pero voy a ver con la Rasp que ya me ha llegado y lanzo el tema, tengo que poner en el aire Ejea de los Caballeros y usaré WeeWX probablemente ... ya os contaré.
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: Wlarues en 28 de Noviembre del 2016, 15:12:55 pm
 ;D ;D
Buena suerte, se agraderá ver en el mapa por fin una estación en las Cinco Villas

Saludos
Título: Re:Puedo mandar los ficheros por Ftp a dos sitios a la vez?
Publicado por: errea en 05 de Diciembre del 2016, 00:20:00 am
Pues si, creo que ya la puedes ver, en pruebas.