Hi, Kip

I also use GoDaddy. What it normally does is before every file it sets TYPE
I and PASV, then does the file transfer, all synchronously. So, I don't
think it's a race condition within either FTP, or the log.

Did this work before and now it's not? Or, has it never worked?

The PROT_P command suggests that you're trying to use FTPS (option
secure_FTP=True). Have you tried just regular FTP?

Take a look in the HTML directory (probably /var/www/html/weewx) and see if
all looks normal. Are the file sizes zero?

It's a Hail Mary, but you can try deleting the file #FTP.last in that
subdirectory. This file holds the last time a file was uploaded, so
deleting it will force all files to be uploaded.

-tk



On Thu, Oct 26, 2017 at 2:28 PM, Kip Kennedy <[email protected]> wrote:

> Hi,
>
> I'm having trouble getting ftp uploads to work.  I'm using Weewx 3.7.1 on
> a Raspberry Pi and uploading to a GoDaddy host.  I can connect and upload
> fine interactively (MacOS ftp, Windows WinSCP). I've also double checked my
> settings in weewx.conf. Here is syslog during the ftp:
>
>
> Oct 26 13:08:57 PiWeather wee_reports[15450]: reportengine: Running report
> FTP
> Oct 26 13:08:57 PiWeather wee_reports[15450]: reportengine: Found
> configuration file /etc/weewx/skins/Ftp/skin.conf for report FTP
> Oct 26 13:08:57 PiWeather wee_reports[15450]: ftpupload: Attempting secure
> connection to ftp.xxx.com
> Oct 26 13:08:57 PiWeather wee_reports[15450]: ftpupload: Secure connection
> to ftp.xxx.com
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #1.
> Failed uploading /daywind.png to ftp.xxx.com. Reason: [Errno 0] Error
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #2.
> Failed uploading /daywind.png to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #3.
> Failed uploading /daywind.png to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Failed to upload
> file /daywind.png
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #1.
> Failed uploading /daytemp.png to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #2.
> Failed uploading /daytemp.png to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #3.
> Failed uploading /daytemp.png to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Failed to upload
> file /daytemp.png
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #1.
> Failed uploading /index.html to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #2.
> Failed uploading /index.html to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #3.
> Failed uploading /index.html to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Failed to upload
> file /index.html
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #1.
> Failed uploading /dayrain.png to ftp.xxx.com. Reason:
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #2.
> Failed uploading /dayrain.png to ftp.xxx.com. Reason: [Errno 32] Broken
> pipe
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Attempt #3.
> Failed uploading /dayrain.png to ftp.xxx.com. Reason: [Errno 32] Broken
> pipe
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpupload: Failed to upload
> file /dayrain.png
> Oct 26 13:08:58 PiWeather wee_reports[15450]: ftpgenerator: ftp'd 0 files
> in 1.75 seconds
>
>
> I also turned on extra logging for ftp (debug = 2 in [[Ftp]] in
> weewx.conf) and got the following on stdout when I ran wee_reports. It
> looks like the STOR is started before the TYPE I? Maybe a race condition?
> In ftplib.py, the storbinary routine should handle the TYPE I before the
> transfer but the log shows the TYPE I issue after the STOR. Maybe just a
> logging race?
>
>
> Generating for all time
> *cmd* 'AUTH TLS'
> *put* 'AUTH TLS\r\n'
> *get* '234 AUTH TLS OK.\r\n'
> *resp* '234 AUTH TLS OK.'
> *cmd* 'USER [email protected]'
> *put* 'USER [email protected]\r\n'
> *get* '331 User [email protected] OK. Password required\r\n'
> *resp* '331 User [email protected] OK. Password required'
> *cmd* 'PASS ***************'
> *put* 'PASS ***************\r\n'
> *get* '230-Your bandwidth usage is restricted\r\n'
> *get* '230-OK. Current restricted directory is /\r\n'
> *get* '230 0 Kbytes used (0%) - authorized: 204800 Kb\r\n'
> *resp* '230-Your bandwidth usage is restricted\n230-OK. Current restricted
> directory is /\n230 0 Kbytes used (0%) - authorized: 204800 Kb'
> *cmd* 'PBSZ 0'
> *put* 'PBSZ 0\r\n'
> *get* '200 PBSZ=0\r\n'
> *resp* '200 PBSZ=0'
> *cmd* 'PROT P'
> *put* 'PROT P\r\n'
> *get* '200 Data protection level set to "private"\r\n'
> *resp* '200 Data protection level set to "private"'
> *cmd* 'MKD /'
> *put* 'MKD /\r\n'
> *get* "550-Can't create directory: File exists\r\n"
> *get* '550 0 Kbytes used (0%) - authorized: 204800 Kb\r\n'
> *resp* "550-Can't create directory: File exists\n550 0 Kbytes used (0%) -
> authorized: 204800 Kb"
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* '200 TYPE is now 8-bit binary\r\n'
> *resp* '200 TYPE is now 8-bit binary'
> *cmd* 'PASV'
> *put* 'PASV\r\n'
> *get* '227 Entering Passive Mode (107,180,40,150,197,84)\r\n'
> *resp* '227 Entering Passive Mode (107,180,40,150,197,84)'
> *cmd* 'STOR /daywind.png'
> *put* 'STOR /daywind.png\r\n'
> *get* '150 Accepted data connection\r\n'
> *resp* '150 Accepted data connection'
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *get* ''
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *cmd* 'TYPE I'
> *put* 'TYPE I\r\n'
> *cmd* 'QUIT'
> *put* 'QUIT\r\n'
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "weewx-user" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to