Monthlyalltime.ini

From Cumulus Wiki

What is monthlyalltime.ini file and what format does it use?

The file monthlyalltime.ini was introduced in version 1.9.3 to support the Monthly Records feature that was added. For more information on this file see in the Cumulus 1 help file, in the section “Data log file format”. The format consists of a number of sections (section title is delimited by square brackets [...]), with each section having a number of properties (consisting of attribute name, an equals sign and a value) each on a separate line. The sections (after the first [General]) can be in any order, Cumulus will maintain whatever order the sections are currently in. Each section has a number of parameters listed below it. Each parameter is in the format "attribute=value". For readability you can insert blank lines into this file, Cumulus will not mind. Do not however introduce any punctuation nor change the format of any parameter line.

Put simply, it is just like the alltime.ini log file but each section in that is repeated 12 times in "monthlyalltime.ini" file as it contains the extremes recorded in all January periods, all February periods etc. The format of monthlyalltime.ini is similar to alltime.ini but the sections are repeated for each month of the year, distinguished by a two-digit number at the end of the section name, representing the month for that section. For example, the rainfall records for September are held in section [Rain09].

The new feature in Cumulus 1 allows you to compare the current month with the same month in earlier years and pick out which year had highest and lowest. The alltime.ini log file was heavily influenced by the seasonality of our weather, you might expect highest temperatures to be seen in a summer and lowest in a winter. The monthlyaltime.ini log file takes away that seasonality by limiting comparisons to a month by month basis.

There are differences between Cumulus 1 and MX.

Badge vMx.pngDecimal formatting always uses a period/full stop in Cumulus MX. Cumulus MX shows date/time in ISO 8601 format of "yyyy-MM-ddTHH:mm:ss" (using the net specifiers that MX uses).

Badge v1.pngDate, Time and Decimal formatting is as per your regional settings on the PC running Cumulus.

Thus if you want to swap from Cumulus 1 to Cumulus MX, you will copy your existing Cumulus 1 "data" folder to within your MX installation, but if you have previously used a comma for the decimal separator you will also need to manually edit your monthlyalltime.ini file so all the value entries are converted to use full stops as decimal separator. The following table shows just one section from the file, that dealing with wind, as an example of the two formats, and the example uses commas for Cumulus 1.

Badge v1.png Badge vMx.png
[Wind02] Wind03
highwindvalue=44,0676460266113 highwindvalue=9
highwindtime=09/02/2020 07:51:08 highwindtime=2016-03-07T11:49:52
highgustvalue=62,0693855285645 highgustvalue=29
highgusttime=09/02/2020 07:31:50 highgusttime=2019-03-14T02:53:00
highdailywindrunvalue=477,365875244141 highdailywindrunvalue=89.6165924072266
highdailywindruntime=09/02/2020 23:59:00 highdailywindruntime=2014-03-26T23:59:00

The wind speed and gust speed may be shown as integers if that is how your weather station outputs them, and you have not asked Cumulus to calculate them in different units. The two columns shown represent different locations, that is why the contents do not match, this table is just to illustrate different formats.

Initialisation

If you update Cumulus from an earlier version than version 1.9.3, or swap from Cumulus version 1.9.2 to Cumulus MX, then you need to initialise this "monthlyalltime.ini" log file by reading prior data from the monthly and daily log files. Follow the instructions for correcting the file. Once the file has been initialised, Cumulus will maintain it from then onwards, comparing the highs and lows for the current reading against those stored for that month in this file. For further information see the support forum, that contains the announcement when version 1.9.3 was released, and a few discussions concerning experience with the feature.

Viewing the monthly highs and lows

Cumulus 1 View menu.png Badge v1.pngSelect Highs and Lows - Monthly from View menu.

Correcting/Editing the file within Cumulus

Expanding the information in the FAQ: FAQ#How_do_I_correct_my_all-time_.28or_monthly.29_records.3F, you can update the values stored in monthlyalltime.ini by choosing all time monthly records from the Edit menu in Cumulus. This is a text editor, and works best when at full screen. By clicking the appropriate buttons, you can get Cumulus to display the extremes found by looking through all the data available in dayfile.txt for the selected month in all years, and all the data available in Standard log files for that month in all years. Click the Help button on that screen for detailed instructions on how to copy figures across from log to log or to directly edit them on screen.

Editing monthlyalltime.ini outside Cumulus

It is unlikely that you need to do this, given the functionality of the in-built editor for both Cumulus 1 and recent builds of MX. If you cannot find the file see FAQ FAQ#I_can.E2.80.99t_find_my_data_files.21.

Tips -- take a copy of the original log file before you work on it outside Cumulus.

Stop Cumulus first. Edit the original file using an editor that treats all fields as text [either any text editor, or a spreadsheet program that can be instructed not to recognise special field (like date) types]. Do not add nor remove parameters, simply amend the values and timestamps. Note that figures are held internally in Cumulus in binary, and converted to Base 10 numbers for the value shown. Since fractional binary values cannot be converted exactly to base 10 decimals, real numbers appear to be given to a strange decimal resolution with multiple decimal places. Also note that the timestamp includes a calendar date, so for a 9 or 10am rollover, if you need to manually look for highs and lows for times between midnight and rollover, these would be derived from the daily log (dayfile.txt) row for the meteorological date (the date before the calendar date for those early hours).