Saving system logs to SD card (v2.0.1 - v2.2.5)

Minitoring system uses HC SD-card to record changes in: logs, sensor data, configuration elements. 4/8/16/32 Gb HC SD cards can be used in a system.

FAT32 and Ext4 (preferred) formats are supported.

Attention! SD-card must be first formatted by the user!

To manage the SD-card go to tab "Preferences" -> tab "SD Card" in the web interface:

  • "Update" - is used to update the page;
  • "Umount" - is used to remove SD-card safely;

Information is recorded in 16KB blocks. The blocks are placed in a fixed-size file of 4MB. The current working file is named now.dump. If the size of the current working file exceeds 4Mb it is renamed in accordance with the serial number on the card into the file format dddddddd.dump, where dddddddd - is a decimal number.  The older files have smaller sequence numbers, newer ones have higher.  The oldest file is deleted when there is an insufficient space on the SD-card. 

Utility used to parse dump on the memory card: skydumpdecoder.jar

To use this utility you need JRE (Java Runtime Environment) version 1.7

Decoding of the file can be performed as follows:

Sample:

 

java -jar skydumpdecoder.jar -i now.dump > mydump

 

Typical contents of the file mydump:

Sample:

 

0    LOG    [1363159832] Wed Mar 13 11:30:32 MSK 2013    message: System hardware clock (UTC): 'Wed Mar 13 07:30:30 2013  0.000000 seconds'
1    LOG    [1363159834] Wed Mar 13 11:30:34 MSK 2013    message: Time synchronization for 'time.windows.com' NTP server. New: '07:30:34 03/13/13', old: '07:30:32 03/13/13'
...
12    LOG    [1363159849] Wed Mar 13 11:30:49 MSK 2013    state: Sensor Analog-2 (id=1011) changed state from "unknown" to "low"
13    LOG    [1363159849] Wed Mar 13 11:30:49 MSK 2013    state: Sensor Analog-3 (id=1012) changed state from "unknown" to "alarm"
14    DIFF    [1363159849] Wed Mar 13 11:30:49 MSK 2013    [1012]=28.0;
15    DIFF    [1363159886] Wed Mar 13 11:31:26 MSK 2013    [1001]=34.1;
16    DIFF    [1363159892] Wed Mar 13 11:31:32 MSK 2013    [1001]=34.0; [1012]=27.9
...
34    DIFF    [1363160252] Wed Mar 13 11:37:32 MSK 2013    [1001]=33.7;
35    FULL    [1363160253] Wed Mar 13 11:37:33 MSK 2013    [1001]={clas:"analog";type:"temperature";name:"Temperature";state:"alarm";value:"33.7";vmax:"110.0";vmin:"-50.0";low:"5.0";warning:"10.0";high:"15.0";at0:"1.000";at75:"0.000";}; [1002]={clas:"analog";type:"voltage";name:"Voltage";state:"warning";value:"11.3";vmax:"24.0";vmin:"0.0";low:"5.0";warning:"10.0";high:"15.0";at0:"1.000";at75:"0.000";}; [1003]={clas:"switch";type:"relay";name:"Analog Power";state:"on";value:"on";initial:"on";pulse:"15";}; [1004]={clas:"switch";type:"outlet";name:"Relay-1";state:"off";value:"off";initial:"off";pulse:"1";hwport:"1";}; [1005]={clas:"switch";type:"outlet";name:"Relay-2";state:"off";value:"off";initial:"off";pulse:"1";hwport:"2";}; [1006]={clas:"switch";type:"outlet";name:"Relay-3";state:"off";value:"off";initial:"off";pulse:"1";hwport:"3";}; [1007]={clas:"switch";type:"outlet";name:"Relay-4";state:"off";value:"off";initial:"off";pulse:"1";hwport:"4";}; [1008]={module:"4";num:"1";group:"0";clas:"devhwr";type:"reader";name:"iButton";state:"not connected";value:"";username:"";}; [1009]={clas:"switch";type:"relay";name:"iButton Power";state:"on";value:"on";initial:"on";pulse:"15";}; [1010]={clas:"discrete";type:"door";name:"Analog-1";state:"normal";hwport:"1";value:"1";reverse:"0";}; [1011]={clas:"analog";type:"fvoltage";name:"Analog-2";state:"low";hwport:"2";value:"0.00";vmax:"10.0";vmin:"0.0";low:"5.0";warning:"7.5";high:"10.0";expr:"x";}; [1012]={clas:"analog";type:"temperature";name:"Analog-3";state:"alarm";hwport:"3";value:"27.9";vmax:"110.0";vmin:"-50.0";low:"5.0";warning:"10.0";high:"15.0";at0:"1.000";at75:"0.000";}; [1013]={module:"10";num:"1";group:"0";clas:"devhwr";type:"usb-cam";name:"USB Web camera";url:"";fps:"1.0";username:"";password:"";resolution:"320x240";}

 

developer notes: linkchange