Overview of SYSTEM protocol for MindConnect IoT2040¶
You can use the protocol SYSTEM to implement a system information adapter for analysis purposes. The SYSTEM protocol can collect the following information from MindConnect IoT2040:
- Overall CPU load
- Overall memory consumption
- Network traffic
- Application specific data
- CPU load memory consumption
- Disk usage
You can choose the SYSTEM protocol as a data source without configuring specific system parameters, except the reading cycle.
After creating the data source you can configure the following categories in a new data point:
- CPU
- Memory
- Network
- Disk
The following image shows the data point input window for the SYSTEM protocol:

Each category has its own set of variables which will be described in the following.
Application information¶
Application provides the following available applications:
- MindEdgeRuntimeSystem/java
- DataProvider
- BoxManager
- S7 Plugin
- OPC UA Plugin
- Mosquitto
The following table shows the available variables for the applications:
| Variable | Data type | Address |
|---|---|---|
| Name | string | /application/<subcategory>/name |
| State | stri | /application/<subcategory>/state |
| Tgid | int | /application/<subcategory>/tgid |
| Ngid | int | /application/<subcategory>/ngid |
| Pid | int | /application/<subcategory>/pid |
| PPid | int | /application/<subcategory>/ppid |
| TracerPid | int | /application/<subcategory>/tracerpid |
| Uid | string | /application/<subcategory>/uid |
| Gid | string | /application/<subcategory>/gid |
| FDSize | int | /application/<subcategory>/fdsize |
| Groups | string | /application/<subcategory>/groups |
| NStgid | int | /application/<subcategory>/nstgid |
| NSpid | int | /application/<subcategory>/nspid |
| NSpgid | int | /application/<subcategory>/nspgid |
| NSsid | int | /application/<subcategory>/nssid |
| VmPeak | long | /application/<subcategory>/vmpeak |
| VmSize | long | /application/<subcategory>/vmsize |
| VmLck | long | /application/<subcategory>/vmlck |
| VmPin | long | /application/<subcategory>/vmpin |
| VmHWM | long | /application/<subcategory>/vmhwm |
| VmRSS | long | /application/<subcategory>/vmrss |
| VmData | long | /application/<subcategory>/vmdata |
| VmStk | long | /application/<subcategory>/vmstk |
| VmExe | long | /application/<subcategory>/vmexe |
| VmLib | long | /application/<subcategory>/vmlib |
| VmPTE | long | /application/<subcategory>/vmpte |
| VmPMD | long | /application/<subcategory>/vmpmd |
| VmSwap | long | /application/<subcategory>/vmswap |
| HugetlbPages | long | /application/<subcategory>/hugetlbpages |
| Threads | int | /application/<subcategory>/threads |
| SigQ | string | /application/<subcategory>/sigq |
| SigPnd | string | /application/<subcategory>/sigpnd |
| ShdPnd | string | /application/<subcategory>/shdpnd |
| SigBlk | string | /application/<subcategory>/sigblk |
| SigIgn | string | /application/<subcategory>/sigign |
| SigCgt | string | /application/<subcategory>/sigcgt |
| CapInh | string | /application/<subcategory>/capinh |
| CapPrm | string | /application/<subcategory>/capprm |
| CapEff | string | /application/<subcategory>/capeff |
| CapBnd | string | /application/<subcategory>/capbnd |
| CapAmb | string | /application/<subcategory>/capamb |
| Seccomp | int | /application/<subcategory>/seccomp |
| Speculation_Store_Bypass | string | /application/<subcategory>/speculation_store_bypass |
| Cpus_allowed | int | /application/<subcategory>/cpus_allowed |
| Cpus_allowed_list | string | /application/<subcategory>/cpus_allowed_list |
| Mems_allowed | int | /application/<subcategory>/mems_allowed |
| Mems_allowed_list | string | /application/<subcategory>/mems_allowed_list |
| voluntary_ctxt_switches | int | /application/<subcategory>/voluntary_ctxt_switches |
| nonvoluntary_ctxt_switches | int | /application/<subcategory>/nonvoluntary_ctxt_switches |
CPU information¶
The following table shows the available variables for the category CPU information:
| Variable | Data type | Description |
|---|---|---|
| LoadAvg1 | double | Number of processes in state R(runnable) or D(disk sleep) averaged over 1 minute. |
| LoadAvg5 | double | Number of processes in state R(runnable) or D(disk sleep) averaged over 5 minutes. |
| LoadAvg10 | double | Number of processes in state R(runnable) or D(disk sleep) averaged over 15 minutes. |
| ProcessCount | string | String containing number of currently runnable processes/threads and number of scheduling processes/threads that currently exist on the system. |
| LastPidUsed | long | Pid of the process that was most recently created. |
| CurrentProcessCount | long | Number of currently runnable processes/threads. |
| ScheduledProcessCount | long | Number of scheduling processes/threads that currently exist on the system. |
Disk information¶
Disk collects information about disk usage and provides the following subcategories:
- persistent_massdata
- persistent_appconfig
- persistent
- root
The following table shows the available variables for the category Disk information:
| Variable | Data type | Address | Description |
|---|---|---|---|
| Available | long | /disk/dev/<subcategory>/available | Available space in bytes. |
| Size | long | /disk/dev/<subcategory>/size | Partition size in bytes. |
| Used | long | /disk/dev/<subcategory>/used | Used space in bytes. |
KERNEL information¶
The following table shows the available variables for the category KERNEL information:
| Variable | Data type | Address |
|---|---|---|
| OsRelease | string | /kernel/osrelease |
| OsType | string | /kernel/ostype |
| Version | string | /kernel/version |
Memory information¶
The following table shows the available variables for the category Memory information:
| Variable | Data type | Address |
|---|---|---|
| Active | long | /memory/active |
| Active(anon) | long | /memory/active(anon) |
| Active | long | /memory/active |
| Active(anon) | long | /memory/active(anon) |
| Active(file) | long | /memory/active(file) |
| AnonPages | long | /memory/anonpages |
| Available | long | /memory/available |
| Bounce | long | /memory/bounce |
| Buffers | long | /memory/buffers |
| Cached | long | /memory/cached |
| CommitLimit | long | /memory/commitlimit |
| Committed_AS | long | /memory/committed_as |
| DirectMap4K | long | /memory/directmap4k |
| DirectMap4M | long | /memory/directmap4m |
| Dirty | long | /memory/dirty |
| HighFree | long | /memory/highfree |
| HighTotal | long | /memory/hightotal |
| LowFree | long | /memory/lowfree |
| LowTotal | long | /memory/lowtotal |
| Inactive | long | /memory/inactive |
| Inactive(anon) | long | /memory/inactive(anon) |
| Inactive(file) | long | /memory/inactive(file) |
| KernelStack | long | /memory/kernelstack |
| LowFree | long | /memory/lowfree |
| LowTotal | long | /memory/lowtotal |
| Mapped | long | /memory/mapped |
| MemFree | long | /memory/memfree |
| MemTotal | long | /memory/memtotal |
| MLocked | long | /memory/mlocked |
| NFS_Unstable | long | /memory/nfs_unstable |
| PageTables | long | /memory/pagetables |
| SHMem | long | /memory/shmem |
| SLab | long | /memory/slab |
| SReclaimable | long | /memory/sreclaimable |
| SUnreclaim | long | /memory/sunreclaim |
| SwapCached | long | /memory/swapcached |
| SwapFree | long | /memory/swapfree |
| SwapTotal | long | /memory/swaptotal |
| Unevictable | long | /memory/unevictable |
| VMAllocChunk | long | /memory/vmallocchunk |
| VMAllocTotal | long | /memory/vmalloctotal |
| VMAllocUsed | long | /memory/vmallocused |
| WriteBack | long | /memory/writeback |
| WriteBackTmp | long | /memory/writebacktmp |
Network information¶
The following table shows the available variables for the category Network information:
| Variable | Data type | Address | Description |
|---|---|---|---|
| ArpFilter | long | /network/arpfilter | |
| BusyPollRxPackets | long | /network/busypollrxpackets | |
| BytesReceived | long | /network/bytesreceived | Alias for InOctets. |
| BytesSend | long | /network/bytessend | Alias for OutOctets. |
| DelayedAckLocked | long | /network/delayedacklocked | Number of delayed acks further delayed because of locked socket. |
| DelayedAckLost | long | /network/delayedacklost | Number of times that quick ack mode was activated. |
| DelayedAcks | long | /network/delayedacks | Number of delayed acks sent. |
| EmbryonicRsTs | long | /network/embryonicrsts | Number of resets received for embryonic SYN_RECV sockets. |
| InBcastOctets | long | /network/inbcastoctets | |
| InBcastPkts | long | /network/inbcastpkts | |
| IncePkts | long | /network/incepkts | |
| IncSumErrors | long | /network/incsumerrors | |
| Inect0Pkts | long | /network/inect0pkts | |
| Inect1Pkts | long | /network/inect1pkts | |
| InMcastOctets | long | /network/inmcastoctets | |
| InMcastPkts | long | /network/inmcastpkts | |
| InNoEctPkts | long | /network/innoectpkts | |
| InNoRoutes | long | /network/innoroutes | |
| InOctets | long | /network/inoctets | Bytes received. |
| InTruncatedPkts | long | /network/intrucatedpkts | Number of truncated packets received. |
| IpReversePathFilter | long | /network/ipreversepathfilter | |
| ListenDrops | long | /network/listendrops | Number of SYNs to LISTEN sockets that were dropped. |
| ListenOverflows | long | /network/listenoverflows | Number of times the listen queue of a socket overflowed |
| LockDroppedIcmps | long | /network/lockdroppedicmps | ICMP packets dropped because socket was locked. |
| OfoPruned | long | /network/ofopruned | Packets dropped from out-of-order queue because of socket buffer overrun. |
| OutBcastOctets | long | /network/outbcastoctets | |
| OutBcastPkts | long | /network/outbcastpkts | |
| OutMcastOctets | long | /network/outmcastoctets | |
| OutMcastPkts | long | /network/outmcastokts | |
| OutOctets | long | /network/outoctets | Bytes sent. |
| OutOfWindowIcmps | long | /network/outofwindowicmps | ICMP packets dropped because they were out-of-window. |
| PAWSActive | long | /network/pawsactive | Active connections rejected because of timestamp. |
| PAWSEstab | long | /network/pawsestab | Packets rejected in established connections because of timestamp. |
| PAWSPassive | long | /network/pawspassive | Passive connections rejected because of timestamp. |
| PruneCalled | long | /network/prunecalled | Packets pruned from receive queue because of socket buffer overrun. |
| RcvPruned | long | /network/rcvpruned | Packets pruned from receive queue. |
| SyncookiesFailed | long | /network/syncookiesFailed | Number of invalid SYN cookies received. |
| SyncookiesRecv | long | /network/syncookiesrecv | Number of SYN cookies received. |
| SyncookiesSent | long | /network/syncookiessent | Number of SYN cookies sent. |
| TCPAbortFailed | long | /network/tcpabortfailed | Number of times unable to send RST due to no memory. |
| TCPAbortOnClose | long | /network/tcpabortonclose | Connections reset due to early user close. |
| TCPAbortOnData | long | /network/tcpabortondata | Connections reset due to unexpected data. |
| TCPAbortOnLinger | long | /network/tcpabortonlinger | Connections aborted after user close in linger timeout. |
| TCPAbortOnMemory | long | /network/tcpabortonmemory | Connections aborted due to memory pressure. |
| TCPAbortOnSyn | long | /network/tcpabortonsync | Connections reset due to unexpected SYN. |
| TCPAbortOnTimeout | long | /network/tcpabortontimeout | Connections aborted due to timeout. |
| TCPAckSkippedChallenge | long | /network/tcpackskippedchallenge | |
| TCPAckSkippedFinWait2 | long | /network/tcpackskippedfinwait2 | |
| TCPAckSkippedPAWS | long | /network/tcpackskippedpaws | |
| TCPAckSkippedSEQ | long | /network/tcpackskippedseq | |
| TCPAckSkippedSYNRecv | long | /network/tcpackskippedsynrecv | |
| TCPAckSkippedTimeWait | long | /network/tcpackskippedtimewait | |
| TCPAutoCorking | long | /network/tcpautocorking | |
| TCPBacklogDrop | long | /network/tcpbacklogdrop | |
| TCPChallengeAck | long | /network/tcpchallengeack | |
| TCPDeferAcceptDrop | long | /network/tcpdeferacceptdrop | |
| TCPDirectCopyFromBacklog | long | /network/tcpdirectcopyfrombacklog | Bytes directly in process context from backlog. |
| TCPDirectCopyFromPrequeue | long | /network/tcpdirectcopyfromprequeue | Bytes directly received in process context from prequeue. |
| TCPDSACKIGNoRedNoUndo | long | /network/tcpdsackignorednoundo | |
| TCPDSACKIGNoRedOld | long | /network/tcpdsackignoredold | |
| TCPDSACKOfoRecv | long | /network/tcpdsackoforecv | DSACKs for out of order packets |
| TCPDSACKOfoSent | long | /network/tcpdsackofosent | DSACKs sent for out of order packets. |
| TCPDSACKOldSent | long | /network/tcpdsackoldsent | DSACKs sent for old packets. |
| TCPDSACKRecv | long | /network/tcpdsackrecv | DSACKs received. |
| TCPDSACKUndo | long | /network/tcpdsackundo | Congestion window recovered without slow start using DSACK. |
| TCPFACKReorder | long | /network/tcpfackreorder | Number of times reordering was detected using FACK. |
| TCPFastOpenActive | long | /network/tcpfastopenactive | |
| TCPFastOpenActiveFailL | long | /network/tcpfastopenactivefail | |
| TCPFastOpenCookieReqD | long | /network/tcpfastopencookiereqd | |
| TCPFastOpenListenOverflow | long | /network/tcpfastopenlistenoverflow | |
| TCPFastOpenPassive | long | /network/tcpfastopenpassive | |
| TCPFastOpenPassiveFail | long | /network/tcpfastopenpassivefail | |
| TCPFastRetrans | long | /network/tcpfastretrans | Fast retransmits. |
| TCPForwardRetrans | long | /network/tcpforwardretrans | Forward retransmits. |
| TCPFromZeroWindowAdv | long | /network/tcpfromzerowindowadv | |
| TCPFullUndo | long | /network/tcpfullundo | Congestion windows fully recovered without slow start. |
| TCPHPAcks | long | /network/tcphpacks | Predicted acknowledgments. |
| TCPHPHits | long | /network/tcphphits | Packet headers predicted. |
| TCPHPHitsToUser | long | /network/tcphphitstouser | Packet headers predicted and directly queued to user. |
| TCPHYStartDelayCWND | long | /network/tcphystartdelaycwnd | |
| TCPHYStartDelayDetect | long | /network/tcphystartdelaydetect | |
| TCPHYStartTrainCWND | long | /network/tcphystarttraincwnd | |
| TCPHYStartTrainDetect | long | /network/tcphystarttraindetect | |
| TCPKeepAlive | long | /network/tcpkeepalive | Number of ACK packets sent to keep TCP flow alive. |
| TCPLossFailures | long | /network/tcplossfailures | Timeouts in loss state. |
| TCPLossProbeRecovery | long | /network/tcplossproberecovery | |
| TCPLossProbes | long | /network/tcplossprobes | |
| TCPLossUndo | long | /network/tcplossundo | Congestion windows recovered without slow start after partial ack. |
| TCPLostRetransmit | long | /network/tcplostretransmit | Retransmit lost. |
| TCPMD5NotFound | long | /network/tcpmd5notfound | |
| TCPMD5Unexpected | long | /network/tcpmd5unexpected | |
| TCPMemoryPressures | long | /network/tcpmemorypressures | Number of times TCP ran low on memory. |
| TCPMINTTLDrop | long | /network/tcpminttldrop | |
| TCPMTUPFail | long | /network/tcpmtupfail | |
| TCPMTUPSuccess | long | /network/tcpmtupsuccess | |
| TCPOfoDrop | long | /network/tcpofodrop | |
| TCPOfoMerge | long | /network/tcpofomerge | |
| TCPOfoQueue | long | /network/tcpofoqueue | |
| TCPOrigDataSent | long | /network/tcporigdatasent | |
| TCPPartialUndo | long | /network/tcppartialundo | Congestion windows partially recovered using Hoe heuristic. |
| TCPPrequeued | long | /network/tcpprequeued | Packets directly queued to recvmsg prequeue. |
| TCPPrequeueDropped | long | /network/tcpprequeuedropped | Packets dropped from prequeue. |
| TCPPureAcks | long | /network/tcppureacks | Acknowledgments not containing data payload received. |
| TCPRcvCoalesce | long | /network/tcprcvcoalesce | |
| TCPRcvCollapsed | long | /network/tcprcvcollapsed | Packets collapsed in receive queue due to low socket buffer. |
| TCPRenoFailures | long | /network/tcprenofailures | Timeouts after reno fast retransmit. |
| TCPRenoRecovery | long | /network/tcprenorecovery | Times recovered from packet loss due to fast retransmit. |
| TCPRenoRecoveryFail | long | /network/tcprenorecoveryfail | Classic Reno fast retransmits failed. |
| TCPRenoReorder | long | /network/tcprenoreorder | |
| TCPReqQFullDoCookies | long | /network/tcpreqqfulldocookies | |
| TCPReqQFullDrop | long | /network/tcpreqqfulldrop | |
| TCPRetransFail | long | /network/tcpretransfail | |
| TCPSACKDiscard | long | /network/tcpsackdiscard | |
| TCPSACKFailures | long | /network/tcpsackfailures | Timeouts after SACK recovery. |
| TCPSACKMerged | long | /network/tcpsackmerged | |
| TCPSACKRecovery | long | /network/tcpsackrecovery | Times recovered from packet loss by selective acknowledgements. |
| TCPSACKRecoveryFail | long | /network/tcpsackRecoveryFails | SACK retransmits failed. |
| TCPSACKReneging | long | /network/tcpsackreneging | Bad SACK blocks received. |
| TCPSACKReorder | long | /network/tcpsackreorder | Number of times reordering was detected using SACK. |
| TCPSACKShifted | long | /network/tcpsackshifted | |
| TCPSACKShiftFallback | long | /network/tcpsackshiftfallback | |
| TCPSchedulerFailed | long | /network/tcpschedulerfailed | Times receiver scheduled too late for direct processing. |
| TCPSlowStartRetrans | long | /network/tcpslowstartretrans | Retransmits in slow start. |
| TCPSpuriousRTOS | long | /network/tcpspuriousrtos | |
| TCPSpuriousRTXHostQueues | long | /network/tcpspuriousrtxhostqueues | |
| TCPSYNChallenge | long | /network/tcpsynchallenge | |
| TCPSYNRetrans | long | /network/tcpsynretrans | |
| TCPTimeouts | long | /network/tcptimeouts | Other TCP timeouts. |
| TCPTimeWaitOverflow | long | /network/tcptimewaitoverflow | |
| TCPToZeroWindowAdv | long | /network/tcptozerowindowadv | |
| TCPTSReorder | long | /network/tcptsreorder | Number of times reordering was detected using timestamp. |
| TCPWantZeroWindowAdv | long | /network/tcpwantzerowindowadv | |
| TCPWinProbe | long | /network/tcpwinprobe | Number of ACK packets to be sent at regular intervals to make sure a reverse ACK packet opening back a window has not been lost. |
| TW | long | /network/tw | |
| TWKilled | long | /network/twkilled | TCP sockets finished time wait in slow timer. |
| TWRecycled | long | /network/twrecycled | Time wait sockets recycled by timestamp. |