<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="kehm.xsl"?>
<kehm xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1" platform="VX305x" desc="Top level Health Status using KEHM" xsi:noNamespaceSchemaLocation="file:///etc/kehm/kehm.xsd">
  <health>ALARM</health>
  <previousHealth>ALARM</previousHealth>
  <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
  <sensorGroup id="0" type="vpd" desc="Vital Product Data">
    <health>WARNING</health>
    <previousHealth>WARNING</previousHealth>
    <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
    <sensor desc="CPU Board Manufacturer">
      <name>Board Manufacturer</name>
      <class>vpd</class>
      <domain>inventory</domain>
      <value>Kontron</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>Kontron</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>Kontron</maxValue>
      <minValue>Kontron</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>System EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:28:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetBoardInfo(boardManufacturer)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>CPU Board Manufacturer Name</infoText>
    </sensor>
    <sensor desc="CPU Board Name">
      <name>Board Name</name>
      <class>vpd</class>
      <domain>inventory</domain>
      <value>VX3058</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>VX3058</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>VX3058</maxValue>
      <minValue>VX3058</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>System EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:28:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetBoardInfo(boardName)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>CPU Board Name</infoText>
    </sensor>
    <sensor desc="CPU Board Type">
      <name>Board Type</name>
      <class>vpd</class>
      <domain>inventory</domain>
      <value>VX3058-WA8F-B18070</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>VX3058-WA8F-B18070</maxValue>
      <minValue>VX3058-WA8F-B18070</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>System EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:28:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --boardtype</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Exact CPU Board Type or Order Code</infoText>
    </sensor>
    <sensor desc="CPU Board Manufacturing Date">
      <name>Board Manufacturing Date</name>
      <class>vpd</class>
      <domain>inventory maintenance</domain>
      <value>Year 2019 Week 10</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>Year 2015</operandValue>
        </rule>
        <rule>
          <operator>greater</operator>
          <operandValue>Year 2099</operandValue>
        </rule>
      </warn>
      <maxValue>Year 2019 Week 10</maxValue>
      <minValue>Year 2019 Week 10</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>System EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:28:+0000:GMT</lastRefresh>
      <systemCall>Serial=`dmidecode -s system-serial-number`;echo -n "Year 20";echo -n $Serial | cut -c3-4 -n | tr -d '\n';echo -n " Week ";echo -n $Serial | cut -n -c5-6</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Board Manufacturing date deduced from serial number. Format is Year yy Week ww </infoText>
    </sensor>
    <sensor desc="CPU Board Serial Number">
      <name>Board Serial Number</name>
      <class>vpd</class>
      <domain>inventory maintenance</domain>
      <value>1119101090093</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>15</operandValue>
        </rule>
      </warn>
      <maxValue>1119101090093</maxValue>
      <minValue>1119101090093</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>System EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:28:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --serialnumber</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>CPU Board Serial Number</infoText>
    </sensor>
    <sensor desc="CPU Board Level">
      <name>EC Level</name>
      <class>vpd</class>
      <domain>inventory maintenance</domain>
      <value>3D000A3</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>lesser</operator>
          <operandValue>24000A0</operandValue>
        </rule>
      </warn>
      <maxValue>3D000A3</maxValue>
      <minValue>3D000A3</minValue>
      <alarmCount/>
      <warnCount>1</warnCount>
      <callCount>1</callCount>
      <position>System EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --eclevel</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>CPU Board Engineering Change Level. This is the board hardware Revision.</infoText>
    </sensor>
    <sensor desc="CPU Board Variant">
      <name>Variant</name>
      <class>vpd</class>
      <domain>inventory maintenance</domain>
      <value>24671011500405092012</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action>Modify XML accordingly to your board configuration, check with vpdtool command</action>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>10652000000205012000</operandValue>
        </rule>
      </warn>
      <maxValue>24671011500405092012</maxValue>
      <minValue>24671011500405092012</minValue>
      <alarmCount/>
      <warnCount>1</warnCount>
      <callCount>1</callCount>
      <position>System EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --variant</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>CPU Board variant. The variant indicates all the current board manufacturing options</infoText>
    </sensor>
    <sensor desc="CPU Board CPLD Version">
      <name>CPLD version</name>
      <class>vpd</class>
      <domain>inventory  maintenance</domain>
      <value>0x7</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>0x4</operandValue>
        </rule>
      </warn>
      <maxValue>0x7</maxValue>
      <minValue>0x7</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPLD register</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>cpldtool -d 0 | sed -n -e 's/.*Version=\(.*\)/\1/p'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Version of the on board logical controller programmable component</infoText>
    </sensor>
    <sensor desc="ETH0 MAC Address">
      <name>MACAdd_ETH0</name>
      <class>vpd</class>
      <domain>inventory maintenance security infrastructure</domain>
      <value>00:00:de:51:94:68</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>00:00:de</operandValue>
        </rule>
        <rule>
          <operator>greater</operator>
          <operandValue>00:00:df</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>00:00:de:51:94:68</maxValue>
      <minValue>00:00:de:51:94:68</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>Ethernet EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --macaddr | grep eth0 | cut -d " " -f 2</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>MAC address of the 10G ETH0 Ethernet on VPX P1</infoText>
    </sensor>
    <sensor desc="ETH1 MAC Address">
      <name>MACAdd_ETH1</name>
      <class>vpd</class>
      <domain>inventory maintenance security infrastructure</domain>
      <value>00:00:de:51:94:69</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>1</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>00:00:de</operandValue>
        </rule>
        <rule>
          <operator>greater</operator>
          <operandValue>00:00:df</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>00:00:de:51:94:69</maxValue>
      <minValue>00:00:de:51:94:69</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>Ethernet EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --macaddr | grep eth1 | cut -d " " -f 2</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>MAC address of the 10G ETH1 Ethernet on VPX P1</infoText>
    </sensor>
    <sensor desc="ETH2 MAC Address">
      <name>MACAdd_ETH2</name>
      <class>vpd</class>
      <domain>inventory maintenance security infrastructure</domain>
      <value>00:00:de:51:94:6a</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>00:00:de</operandValue>
        </rule>
        <rule>
          <operator>greater</operator>
          <operandValue>00:00:df</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>00:00:de:51:94:6a</maxValue>
      <minValue>00:00:de:51:94:6a</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>Ethernet EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --macaddr | grep eth2 | cut -d " " -f 2</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>MAC address of the 1G Ethernet front panel</infoText>
    </sensor>
    <sensor desc="ETH3 MAC Address">
      <name>MACAdd_ETH3</name>
      <class>vpd</class>
      <domain>inventory maintenance security infrastructure</domain>
      <value>00:00:de:51:94:6b</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>00:00:de</operandValue>
        </rule>
        <rule>
          <operator>greater</operator>
          <operandValue>00:00:df</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>00:00:de:51:94:6b</maxValue>
      <minValue>00:00:de:51:94:6b</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>Ethernet EEPROM</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>vpdtool --macaddr | grep eth3 | cut -d " " -f 2</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>MAC address of the 1G Ethernet rear VPX backplane</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="1" type="version" desc="SW revisions">
    <health>SUCCESS</health>
    <previousHealth>SUCCESS</previousHealth>
    <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
    <sensor desc="Board BIOS Version">
      <name>BIOS Version</name>
      <class>version</class>
      <domain>inventory maintenance security safety</domain>
      <value>ID19073</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>ID16182</operandValue>
        </rule>
      </warn>
      <maxValue>ID19073</maxValue>
      <minValue>ID19073</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>BIOS System Flash</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetBoardInfo(firmwareVersion)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>VX305x Board BIOS ID Version</infoText>
    </sensor>
    <sensor desc="Board BIOS Date">
      <name>BIOS Date</name>
      <class>version</class>
      <domain>inventory maintenance security safety</domain>
      <value>2019-03-14 01:00:00</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>2019-03-14 01:00:00</maxValue>
      <minValue>2019-03-14 01:00:00</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>BIOS System Flash</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetBoardInfo(firmwareDate)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>BIOS build date format %Y-%m-%d %H:%M:%S</infoText>
    </sensor>
    <sensor desc="ID of Kontron BSP package">
      <name>BSP-ID</name>
      <class>version</class>
      <domain>inventory maintenance security safety</domain>
      <value>22206</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>17156</operandValue>
        </rule>
      </warn>
      <maxValue>22206</maxValue>
      <minValue>22206</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>sed -e 's+.*\([0-9]\{5\}\).*+\1+'   /etc/kvx_bsp_release</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Release ID of the installed BSP (5 digit YYDDD information)</infoText>
    </sensor>
    <sensor desc="kernel version and ID">
      <name>kernelVer</name>
      <class>version</class>
      <domain>inventory maintenance security</domain>
      <value>5.18.13-200.fc36.x86_64</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>4.10.14-200.fc25.x86_64</operandValue>
        </rule>
      </warn>
      <maxValue>5.18.13-200.fc36.x86_64</maxValue>
      <minValue>5.18.13-200.fc36.x86_64</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>uname -r</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Version and ID of the running kernel</infoText>
    </sensor>
    <sensor desc="kehm lib version and ID">
      <name>kehm Version</name>
      <class>version</class>
      <domain>inventory maintenance</domain>
      <value>1.5-22007</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>1.5-22007</maxValue>
      <minValue>1.5-22007</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>LANG=C;rpm -q -f /usr/include/kehm/kehm.h | sed s'/.x86_64//' | sed s'/kehm.//'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Version and ID of the KEHM library</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="2" type="information" desc="system information">
    <health>ALARM</health>
    <previousHealth>ALARM</previousHealth>
    <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
    <sensor desc="CPU name">
      <name>CPU name</name>
      <class>information</class>
      <domain>inventory maintenance operation</domain>
      <value>Intel(R) Xeon(R) CPU D-1539 @ 1.60GHz</value>
      <health>ALARM</health>
      <previousHealth>ALARM</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>Intel(R) Xeon(R) CPU D-1548 @ 2.00GHz</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>Intel(R) Xeon(R) CPU D-1539 @ 1.60GHz</maxValue>
      <minValue>Intel(R) Xeon(R) CPU D-1539 @ 1.60GHz</minValue>
      <alarmCount>1</alarmCount>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPU of the Board</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetCpuInfo(cpuName)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>Mother Board CPU reference name</infoText>
    </sensor>
    <sensor desc="number of CPUs">
      <name>CPU count</name>
      <class>information</class>
      <domain>operation maintenance safety</domain>
      <value>1</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>1</operandValue>
        </rule>
      </warn>
      <maxValue>1</maxValue>
      <minValue>1</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPU of the Board</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetCpuInfo(cpuCount)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>Number of CPU on mother board</infoText>
    </sensor>
    <sensor desc="number of Core per CPUs">
      <name>Core count</name>
      <class>information</class>
      <domain>operation maintenance safety</domain>
      <value>8</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>8</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>8</maxValue>
      <minValue>8</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPU of the Board</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetCpuInfo(cpuCoreCount)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>Number of Core per CPU on mother board</infoText>
    </sensor>
    <sensor desc="number of CPU Threads">
      <name>Thread count</name>
      <class>information</class>
      <domain>operation maintenance safety</domain>
      <value>16</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>16</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>16</maxValue>
      <minValue>16</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetCpuInfo(cpuThreadCount)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>Number of CPU threads</infoText>
    </sensor>
    <sensor desc="Maximal CPU frequency in Hz">
      <name>Max CPU Freq (Hz)</name>
      <class>information</class>
      <domain>operation maintenance safety</domain>
      <value>1600000</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>lesser</operator>
          <operandValue>2600000</operandValue>
        </rule>
      </warn>
      <maxValue>1600000</maxValue>
      <minValue>1600000</minValue>
      <alarmCount/>
      <warnCount>1</warnCount>
      <callCount>1</callCount>
      <position>CPU of the Board</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetCpuFreq(KEAPI_CPU_FREQUENCY_MAX)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>Maximum supported CPU Frequency in Hz </infoText>
    </sensor>
    <sensor desc="Total RAM Memory size in MB">
      <name>RAM size (MB)</name>
      <class>information</class>
      <domain>operation maintenance safety</domain>
      <value>15787</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>7000</operandValue>
        </rule>
      </warn>
      <maxValue>15787</maxValue>
      <minValue>15787</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetMemoryInfo(memTotal)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>RAM Memory Size in GB</infoText>
    </sensor>
    <sensor desc="RAM Memory Frequency in Mhz">
      <name>Memory Freq (Mhz)</name>
      <class>information</class>
      <domain>operation maintenance safety</domain>
      <value>2400</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>2133</operandValue>
        </rule>
      </warn>
      <maxValue>2400</maxValue>
      <minValue>2400</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetMemoryInfo(memSpeed)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>string</returnType>
      <infoText>RAM Memory Frequency in MHz</infoText>
    </sensor>
    <sensor desc="RAM Memory type">
      <name>Memory Type</name>
      <class>information</class>
      <domain>operation maintenance</domain>
      <value> DDR4</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue> DDR4</maxValue>
      <minValue> DDR4</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>17012</callCount>
      <position>N/A</position>
      <refreshPeriod>600</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:14:+0000:GMT</lastRefresh>
      <systemCall>dmidecode  -t 17 -q | grep Type: | cut -d: -f 2 | head -n 1</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>RAM Memory Type</infoText>
    </sensor>
    <sensor desc="RAM Manufacturer">
      <name>Memory manufacturer</name>
      <class>information</class>
      <domain>operation maintenance</domain>
      <value> Undefined</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue> Undefined</maxValue>
      <minValue> Undefined</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>17012</callCount>
      <position>N/A</position>
      <refreshPeriod>600</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:14:+0000:GMT</lastRefresh>
      <systemCall>dmidecode  -t 17 -q | grep Manufacturer: | cut -d: -f 2 | head -n 1</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>RAM Memory Manufacturer</infoText>
    </sensor>
    <sensor desc="System Time Zone">
      <name>Time Zone</name>
      <class>information</class>
      <domain>operation security safety maintenance infrastructure</domain>
      <value>Europe/Paris</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>Europe/Paris</maxValue>
      <minValue>Europe/Paris</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:29:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";timedatectl | sed -n -e 's/.*zone: \([^ ]*\) .*$/\1/p'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>System current Time Zone setting</infoText>
    </sensor>
    <sensor desc="System Date">
      <name>UTC-Date</name>
      <class>information</class>
      <domain>operation security safety maintenance infrastructure</domain>
      <value>2026-06-09T02:32:08+00:00</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>2017</operandValue>
        </rule>
      </warn>
      <maxValue>2026-06-09T02:32:08+00:00</maxValue>
      <minValue>2026-02-09T07:53:30+00:00</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1003642</callCount>
      <position>RTC of the Board</position>
      <refreshPeriod>0</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>date --utc --iso-8601=seconds</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>System date format %Y-%m-%dT%H%M%S%z like 2017-05-12T14:38:47+0000</infoText>
    </sensor>
    <sensor desc="Boot string">
      <name>Boot string</name>
      <class>information</class>
      <domain>operation security safety maintenance</domain>
      <value>(hd0,gpt2)/vmlinuz-5.18.13-200.fc36.x86_64 root=UUID=225e94fa-7847-4456-958f-a9ddae250a55 ro console=ttyS0,115200</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>/vmlinuz-4.10.14-200.fc25.x86_64 root=UUID=c9e669c5-78cd-4c6a-9d0b-ddbc092eb373 ro 5 video=efifb:off console=ttyS0,115200 LANG=en_US.UTF-8</operandValue>
        </rule>
      </warn>
      <maxValue>(hd0,gpt2)/vmlinuz-5.18.13-200.fc36.x86_64 root=UUID=225e94fa-7847-4456-958f-a9ddae250a55 ro console=ttyS0,115200</maxValue>
      <minValue>(hd0,gpt2)/vmlinuz-5.18.13-200.fc36.x86_64 root=UUID=225e94fa-7847-4456-958f-a9ddae250a55 ro console=ttyS0,115200</minValue>
      <alarmCount/>
      <warnCount>1</warnCount>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:30:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";awk -FGE= '{print $2}' /proc/cmdline</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Linux OS boot string</infoText>
    </sensor>
    <sensor desc="Logged Boots">
      <name>BootCount</name>
      <class>information</class>
      <domain>maintenance</domain>
      <value>22</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>true</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>1</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>22</maxValue>
      <minValue>22</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:30:+0000:GMT</lastRefresh>
      <systemCall>journalctl --list-boots | wc -l</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Counts Boot information blocs in system journal</infoText>
    </sensor>
    <sensor desc="Last Boot TimeStamp">
      <name>LastBootTS</name>
      <class>information</class>
      <domain>operation maintenance</domain>
      <value>2026-02-09 08:53:03</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>2026-02-09 08:53:03</maxValue>
      <minValue>2026-02-09 08:53:03</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:33:+0000:GMT</lastRefresh>
      <systemCall>uptime --since</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Last boot time stamp (this boot session)</infoText>
    </sensor>
    <sensor desc="Last logged in User">
      <name>Last logged in</name>
      <class>information</class>
      <domain>operation maintenance</domain>
      <value>root     pts/0        172.20.144.211   Mon Feb 23 16:29 - 16:29  (00:00)</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>root     pts/0        172.20.144.211   Mon Feb 23 16:29 - 16:29  (00:00)</maxValue>
      <minValue>guest    ttyS0                         Mon Feb 23 14:21   still logged in</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";last -n 1 | head -n 1</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Last logged in user</infoText>
    </sensor>
    <sensor desc="System Up Time">
      <name>UpTime</name>
      <class>information</class>
      <domain>operation maintenance</domain>
      <value>up 17 weeks, 18 hours, 31 minutes</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>up 59 minutes</maxValue>
      <minValue>up 0 minutes</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>501822</callCount>
      <position>N/A</position>
      <refreshPeriod>20</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>uptime -p</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>System Up Time since last boot</infoText>
    </sensor>
    <sensor desc="SELinux mode">
      <name>SELinux</name>
      <class>information</class>
      <domain>security</domain>
      <value>Enforcing</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>Enforcing</maxValue>
      <minValue>Enforcing</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>17012</callCount>
      <position/>
      <refreshPeriod>600</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:14:+0000:GMT</lastRefresh>
      <systemCall>getenforce</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Current mode of SELinux</infoText>
    </sensor>
    <sensor desc="Firewall state">
      <name>Firewall</name>
      <class>information</class>
      <domain>security</domain>
      <value>running</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>running</maxValue>
      <minValue>running</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>17012</callCount>
      <position/>
      <refreshPeriod>600</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:14:+0000:GMT</lastRefresh>
      <systemCall>(set +o pipefail; firewall-cmd --state; true) | sed "s,\x1B\[[0-9;]*[a-zA-Z],,g"; exit 0</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Current state of the firewall. firewall-cmd(1) uses multiple return code, not following unix cmd conventions. Hence the 'set +o pipefail' in a subshell trick</infoText>
    </sensor>
    <sensor desc="Firewall open ports">
      <name>Firewall Open Ports</name>
      <class>information</class>
      <domain>security</domain>
      <value>514/tcp 5601/tcp 7946/tcp 9200/tcp 9300/tcp 9600/tcp 514/udp 4789/udp</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>You're performing an operation over default zone ('public'), but your connections/interfaces are in zone 'docker' (see --get-active-zones) You most likely need to use --zone=docker option.  514/tcp 5601/tcp 7946/tcp 9200/tcp 9300/tcp 9600/tcp 514/udp 4789/udp</maxValue>
      <minValue>514/tcp 5601/tcp 7946/tcp 9200/tcp 9300/tcp 9600/tcp 514/udp 4789/udp</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>17012</callCount>
      <position/>
      <refreshPeriod>600</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:15:+0000:GMT</lastRefresh>
      <systemCall>(set +o pipefail; firewall-cmd --list-ports; true) | sed "s,\x1B\[[0-9;]*[a-zA-Z],,g"; exit 0 </systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>List of firewalld open port. firewall-cmd(1) uses multiple return code and colored result, not following unix cmd conventions. Hence the 'set +o pipefail' in a subshell trick</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="3" type="temperature" desc="operating temp">
    <health>SUCCESS</health>
    <previousHealth>SUCCESS</previousHealth>
    <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
    <sensor desc="CPU Core Temperature in C">
      <name>CPU-Temp</name>
      <class>temperature</class>
      <domain>operation safety maintenance</domain>
      <value>+58.0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>5</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>+104</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>0</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>5</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>+101</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>2</operandValue>
        </rule>
      </warn>
      <maxValue>+63.0</maxValue>
      <minValue>+32.0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>Inside CPU core</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors -A coretemp-isa-0000 | grep "Package id 0" | awk '{print $4}' | sed s/°C//</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>CPU (Core 0) temperature in Celsius</infoText>
    </sensor>
    <sensor desc="CPU Board Bottom Temperature in C">
      <name>Board-BottomTemp</name>
      <class>temperature</class>
      <domain>operation safety maintenance</domain>
      <value>+48.0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>+70</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>0</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>+65</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>2</operandValue>
        </rule>
      </warn>
      <maxValue>+54.0</maxValue>
      <minValue>+21.0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>Board Bottom side near RAM</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors nct7802y-i2c-*-28 | grep "LTD temp" | awk '{print $4}' | sed s/°C//</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>NCT7802y temperature on bottom side near RAM and CPU (rules for SA board)</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="4" type="voltages_currents" desc="operating voltage and current">
    <health>SUCCESS</health>
    <previousHealth>SUCCESS</previousHealth>
    <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
    <sensor desc="+12V Voltage (V)">
      <name>12V Voltage</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>11.75</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>12.61</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>11.40</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>12.50</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>11.50</operandValue>
        </rule>
      </warn>
      <maxValue>11.88</maxValue>
      <minValue>11.75</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>LCT2913 sensor close to P0</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors ltc2945-i2c-*-6e | grep "+12V Voltage" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>12V value in Volt </infoText>
    </sensor>
    <sensor desc="+12V Power (W)">
      <name>12V Power (W)</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>27.91</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>80.0</operandValue>
        </rule>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>75.0</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>0.1</operandValue>
        </rule>
      </warn>
      <maxValue>28.85</maxValue>
      <minValue>26.14</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>LCT2913 sensor close to P0</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors ltc2945-i2c-*-6e | grep "+12V Power" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>12V Power value in Watt, max is 80W without XMC, set 90W with XMC </infoText>
    </sensor>
    <sensor desc="+12V Current (A)">
      <name>12V Current (A)</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>2.38</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>7.02</operandValue>
        </rule>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>6.8</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>0.5</operandValue>
        </rule>
      </warn>
      <maxValue>2.45</maxValue>
      <minValue>2.26</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>LCT2913 sensor close to P0</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors ltc2945-i2c-*-6e | grep "+12V Current" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>12V Current value in Amper </infoText>
    </sensor>
    <sensor desc="3V3 StandBy">
      <name>3V3_SB Voltage</name>
      <class>voltage</class>
      <domain>operation safety maintenance infrastructure</domain>
      <value>3.33</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>3.46</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>3.14</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>3.40</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>3.18</operandValue>
        </rule>
      </warn>
      <maxValue>3.34</maxValue>
      <minValue>3.33</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>NCT7802 sensor</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors nct7802y-i2c-*-28 | grep "3V3_SB" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>3.3v StandBy value in Volt</infoText>
    </sensor>
    <sensor desc="VCORE Voltage">
      <name>VCORE Voltage</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>1.81</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>true</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>2.0</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>1.6</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>1.98</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>1.65</operandValue>
        </rule>
      </warn>
      <maxValue>1.81</maxValue>
      <minValue>1.80</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>NCT7802 sensor</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors nct7802y-i2c-*-28 | grep "VCORE" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>VCORE Voltage value in Volt</infoText>
    </sensor>
    <sensor desc="DDR4 Voltage">
      <name>DDR4 Voltage</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>1.21</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>1.26</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>1.14</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>1.19</operandValue>
        </rule>
        <rule>
          <operator>greater</operator>
          <operandValue>1.21</operandValue>
        </rule>
      </warn>
      <maxValue>1.21</maxValue>
      <minValue>1.21</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>NCT7802 sensor</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors nct7802y-i2c-*-28 | grep "DDR4" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>DDR4 Memory Voltage</infoText>
    </sensor>
    <sensor desc="+12V from NCT7802">
      <name>+12V</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>11.77</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>true</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>12.61</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>11.40</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>12.50</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>11.50</operandValue>
        </rule>
      </warn>
      <maxValue>11.92</maxValue>
      <minValue>11.70</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>NCT7802 sensor</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors nct7802y-i2c-*-28 | grep "+12V   Voltage" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>+12V read from NCT7802 in Volt</infoText>
    </sensor>
    <sensor desc="+5V from NCT7802">
      <name>+5V</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>5.08</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>true</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>5.25</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>4.87</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>5.18</operandValue>
        </rule>
        <rule>
          <operator>lesser</operator>
          <operandValue>4.92</operandValue>
        </rule>
      </warn>
      <maxValue>5.10</maxValue>
      <minValue>5.06</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>NCT7802 sensor</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors nct7802y-i2c-*-28 | grep "+5V    Voltage" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>+5V read from NCT7802 in Volt</infoText>
    </sensor>
    <sensor desc="3V3AUX Present from NCT7802">
      <name>3V3AUX</name>
      <class>voltage</class>
      <domain>operation safety maintenance</domain>
      <value>3.30</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>true</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>1</repeatCondition>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue>0</operandValue>
        </rule>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>3.30</maxValue>
      <minValue>3.30</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>NCT7802 sensor</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";sensors nct7802y-i2c-*-28 | grep "3V3AUX Present" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>3V3AUX presence read from NCT7802. The exact value cannot by read by sensor.</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="5" type="performance" desc="Performance">
    <health>SUCCESS</health>
    <previousHealth>SUCCESS</previousHealth>
    <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
    <sensor desc="System Load Average">
      <name>LoadAverage</name>
      <class>performance</class>
      <domain>operation safety</domain>
      <value>0.30</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action>Set your system load warnings and alerts according to min/max values recorded on a long period of system use</action>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>8.00</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>6.00</operandValue>
        </rule>
      </warn>
      <maxValue>3.34</maxValue>
      <minValue>0.00</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position/>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";awk '{printf $1}' /proc/loadavg</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>system load average on last minute according to /proc/loadavg. See https://en.wikipedia.org/wiki/Load_(computing) on how to use loadavg </infoText>
    </sensor>
    <sensor desc="RAM Load">
      <name>RAMLoad(%)</name>
      <class>performance</class>
      <domain>operation safety</domain>
      <value>22</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>98</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>90</operandValue>
        </rule>
      </warn>
      <maxValue>23</maxValue>
      <minValue>5</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";free | awk '/Mem/ {printf "%i\n", (100 - (($7*100)/($2)))}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Global RAM Load in percent from 0 to 100</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="6" type="devices" desc="Devices">
    <health>ALARM</health>
    <previousHealth>ALARM</previousHealth>
    <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
    <sensor desc="memory Correctable Error Type">
      <name>ECC Correction Type</name>
      <class>device</class>
      <domain>safety  maintenance</domain>
      <value>Single-bit</value>
      <health>ALARM</health>
      <previousHealth>ALARM</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>Multi-bit</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>Single-bit</maxValue>
      <minValue>Single-bit</minValue>
      <alarmCount>1</alarmCount>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";dmidecode -qt memory | grep "Error Correction" | awk '{print $4}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Supported ECC Memory Correctable Error Type on CPU Board</infoText>
    </sensor>
    <sensor desc="PBIT run">
      <name>PBIT Run</name>
      <class>device</class>
      <domain>safety  maintenance</domain>
      <value>NOT_RUN</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>RUN</operandValue>
        </rule>
      </warn>
      <maxValue>NOT_RUN</maxValue>
      <minValue>NOT_RUN</minValue>
      <alarmCount/>
      <warnCount>1</warnCount>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>a=`cpldtool -d 2 | grep PBIT_RUN | cut -d "x" -f 2`;if [ $a == 0 ]; then echo "NOT_RUN"; else echo "RUN"; fi</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Indicate if PBIT have been launch at BIOS boot time</infoText>
    </sensor>
    <sensor desc="PBIT has FAILED">
      <name>PBIT Failed</name>
      <class>device</class>
      <domain>safety  maintenance</domain>
      <value>-</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action>Investigate using PBIT documentation or kdiag stat (Utility in BIOS EFI Shell or as Linux command if installed)</action>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>-</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>-</maxValue>
      <minValue>-</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>N/A</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>a=`cpldtool -d 2 | grep PBIT_FAIL | cut -d "x" -f 2`;if [ $a == 0 ]; then echo "-"; else echo "FAILED"; fi</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Indicate if PBIT have FAILED at BIOS boot time</infoText>
    </sensor>
    <sensor desc="RTC battery FAIL">
      <name>RTC battery</name>
      <class>device</class>
      <domain>operation safety</domain>
      <value>0x0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action>Check RTC battery</action>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>0x0</operandValue>
        </rule>
      </warn>
      <maxValue>0x0</maxValue>
      <minValue>0x0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPLD register 0x03</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>cpldtool -d 0x03 | grep POST_RTC | awk -F"=" '{print $2}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>RTC oscillator bit Fail indication. If not zero this means the RTC alimentation has been lost due to low battery or battery absence</infoText>
    </sensor>
    <sensor desc="ETH0 Link Speed">
      <name>ETH0_Link_Speed</name>
      <class>device</class>
      <domain>operation infrastructure</domain>
      <value>-1</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>334548</repeatOccurence>
        <rule>
          <operator>lesser</operator>
          <operandValue>1000</operandValue>
        </rule>
      </warn>
      <maxValue>-1</maxValue>
      <minValue>-1</minValue>
      <alarmCount/>
      <warnCount>334548</warnCount>
      <callCount>334548</callCount>
      <position>Front Side</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetNetworkDevice(0)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Current link speed of back plane ethernet, -1 means Link Down</infoText>
    </sensor>
    <sensor desc="ETH1 Link Speed">
      <name>ETH1_Link_Speed</name>
      <class>device</class>
      <domain>operation infrastructure</domain>
      <value>100</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>334548</repeatOccurence>
        <rule>
          <operator>lesser</operator>
          <operandValue>1000</operandValue>
        </rule>
      </warn>
      <maxValue>100</maxValue>
      <minValue>-1</minValue>
      <alarmCount/>
      <warnCount>334548</warnCount>
      <callCount>334548</callCount>
      <position>Front Side</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetNetworkDevice(1)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Current link speed of front panel ethernet, -1 means Link Down</infoText>
    </sensor>
    <sensor desc="ETH2 Link Speed">
      <name>ETH2_Link_Speed</name>
      <class>device</class>
      <domain>operation infrastructure</domain>
      <value>-1</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>334548</repeatOccurence>
        <rule>
          <operator>lesser</operator>
          <operandValue>10000</operandValue>
        </rule>
      </warn>
      <maxValue>-1</maxValue>
      <minValue>-1</minValue>
      <alarmCount/>
      <warnCount>334548</warnCount>
      <callCount>334548</callCount>
      <position>P1</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetNetworkDevice(2)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Current link speed of 10G ethernet 1 on backplane, -1 means Link Down</infoText>
    </sensor>
    <sensor desc="ETH3 Link Speed">
      <name>ETH3_Link_Speed</name>
      <class>device</class>
      <domain>operation infrastructure</domain>
      <value>-1</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>334548</repeatOccurence>
        <rule>
          <operator>lesser</operator>
          <operandValue>10000</operandValue>
        </rule>
      </warn>
      <maxValue>-1</maxValue>
      <minValue>-1</minValue>
      <alarmCount/>
      <warnCount>334548</warnCount>
      <callCount>334548</callCount>
      <position>P1</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>KEApiGetNetworkDevice(3)</systemCall>
      <serviceFamily>KEAPI</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Current link speed of backplane 10G ethernet, -1 means Link Down</infoText>
    </sensor>
    <sensor desc="ETH0 TX-RX Error Rate">
      <name>ETH0_TX_RX_Error</name>
      <class>device</class>
      <domain>infrastructure maintenance</domain>
      <value>0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>50</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>30</operandValue>
        </rule>
      </warn>
      <maxValue>0</maxValue>
      <minValue>0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>Ethernet 1G on backplane P1 connector</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>netstat -i -a | grep em0 | awk '{ if(($3+$7)==0){b=1}else{b=$3+$7}a=10000*($4+$5+$6+$8+$9+$10)/b; print a } END { if (NR==0)print NR }'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Rate of TX+RX error on ETH0 (named em0) (per 10K paquets)</infoText>
    </sensor>
    <sensor desc="ETH1 TX-RX Error Rate">
      <name>ETH1_TX_RX_Error</name>
      <class>device</class>
      <domain>infrastructure maintenance</domain>
      <value>0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>50</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>30</operandValue>
        </rule>
      </warn>
      <maxValue>0</maxValue>
      <minValue>0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>Front Side of CPU Board</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>netstat -i -a | grep 'eth1 ' | awk '{ if(($3+$7)==0){b=1}else{b=$3+$7}a=10000*($4+$5+$6+$8+$9+$10)/b; print a } END { if (NR==0)print NR }'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Rate of TX+RX error on ETH1 (em1) (per 10K paquets)</infoText>
    </sensor>
    <sensor desc="ETH2 10G TX-RX Error Rate">
      <name>10G_ETH2_TX_RX_Error</name>
      <class>device</class>
      <domain>infrastructure maintenance</domain>
      <value>0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>50</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>30</operandValue>
        </rule>
      </warn>
      <maxValue>0</maxValue>
      <minValue>0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>P1</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>netstat -i -a | grep em2 | awk '{ if(($3+$7)==0){b=1}else{b=$3+$7}a=10000*($4+$5+$6+$8+$9+$10)/b; print a } END { if (NR==0)print NR }'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Rate of TX+RX error on 10G ETH2 (per 10K paquets)</infoText>
    </sensor>
    <sensor desc="10G ETH3 TX-RX Error Rate">
      <name>10G_ETH3_TX_RX_Error</name>
      <class>device</class>
      <domain>infrastructure maintenance</domain>
      <value>0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>50</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>30</operandValue>
        </rule>
      </warn>
      <maxValue>0</maxValue>
      <minValue>0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>P1</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>netstat -i -a | grep em3 | awk '{ if(($3+$7)==0){b=1}else{b=$3+$7}a=10000*($4+$5+$6+$8+$9+$10)/b; print a } END { if (NR==0)print NR }'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Rate of TX+RX error on 10G ETH3 (per 10K paquets)</infoText>
    </sensor>
    <sensor desc="XMC presence">
      <name>XMC presence</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>YES</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>YES</maxValue>
      <minValue>YES</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>XMC slot if equipped</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>cpldtool -d 8 | awk 'BEGIN { ANS="NO" } ; /XMC_PRESENT/  { ANS="YES" } ; END { print ANS ;}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Indicates if a XMC is connected on XMC slot</infoText>
    </sensor>
    <sensor desc="Max of %space used in all mounted file systems">
      <name>%maxUsedFS</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value> 45</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>90</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>greater</operator>
          <operandValue>80</operandValue>
        </rule>
      </warn>
      <maxValue> 45</maxValue>
      <minValue> 43</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";df --output=pcent | sed -e's/%//g' | grep -v Use | awk '$0&gt;x{x=$0};END{print x}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Find max of % used of all Filesystems</infoText>
    </sensor>
    <sensor desc="USB Buffer Error">
      <name>USBBufError</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>-</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>-</operandValue>
        </rule>
      </warn>
      <maxValue>-</maxValue>
      <minValue>-</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>echo -`dmesg -T | grep -i error |  grep -i usb | head -n1`</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Check USB buffer error in dmesg</infoText>
    </sensor>
    <sensor desc="Internal Disk name">
      <name>Internal Disk Name</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>sda zram0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>sda zram0</maxValue>
      <minValue>sda zram0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>Internal SATA Drive</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>lsblk --nodeps -no name</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Disk 0 reference name</infoText>
    </sensor>
    <sensor desc="Internal Disk model">
      <name>Internal Disk Model</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>2.5" SATA SSD 3M ATA</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>2.5" SATA SSD 3M ATA</maxValue>
      <minValue>2.5" SATA SSD 3M ATA</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>Internal SATA Drive</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>a=`cat /sys/class/block/sda/device/{model,vendor}`;echo $a</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Disk 0 reference model</infoText>
    </sensor>
    <sensor desc="Internal Disk size">
      <name>Internal Disk Size</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>115.5G</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>30.0G</operandValue>
        </rule>
      </warn>
      <maxValue>115.5G</maxValue>
      <minValue>115.5G</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>Internal SATA Drive</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";lsblk --nodeps -no size /dev/sda  | awk '{print $1}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>On board SATA Drive capacity size in GB</infoText>
    </sensor>
    <sensor desc="Logged System Warning">
      <name>SystemWarn</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>-</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>2824</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>-</operandValue>
        </rule>
      </warn>
      <maxValue>-[Mon Feb 9 08:53:21 2026] smifb : WARNING : EDID data is low on GPIO31</maxValue>
      <minValue>-</minValue>
      <alarmCount/>
      <warnCount>2824</warnCount>
      <callCount>501822</callCount>
      <position>N/A</position>
      <refreshPeriod>20</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>echo -`dmesg -T | grep -i warning | grep -v "ACPI Warning:" | head -n 1`</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>First detected new warning in system log (dmesg), excluding known ACPI warning</infoText>
    </sensor>
    <sensor desc="Logged System Error">
      <name>SystemError</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>-</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>2624</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>-</operandValue>
        </rule>
      </warn>
      <maxValue>-[Mon Feb 9 08:53:11 2026] RAS: Correctable Errors collector initialized.</maxValue>
      <minValue>-</minValue>
      <alarmCount/>
      <warnCount>2624</warnCount>
      <callCount>501822</callCount>
      <position>N/A</position>
      <refreshPeriod>20</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>echo -`dmesg -T | grep -i error | head -n 1`</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>First detected error in system log (dmesg)</infoText>
    </sensor>
    <sensor desc="Spurious Interrupts">
      <name>Spurious Interrupts</name>
      <class>device</class>
      <domain>operation safety security maintenance</domain>
      <value>0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>0</operandValue>
        </rule>
      </warn>
      <maxValue>0</maxValue>
      <minValue>0</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";cat /proc/interrupts | grep Spurious | awk '{printf $2+$3+$4+$5}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Number of Spurious interrupts since last boot</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="7" type="states" desc="Other Info">
    <health>ALARM</health>
    <previousHealth>ALARM</previousHealth>
    <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
    <sensor desc="System Controller">
      <name>SYSCON</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>NOT SYSCON</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>NOT SYSCON</maxValue>
      <minValue>NOT SYSCON</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPLD register</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>a=`cpldtool -d 0x6a | grep "SYSCON" | cut -d x -f 2`;if [ $a == 1 ]; then echo "SYSCON"; else echo "NOT SYSCON"; fi</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Indicate if the board is system Controller</infoText>
    </sensor>
    <sensor desc="Geo ID">
      <name>GEO ID</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>1</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>1</maxValue>
      <minValue>1</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPLD register</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>cat /proc/geo_id</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Geographical Slot position of the board</infoText>
    </sensor>
    <sensor desc="Last Reset Source">
      <name>Reset Source</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>POWER-ON</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue>WATCHDOG RESET</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>equal</operator>
          <operandValue>SYSRESET</operandValue>
        </rule>
      </warn>
      <maxValue>POWER-ON</maxValue>
      <minValue>POWER-ON</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>CPLD register</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>cpldtool -d 72 | grep Reset_Source | awk -F"0x" '{if ($2 == 0) {print "POWER-ON"} else if ($2 == 1)  {print "WATCHDOG RESET"} else if ($2 == 2)  {print "SYSRESET"} else {print "LOCAL RESET"}}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Last Reset source: POWER-ON, WATCHDOG RESET, SYSRESET, LOCAL (or normal) RESET</infoText>
    </sensor>
    <sensor desc="Watchdog Mode">
      <name>Watchdog Mode</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>DISABLED</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>DISABLED</maxValue>
      <minValue>DISABLED</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>167275</callCount>
      <position>CPLD register</position>
      <refreshPeriod>60</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>a=`port 0x856 | awk -F" = " '{print $2}'`; echo $(($a &amp; 0x7)) | awk '{if ($1 == 3) {print "RESET MODE"} else if ($1 == 5) {print "INTERRUPT MODE"} else if ($1 == 7) {print "POWERCYCLE MODE"} else  {print "DISABLED"}}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Indicate if watchdog is enabled or not and its mode</infoText>
    </sensor>
    <sensor desc="GPIO 1 Direction and Level Value">
      <name>GPIO1State</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>in 1</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>in 1</maxValue>
      <minValue>in 1</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1003642</callCount>
      <position>P1</position>
      <refreshPeriod>10</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>a=`cat /sys/class/cpld-gpio/gpio1/direction;cat /sys/class/cpld-gpio/gpio1/value`;echo $a</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>GPIO1 Direction and Level value</infoText>
    </sensor>
    <sensor desc="GPIO 2 Direction and Level Value">
      <name>GPIO2State</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>in 1</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>in 1</maxValue>
      <minValue>in 1</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1003642</callCount>
      <position>P1</position>
      <refreshPeriod>10</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>a=`cat /sys/class/cpld-gpio/gpio2/direction;cat /sys/class/cpld-gpio/gpio3/value`;echo $a</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>GPIO2 Direction and Level value</infoText>
    </sensor>
    <sensor desc="GPIO 3 Direction and Level Value">
      <name>GPIO3State</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>in 1</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>in 1</maxValue>
      <minValue>in 1</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1003642</callCount>
      <position>P0</position>
      <refreshPeriod>10</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>a=`cat /sys/class/cpld-gpio/gpio3/direction;cat /sys/class/cpld-gpio/gpio3/value`;echo $a</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>GPIO3 Direction and Level value</infoText>
    </sensor>
    <sensor desc="GPIO 4 Direction and Level Value">
      <name>GPIO4State</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>in 1</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>in 1</maxValue>
      <minValue>in 1</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1003642</callCount>
      <position>P0</position>
      <refreshPeriod>10</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>a=`cat /sys/class/cpld-gpio/gpio4/direction;cat /sys/class/cpld-gpio/gpio4/value`;echo $a</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>GGPIO4 Direction and Level value</infoText>
    </sensor>
    <sensor desc="GPIO 5 Direction and Level Value">
      <name>GPIO5State</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>in 1</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>in 1</maxValue>
      <minValue>in 1</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1003642</callCount>
      <position>P0</position>
      <refreshPeriod>10</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <systemCall>a=`cat /sys/class/cpld-gpio/gpio5/direction;cat /sys/class/cpld-gpio/gpio5/value`;echo $a</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>GPIO5 Direction and Level value</infoText>
    </sensor>
    <sensor desc="Micro switch checking">
      <name>Microswitches</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>0x00</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action>use cpldtool -d 0xe for result interpretation</action>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>0x00</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>0x00</maxValue>
      <minValue>0x00</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>DIP Switch SW1 and SW2</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>cpldtool -s 0xe | awk -F" = " '{print $2}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Check if Microswitches SW1 SW2 are in operational mode (not in debug or factory mode, low state ..)</infoText>
    </sensor>
    <sensor desc="Write Protect">
      <name>Write Protect</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>0x02</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action>use cpldtool -d 0x9 for result interpretation</action>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>notequal</operator>
          <operandValue>0x02</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>0x02</maxValue>
      <minValue>0x02</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>1</callCount>
      <position>DIP Switch SW1, SW2 or NVMRO</position>
      <refreshPeriod>-1</refreshPeriod>
      <lastRefresh>2026-02-09 07:53:36:+0000:GMT</lastRefresh>
      <systemCall>cpldtool -s 0x9 | awk -F" = " '{print $2}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Check if write protect or NVMRO is set on Flash and boot is on Master BIOS Flash. By default only VPD should be write protected (value 0x02)</infoText>
    </sensor>
    <sensor desc="CPLD Alert">
      <name>CPLD ALert</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>0x10</value>
      <health>ALARM</health>
      <previousHealth>ALARM</previousHealth>
      <validity>VALID</validity>
      <action>Enter command cpldtool -d 0x5b to see interpretation</action>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence>334548</repeatOccurence>
        <rule>
          <operator>notequal</operator>
          <operandValue>0x00</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue>0x10</maxValue>
      <minValue>0x10</minValue>
      <alarmCount>334548</alarmCount>
      <warnCount/>
      <callCount>334548</callCount>
      <position>CPLD register 0x5b</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>cpldtool -s 0x5b | awk -F" = " '{print $2}'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Check if there is a CPLD alert CATERR,THERMTRIP,THERM_PROT,PROCHOT,Board PECI alert,PCH_TEMP_ALERT</infoText>
    </sensor>
    <sensor desc="Running Processes">
      <name>Process Number</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>327</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition>1</repeatCondition>
        <repeatOccurence>334548</repeatOccurence>
        <rule>
          <operator>greater</operator>
          <operandValue>280</operandValue>
        </rule>
      </warn>
      <maxValue>341</maxValue>
      <minValue>286</minValue>
      <alarmCount/>
      <warnCount>334548</warnCount>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:47:+0000:GMT</lastRefresh>
      <systemCall>ps -ef | wc -l</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Number of running processes</infoText>
    </sensor>
    <sensor desc="Free RAM memory Size in MB">
      <name>Free RAM Memory(MB)</name>
      <class>state</class>
      <domain>operation safety</domain>
      <value>12236</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>300</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator>lesser</operator>
          <operandValue>600</operandValue>
        </rule>
      </warn>
      <maxValue>14959</maxValue>
      <minValue>12126</minValue>
      <alarmCount/>
      <warnCount/>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:48:+0000:GMT</lastRefresh>
      <systemCall>free -m -l | grep Mem | awk '{ print $7  }'</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Free amount of RAM Memory in MB</infoText>
    </sensor>
  </sensorGroup>
  <sensorGroup id="8" type="security" desc="System security">
    <health>ALARM</health>
    <previousHealth>ALARM</previousHealth>
    <lastRefresh>2026-06-09 02:31:48:+0000:GMT</lastRefresh>
    <sensor desc="Number of Actives network connections">
      <name>ActiveInternet</name>
      <class>state</class>
      <domain>security</domain>
      <value>0</value>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>greater</operator>
          <operandValue>2</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>17</repeatOccurence>
        <rule>
          <operator>greater</operator>
          <operandValue>1</operandValue>
        </rule>
      </warn>
      <maxValue>5</maxValue>
      <minValue>0</minValue>
      <alarmCount>1</alarmCount>
      <warnCount>17</warnCount>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:48:+0000:GMT</lastRefresh>
      <systemCall>LANG="C";ss -t -u | grep ESTAB | wc -l</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>string</returnType>
      <infoText>Number of active TCP and UDP connections. Should be 0</infoText>
    </sensor>
    <sensor desc="Number of Actives Users Sessions">
      <name>Active User(s) Session</name>
      <class>state</class>
      <domain>security</domain>
      <value>1</value>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence>1</repeatOccurence>
        <rule>
          <operator>greater</operator>
          <operandValue>1</operandValue>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>294807</repeatOccurence>
        <rule>
          <operator>greater</operator>
          <operandValue>0</operandValue>
        </rule>
      </warn>
      <maxValue>2</maxValue>
      <minValue>0</minValue>
      <alarmCount>1</alarmCount>
      <warnCount>294807</warnCount>
      <callCount>334548</callCount>
      <position>N/A</position>
      <refreshPeriod>30</refreshPeriod>
      <lastRefresh>2026-06-09 02:31:48:+0000:GMT</lastRefresh>
      <systemCall>who -u | wc -l</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Monitors remote and local logins. No user connection allowed in operation mode</infoText>
    </sensor>
    <sensor desc="Count of KEHM readings via http server">
      <name>kehmReadings</name>
      <class>state</class>
      <domain>security maintenance operation</domain>
      <value/>
      <health>ALARM</health>
      <previousHealth>ALARM</previousHealth>
      <validity>TIMEOUT</validity>
      <action/>
      <visible>true</visible>
      <handler>CPU</handler>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence/>
        <rule>
          <operator/>
          <operandValue/>
        </rule>
      </warn>
      <maxValue/>
      <minValue/>
      <alarmCount>2</alarmCount>
      <warnCount/>
      <callCount>2</callCount>
      <position/>
      <refreshPeriod>600</refreshPeriod>
      <lastRefresh>2026-02-09 08:03:39:+0000:GMT</lastRefresh>
      <systemCall>journalctl  "_SYSTEMD_UNIT=kehmhttp.service" | grep GET | grep xml | wc -l</systemCall>
      <serviceFamily>system</serviceFamily>
      <returnType>integer</returnType>
      <infoText>Counts of remote kehm RESULT file reads (grep Journal entries left by SimpleHTTPServer GET)</infoText>
    </sensor>
  </sensorGroup>
  <logicalSensor id="9" type="logicalSensor" desc="Logical Rule for Safety">
    <health>WARNING</health>
    <previousHealth>WARNING</previousHealth>
    <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
    <logicalRule desc="CPU Cooling Verifying">
      <name>CPUcooling</name>
      <class>logicalSensor</class>
      <domain>operation safety maintenance</domain>
      <health>SUCCESS</health>
      <previousHealth>SUCCESS</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible/>
      <log>false</log>
      <alarm>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <sensorID>
          <name>LoadAverage</name>
          <operator>lesser</operator>
          <operandValue>1.00</operandValue>
        </sensorID>
        <sensorID>
          <name>CPU-Temp</name>
          <operator>greater</operator>
          <operandValue>80</operandValue>
        </sensorID>
      </alarm>
      <warn>
        <repeatCondition>10</repeatCondition>
        <repeatOccurence/>
        <sensorID>
          <name>LoadAverage</name>
          <operator>lesser</operator>
          <operandValue>1.00</operandValue>
        </sensorID>
        <sensorID>
          <name>CPU-Temp</name>
          <operator>greater</operator>
          <operandValue>70</operandValue>
        </sensorID>
      </warn>
      <alarmCount/>
      <warnCount/>
      <callCount>501822</callCount>
      <refreshPeriod>20</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <infoText>Alarm state if LoadAverage.value less than 1.0 and CPUTemp.value greater than 80 and warn state if LoadAverage.value less than 1.0 and CPUTemp.value greater than 70 for 10 periods</infoText>
    </logicalRule>
    <logicalRule desc="Forbidden IO Combination">
      <name>GPIO_STATE</name>
      <class>logicalSensor</class>
      <domain>operation safety</domain>
      <health>WARNING</health>
      <previousHealth>WARNING</previousHealth>
      <validity>VALID</validity>
      <action/>
      <visible/>
      <log>false</log>
      <alarm>
        <repeatCondition/>
        <repeatOccurence/>
        <sensorID>
          <name>GPIO3State</name>
          <operator>equal</operator>
          <operandValue>in 0</operandValue>
        </sensorID>
        <sensorID>
          <name>GPIO3State</name>
          <operator>equal</operator>
          <operandValue>in 0</operandValue>
        </sensorID>
        <sensorID>
          <name>GPIO4State</name>
          <operator>equal</operator>
          <operandValue>in 1</operandValue>
        </sensorID>
        <sensorID>
          <name>GPIO5State</name>
          <operator>equal</operator>
          <operandValue>in 1</operandValue>
        </sensorID>
      </alarm>
      <warn>
        <repeatCondition/>
        <repeatOccurence>1003642</repeatOccurence>
        <sensorID>
          <name>GPIO1State</name>
          <operator>equal</operator>
          <operandValue>in 1</operandValue>
        </sensorID>
        <sensorID>
          <name>GPIO4State</name>
          <operator>equal</operator>
          <operandValue>in 1</operandValue>
        </sensorID>
      </warn>
      <alarmCount/>
      <warnCount>1003642</warnCount>
      <callCount>1003642</callCount>
      <refreshPeriod>10</refreshPeriod>
      <lastRefresh>2026-06-09 02:32:08:+0000:GMT</lastRefresh>
      <infoText>Alarm or warn state if forbidden GPIO level combination occurs. Just an example</infoText>
    </logicalRule>
  </logicalSensor>
</kehm>
