Upload Dayfile

From Cumulus Wiki
Revision as of 20:27, 22 August 2017 by Sfws (talk | contribs)
Jump to navigationJump to search

Cumulus has the ability to upload files to your webserver at regular intervals, however this is an 'all or nothing' feature -- If Cumulus is set to upload to your website every 10 minutes then every file will be uploaded every 10 minutes.

As your website becomes more advanced you may wish additional data available on the site, and the most common need is the Dayfile.txt produces by Cumulus. This is a useful file summarising conditions each day and is used by many Addons and Tools.

The dayfile.txt file only changes once per day therefore it is extremely inefficient to upload this every 10 minutes, far better to do a once per day upload.

Starting with version 1.9.2, Cumulus now has the ability to invoke a command or external program once a day. This is configured via the Configuration | Internet Options | External Programs dialog box. Whatever is entered in the "Daily" section will be invoked once a day, just after the daily rollover processing is completed.

Automation

In order to achieve this, we rely on a few components:

  • A script for uploading (ftp'ing) the file
  • A batch file to run the command to upload

The script

Using a good text editor, such as Notepad++ or Notepad (if you must!), copy and paste the following into a blank file:

<user>
<password>
cd <folder>
put c:\cumulus\data\dayfile.txt
quit

Replace:

  • <user> with your ftp login username. This will be the same as the one in Internet Settings in Cumulus Configuration
  • <password> with the ftp password. Again, as per the Cumulus Internet Config
  • <folder> should be as per 'Directory' in Cumulus Internet Config

The 'put' entry should be followed by the full path to dayfile.txt on your Cumulus PC

Save this file as dayfile.ftp in the Cumulus folder of your PC (example, in c:\Cumulus)

The Batch file

Now create a batch file to use this script. Again in your text editor create a new file (File, New?) and paste the following:

ftp -s:c:\cumulus\dayfile.ftp <hostname>

Replace

  • <hostname> with the same setting in your Cumulus Internet Settings
  • c:\cumulus\dayfile.ftp with the full path and filename used when saving the Script file above

Save this file as upload-dayfile.bat in c:\cumulus (or your Cumulus folder if different)


Cumulus settings

On the Internet Settings screen, put c:\cumulus\upload-dayfile.bat in the Daily box. Leave the params empty.


Running manually

If you wish to run a manual upload, perhaps to test the command is successful, simply run the batch file:

Start, Run, cmd and type c:\cumulus\upload-dayfile.bat

Check your webserver for dayfile.txt using your normal ftp tool

Advanced

For more advanced control over the your uploads consider using the features in Cumulus Toolbox


Possible Issues

The FTP tool being used here is the one which ships with Windows; it is a relatively simply implementation and may not support the requirements of your webserver. There is some useful reading in this forum topic which may help if you have issues.