MXdiags folder

Introduction

The introduction to Diagnostics article is the place to look for general information about the files described here for Cumulus MX.

This article is about the MX diagnostic log file. Please see the Debug.log article for Cumulus 1 specific equivalent.


This is created on the device running the MX engine, normally a new file is started each time MX is restarted. More recent versions of MX are able to cycle files, i.e. when a file reaches a pre-determined size it is closed and a new file is started - please see for confirmation that 15 logs of up to 20 MB are retained.

File naming, and content

These logging files are in sub-folder MXdiags within the CumulusMX root directory. It is a text (*.txt) file named by the date and time that the CumulusMX session began, for example: 20210112-171450.txt

Entries are timestamped by date and time e.g. 2020-09-07 14:26:21.793.

How to change the content of the diagnostics log file

The contents stored in these diagnostic log files can be enhanced by turning debugging on and/or by turning data logging on (see later sections for details of these).

When starting MX, add CumulusMX.exe -debug (to have full debugging turned on as MX starts), CumulusMX.exe -Logging=1 (for the weather station specific logging). For example,

sudo mono CumulusMX.exe -debug -Logging=1

for both options described below.


You can also switch logging on/off using the admin interface as described below.


Standard diagnostic Logging

A certain amount of information about what MX is doing is always stored in the current diagnostics log file. Even without the extras, described below, switched on a lot of information is recorded.

Data Logging

This adds extra information about transfers between your weather station and MX. It was introduced originally for Davis stations only, but is extended to cover more stations in later releases.

There are three ways to turn on the logging of weather station debugging messages in all versions of Cumulus MX:

  1. (Releases 3.0.0 to 3.9.8) Close Cumulus MX, then edit Cumulus.ini configuration file, and add a line in the [Station] section: Logging = 1, then restart Cumulus MX.
  2. When you start Cumulus MX, use Parameter for adding debugging as part of the command for starting
    • (Example was given earlier)
  3. Use the admin interface Settings menu, next tick the 'Data Logging' menu option, and finally click Save, on the appropriate web page depending on which version of MX you are using (see below). #* You can untick the option to disable the logging of debugging information
      • Program settings web page for version 3.9.4 - build 3099 onwards
      • Station settings web page for earlier MX versions

Up to release 3.11.1, any change made using the admin interface was not saved into Cumulus.ini, and therefore when you restarted MX it reverted to setting in that file.

From release 3.11.2, any change made using the admin interface is now saved into Cumulus.ini, and therefore when you restart MX, it continues to follow what was last set, over-ridden by any debug parameter added to the starting command.

Debug Logging

This adds extra information about transfers from MX, and all the internal MX processes.

  • For transfers, the extra logging records any file transfer to a web server, any action involving updating to a database server, any transfers to external web sites such as WOW and Windy.
  • For internal processes, the extra logging records more detail when MX is writing to log files, when MX is performing a shutdown, and extra detail for many more of the operations.

There are three ways to turn on the logging of internal MX process debugging messages in all versions of Cumulus MX:

  1. Close Cumulus MX, then edit Cumulus.ini configuration file, and add a line in the [Station] section: Logging = 1, then restart Cumulus MX.
  2. When you start Cumulus MX, use Parameter for adding debugging as part of the command for starting
  3. Use the admin interface Settings menu, next tick the 'Debug Logging' menu option, and finally click Save, on the appropriate web page depending on which version of MX you are using (see below). #* You can untick the option to disable the logging of debugging information
      • Program settings web page for version 3.9.4 - build 3099 onwards
      • Station settings web page for earlier MX versions

Up to release 3.11.1, any change made using the admin interface was not saved into Cumulus.ini, and therefore when you restarted MX it reverted to setting in that file.

From release 3.11.2, any change made using the admin interface is now saved into Cumulus.ini, and therefore when you restart MX, it continues to follow what was last set, over-ridden by any debug parameter added to the starting command.


Sample File extract for Cumulus MX

An extract from 20200907-142621.txt

  
2020-09-07 14:26:21.693 Cumulus MX v.3.8.3 build 3093
2020-09-07 14:26:21.715 Platform: Win32NT
2020-09-07 14:26:21.715 OS version: Microsoft Windows NT 6.2.9200.0
2020-09-07 14:26:21.746 Current culture: English (United Kingdom)
2020-09-07 14:26:21.746 Directory separator=[\] Decimal separator=[.] List separator=[,]
2020-09-07 14:26:21.746 Date separator=[/] Time separator=[:]
2020-09-07 14:26:21.746 Standard time zone name:   GMT Standard Time
2020-09-07 14:26:21.746 Daylight saving time name: GMT Summer Time
2020-09-07 14:26:21.746 Daylight saving time? True
2020-09-07 14:26:21.746 07/09/2020 14:26:21
2020-09-07 14:26:21.762 Reading Cumulus.ini file
2020-09-07 14:26:21.777 ASM=10 AST=00:10:00
2020-09-07 14:26:21.777 Cumulus start date: 19 January 2020
2020-09-07 14:26:21.793 Data path = data\
2020-09-07 14:26:21.878 Creating backup folder backup\20200907142621\
2020-09-07 14:26:22.232 Created backup folder backup\20200907142621\
2020-09-07 14:26:22.232 Debug logging is enabled
2020-09-07 14:26:22.232 Data logging is disabled
2020-09-07 14:26:22.232 FTP logging is disabled
2020-09-07 14:26:22.232 Spike logging is enabled
2020-09-07 14:26:22.232 Logging interval = 10 mins
2020-09-07 14:26:22.232 Real time interval = 55 secs
2020-09-07 14:26:22.232 NoSensorCheck = 0
2020-09-07 14:26:22.294 Calculating sunrise and sunset times
2020-09-07 14:26:22.310 Sunrise: 06:32:24
2020-09-07 14:26:22.310 Sunset : 19:44:49