|
@@ -5,6 +5,7 @@
|
|
|
desc=""
|
|
|
/>
|
|
|
<div class="subObject">
|
|
|
+
|
|
|
<Spin
|
|
|
v-if="spinShow"
|
|
|
fix
|
|
@@ -34,7 +35,7 @@
|
|
|
>
|
|
|
<p style="color:#333">
|
|
|
<template v-if="item.hasOwnProperty('RecordID')">
|
|
|
- ID:{{ item.RecordID }} {{ getTimeStamp(item.TimeStamp).substring(6,10) == "1970" ? 'Pre-init Timestamp':getTimeStamp(item.TimeStamp) }} 名称:{{ item.SensorName }} 类型:{{ item.sensortype }} 描述:{{ item.eventdesc }}
|
|
|
+ ID:{{ item.RecordID }} {{ getTimeStamp(item.TimeStamp).substring(6,10) == "1970" ? 'Pre-init Timestamp':getTimeStamp(item.TimeStamp) }} 名称:{{ item.SensorName }}类型:{{ item.sensortype }} 描述:{{ item.eventdesc }}
|
|
|
</template>
|
|
|
<template v-else>
|
|
|
没有数据, 请稍后再试
|
|
@@ -98,7 +99,6 @@ export default {
|
|
|
lowGraveErr: 0,
|
|
|
filterBy: 0
|
|
|
},
|
|
|
-
|
|
|
year: date.getFullYear(),
|
|
|
month: date.getMonth() + 1,
|
|
|
day: date.getDate(),
|
|
@@ -219,140 +219,220 @@ export default {
|
|
|
filterSencond(item){
|
|
|
console.log(item)
|
|
|
},
|
|
|
+ filterEventBySelf(item){
|
|
|
+ let Eventdata1 = item.EventData1
|
|
|
+ let Eventdata2 = item.EventData2
|
|
|
+ let Eventdata3 = item.EventData3
|
|
|
+ let Eventdata4 = item.EventData4
|
|
|
+ if (Eventdata1 == 1 && Eventdata2 == 1 && Eventdata3 == 1 ) {
|
|
|
+ item.eventdesc = 'User login BMC Web'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 1 && Eventdata3 == 2 ) {
|
|
|
+ item.eventdesc = 'User logout BMC Web'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 1 && Eventdata4 == 1) {
|
|
|
+ item.eventdesc = 'Chassis power on by system command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 1 && Eventdata4 == 2) {
|
|
|
+ item.eventdesc = 'Chassis power on by BMC command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 1 && Eventdata4 == 3) {
|
|
|
+ item.eventdesc = 'Chassis power on by watchdog'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 1 && Eventdata4 == 4) {
|
|
|
+ item.eventdesc = 'Chassis power on by button'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 1 && Eventdata4 != 1 && Eventdata4 != 2 && Eventdata4 != 3 && Eventdata4 != 4 ) {
|
|
|
+ item.eventdesc = 'Chassis power on by unknown cause'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 2 && Eventdata4 == 1) {
|
|
|
+ item.eventdesc = 'Chassis power off by system command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 2 && Eventdata4 == 2) {
|
|
|
+ item.eventdesc = 'Chassis power off by BMC command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 2 && Eventdata4 == 3) {
|
|
|
+ item.eventdesc = 'Chassis power off by watchdog'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 2 && Eventdata4 == 4) {
|
|
|
+ item.eventdesc = 'Chassis power off by button'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 2 && Eventdata4 != 1 && Eventdata4 != 2 && Eventdata4 != 3&& Eventdata4 != 4 ) {
|
|
|
+ item.eventdesc = 'Chassis power off by unknown cause'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 3 && Eventdata4 == 1) {
|
|
|
+ item.eventdesc = 'Chassis power reset by system command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 3 && Eventdata4 == 2) {
|
|
|
+ item.eventdesc = 'Chassis power reset by BMC command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 3 && Eventdata4 == 3) {
|
|
|
+ item.eventdesc = 'Chassis power reset by watchdog'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 3 && Eventdata4 == 4) {
|
|
|
+ item.eventdesc = 'Chassis power reset by button'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 3 && Eventdata4 != 1 && Eventdata4 != 2 && Eventdata4 != 3&& Eventdata4 != 4 ) {
|
|
|
+ item.eventdesc = 'Chassis power reset by unknown cause'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 4 && Eventdata4 == 1) {
|
|
|
+ item.eventdesc = 'Chassis power cycle by system command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 4 && Eventdata4 == 2) {
|
|
|
+ item.eventdesc = 'Chassis power cycle by BMC command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 4 && Eventdata4 == 3) {
|
|
|
+ item.eventdesc = 'Chassis power cycle by watchdog'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 4 && Eventdata4 == 4) {
|
|
|
+ item.eventdesc = 'Chassis power cycle by button'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 2 && Eventdata3 == 4 && Eventdata4 != 1 && Eventdata4 != 2 && Eventdata4 != 3&& Eventdata4 != 4 ) {
|
|
|
+ item.eventdesc = 'Chassis power cycle by unknown cause'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 3 && Eventdata3 == 1 ) {
|
|
|
+ item.eventdesc = 'BMC reset by cold reset command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 3 && Eventdata3 == 2) {
|
|
|
+ item.eventdesc = 'BMC reset by warm reset command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 3 && Eventdata3 == 3) {
|
|
|
+ item.eventdesc = 'BMC reset by watchdog command'
|
|
|
+ } else if (Eventdata1 == 1 && Eventdata2 == 3 && Eventdata3 != 1 && Eventdata3 != 2 && Eventdata3 != 3&& Eventdata3 != 4 ) {
|
|
|
+ item.eventdesc = ' BMC reset by unknown cause'
|
|
|
+ } else if (Eventdata1 == 2 && Eventdata2 == 1 && Eventdata3 == 0 ) {
|
|
|
+ item.eventdesc = 'Power status going down'
|
|
|
+ } else if (Eventdata1 == 2 && Eventdata2 == 1 && Eventdata3 == 1 ) {
|
|
|
+ item.eventdesc = 'Power status going up'
|
|
|
+ }
|
|
|
+
|
|
|
+ },
|
|
|
filterByData(data){
|
|
|
let eventtype = 0;
|
|
|
- data.forEach(item =>{
|
|
|
+ data.forEach(item =>{
|
|
|
item.RecordID = item.D1
|
|
|
item.RecordType = item.D2
|
|
|
item.TimeStamp= item.D3
|
|
|
- item.GenID1 = item.D4
|
|
|
- item.GenID2 = item.D5
|
|
|
- item.EvmRev = item.D6
|
|
|
- item.SensorType = item.D7
|
|
|
- item.EventDirType = item.D8
|
|
|
- item.EventData1 = item.D9
|
|
|
- item.EventData2 = item.D10
|
|
|
- item.EventData3 = item.D11
|
|
|
- item.SensorName = item.D12
|
|
|
- if(this.formItem.lowGraveErr != 0){
|
|
|
- if (item.RecordType >= 0x0 &&
|
|
|
- item.RecordType <= 0xBF) {
|
|
|
- eventtype = 0;
|
|
|
- if (this.formItem.lowGraveErr != 1) {
|
|
|
- if (this.getbits(item.GenID1, 0, 0) == 1) {
|
|
|
- if ((this.getbitsval(item.GenID1, 7, 1) >= 0x0) &&
|
|
|
- (this.getbitsval(item.GenID1, 7, 1) <= 0x0F)) {
|
|
|
- eventtype = 3;
|
|
|
- } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x10) &&
|
|
|
- (this.getbitsval(item.GenID1, 7, 1) <= 0x1F)) {
|
|
|
- eventtype = 4;
|
|
|
- } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x20) &&
|
|
|
- (this.getbitsval(item.GenID1, 7, 1) <= 0x2F)) {
|
|
|
- eventtype = 5;
|
|
|
- } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x30) &&
|
|
|
- (this.getbitsval(item.GenID1, 7, 1) <= 0x3F)) {
|
|
|
- eventtype = 6;
|
|
|
- } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x40) &&
|
|
|
- (this.getbitsval(item.GenID1, 7, 1) <= 0x46)) {
|
|
|
- eventtype = 7;
|
|
|
- } else if (this.getbitsval(item.GenID1, 7, 1) == 0x47) {
|
|
|
- eventtype = 8;
|
|
|
- }
|
|
|
- eventdesc = eLang.getString("common", "STR_SOFTWARE_ID") +
|
|
|
- "-" + eLang.getString("common", "STR_EVENT_LOG_TYPE" +
|
|
|
- eventtype);
|
|
|
- }
|
|
|
- }
|
|
|
- } else if ((item.RecordType >= 0xC0) &&
|
|
|
- (item.RecordType <= 0xFF)){
|
|
|
- //C0h-DFh = OEM timestamped
|
|
|
- //E0h-FFh = OEM non-timestamped
|
|
|
- eventtype = 2;
|
|
|
- }
|
|
|
- // if (this.formItem.lowGraveErr != eventtype) {
|
|
|
- // //if not matches skips the record
|
|
|
- // return true
|
|
|
- // }
|
|
|
- }
|
|
|
|
|
|
- this.sensorNameSet.add(item.SensorName);
|
|
|
- if(item.RecordType >= 0 && item.RecordType <= 191) {
|
|
|
-
|
|
|
- let type = this.getbits(item.EventDirType, 6, 0);
|
|
|
+ if(item.RecordType == 0xc0){
|
|
|
|
|
|
- if (type == 0x0) {
|
|
|
- //Event/Reading Type unspecified
|
|
|
- } else if (type == 0x6F) {
|
|
|
- //Sensor-specific Discrete
|
|
|
- //If event type is 0x6F then read from sensor-specific table
|
|
|
- offset = this.getbits(item.EventData1, 3, 0);
|
|
|
- if(this.m_Max_allowed_SensorSpecific_offset[item.SensorType]
|
|
|
- >= offset) {
|
|
|
- eventdesc = eLang.getString("sensor_specific_event", item.SensorType, offset);
|
|
|
- } else {
|
|
|
- eventdesc = eLang.getString("common", "INVALID_OFFSET");
|
|
|
- }
|
|
|
- } else if ((type >= 0x01) && (type <= 0x0C)) {
|
|
|
- //0x01-Threshold based, 0x02-0x0C Generic Discrete
|
|
|
- offset = this.getbits(item.EventData1, 3, 0);
|
|
|
- if (this.m_Max_allowed_offset[type] >= offset) {
|
|
|
- eventdesc = eLang.getString("event", type, offset);
|
|
|
- } else {
|
|
|
- eventdesc = eLang.getString("common", "INVALID_OFFSET");
|
|
|
- }
|
|
|
- } else {
|
|
|
- /* 0x70-0x7F,OEM Discrete */
|
|
|
- eventdesc = eLang.getString("event", "OEM_DISCRETE");
|
|
|
- }
|
|
|
- item.eventdesc = eventdesc
|
|
|
- // item.EventDirType = 1
|
|
|
- }
|
|
|
+ item.SensorName = "- "
|
|
|
+ item.sensortype = "- "
|
|
|
+ item.EventData1 = item.D4
|
|
|
+ item.EventData2 = item.D5
|
|
|
+ item.EventData3 = item.D6
|
|
|
+ item.EventData4 = item.D7
|
|
|
|
|
|
- if ((item.GenID1 >= 1) &&
|
|
|
- (item.GenID1 <= 31) &&
|
|
|
- (item.SensorType == 15)) {
|
|
|
- /* look up bios_post_String using offset and evtdata2
|
|
|
- we are clean event data 2 should be seen only if this bits
|
|
|
- indicate evtdata2 has something */
|
|
|
+ this.filterEventBySelf(item)
|
|
|
|
|
|
- //Only 0 and 1 table are in Bios_post_event_str.js
|
|
|
- if ((this.getbits(item.EventData1,7,6) == 192) &&
|
|
|
- ((offset >= 0) && (offset <= 2))) {
|
|
|
- /* Since SensorType 0xf ,Offset 1 and 2 use the same table Entry */
|
|
|
- if(2 == offset) {
|
|
|
- offset =1;
|
|
|
- }
|
|
|
- eventdesc += "-" + eLang.getString("bios_post_event",
|
|
|
- offset, this.getbits(item.EventData2, 3, 0));
|
|
|
- } else {
|
|
|
- eventdesc += "-" + eLang.getString("common", "STR_UNKNOWN");
|
|
|
- }
|
|
|
- }
|
|
|
+ } else if(item.RecordType == 0x02) {
|
|
|
+ item.GenID1 = item.D4
|
|
|
+ item.GenID2 = item.D5
|
|
|
+ item.EvmRev = item.D6
|
|
|
+ item.SensorType = item.D7
|
|
|
+ item.EventDirType = item.D8
|
|
|
+ item.EventData1 = item.D9
|
|
|
+ item.EventData2 = item.D10
|
|
|
+ item.EventData3 = item.D11
|
|
|
+ item.SensorName = item.D12
|
|
|
+ if(this.formItem.lowGraveErr != 0){
|
|
|
+ if (item.RecordType >= 0x0 &&
|
|
|
+ item.RecordType <= 0xBF) {
|
|
|
+ eventtype = 0;
|
|
|
+ if (this.formItem.lowGraveErr != 1) {
|
|
|
+ if (this.getbits(item.GenID1, 0, 0) == 1) {
|
|
|
+ if ((this.getbitsval(item.GenID1, 7, 1) >= 0x0) &&
|
|
|
+ (this.getbitsval(item.GenID1, 7, 1) <= 0x0F)) {
|
|
|
+ eventtype = 3;
|
|
|
+ } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x10) &&
|
|
|
+ (this.getbitsval(item.GenID1, 7, 1) <= 0x1F)) {
|
|
|
+ eventtype = 4;
|
|
|
+ } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x20) &&
|
|
|
+ (this.getbitsval(item.GenID1, 7, 1) <= 0x2F)) {
|
|
|
+ eventtype = 5;
|
|
|
+ } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x30) &&
|
|
|
+ (this.getbitsval(item.GenID1, 7, 1) <= 0x3F)) {
|
|
|
+ eventtype = 6;
|
|
|
+ } else if ((this.getbitsval(item.GenID1, 7, 1) >= 0x40) &&
|
|
|
+ (this.getbitsval(item.GenID1, 7, 1) <= 0x46)) {
|
|
|
+ eventtype = 7;
|
|
|
+ } else if (this.getbitsval(item.GenID1, 7, 1) == 0x47) {
|
|
|
+ eventtype = 8;
|
|
|
+ }
|
|
|
+ eventdesc = eLang.getString("common", "STR_SOFTWARE_ID") +
|
|
|
+ "-" + eLang.getString("common", "STR_EVENT_LOG_TYPE" +
|
|
|
+ eventtype);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else if ((item.RecordType >= 0xC0) &&
|
|
|
+ (item.RecordType <= 0xFF)){
|
|
|
+ //C0h-DFh = OEM timestamped
|
|
|
+ //E0h-FFh = OEM non-timestamped
|
|
|
+ eventtype = 2;
|
|
|
+ }
|
|
|
+ // if (this.formItem.lowGraveErr != eventtype) {
|
|
|
+ // //if not matches skips the record
|
|
|
+ // return true
|
|
|
+ // }
|
|
|
+ }
|
|
|
+
|
|
|
+ this.sensorNameSet.add(item.SensorName);
|
|
|
+ if(item.RecordType >= 0 && item.RecordType <= 191) {
|
|
|
+
|
|
|
+ let type = this.getbits(item.EventDirType, 6, 0);
|
|
|
+
|
|
|
+ if (type == 0x0) {
|
|
|
+ //Event/Reading Type unspecified
|
|
|
+ } else if (type == 0x6F) {
|
|
|
+ //Sensor-specific Discrete
|
|
|
+ //If event type is 0x6F then read from sensor-specific table
|
|
|
+ offset = this.getbits(item.EventData1, 3, 0);
|
|
|
+ if(this.m_Max_allowed_SensorSpecific_offset[item.SensorType]
|
|
|
+ >= offset) {
|
|
|
+ eventdesc = eLang.getString("sensor_specific_event", item.SensorType, offset);
|
|
|
+ } else {
|
|
|
+ eventdesc = eLang.getString("common", "INVALID_OFFSET");
|
|
|
+ }
|
|
|
+ } else if ((type >= 0x01) && (type <= 0x0C)) {
|
|
|
+ //0x01-Threshold based, 0x02-0x0C Generic Discrete
|
|
|
+ offset = this.getbits(item.EventData1, 3, 0);
|
|
|
+ if (this.m_Max_allowed_offset[type] >= offset) {
|
|
|
+ eventdesc = eLang.getString("event", type, offset);
|
|
|
+ } else {
|
|
|
+ eventdesc = eLang.getString("common", "INVALID_OFFSET");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ /* 0x70-0x7F,OEM Discrete */
|
|
|
+ eventdesc = eLang.getString("event", "OEM_DISCRETE");
|
|
|
+ }
|
|
|
+ item.eventdesc = eventdesc
|
|
|
+ // item.EventDirType = 1
|
|
|
+ }
|
|
|
+
|
|
|
+ if ((item.GenID1 >= 1) &&
|
|
|
+ (item.GenID1 <= 31) &&
|
|
|
+ (item.SensorType == 15)) {
|
|
|
+ /* look up bios_post_String using offset and evtdata2
|
|
|
+ we are clean event data 2 should be seen only if this bits
|
|
|
+ indicate evtdata2 has something */
|
|
|
+
|
|
|
+ //Only 0 and 1 table are in Bios_post_event_str.js
|
|
|
+ if ((this.getbits(item.EventData1,7,6) == 192) &&
|
|
|
+ ((offset >= 0) && (offset <= 2))) {
|
|
|
+ /* Since SensorType 0xf ,Offset 1 and 2 use the same table Entry */
|
|
|
+ if(2 == offset) {
|
|
|
+ offset =1;
|
|
|
+ }
|
|
|
+ eventdesc += "-" + eLang.getString("bios_post_event",
|
|
|
+ offset, this.getbits(item.EventData2, 3, 0));
|
|
|
+ } else {
|
|
|
+ eventdesc += "-" + eLang.getString("common", "STR_UNKNOWN");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (this.getbits(item.EventDirType,7,7) == 0) {
|
|
|
+ if(typeof(eventdesc) != "undefined") {
|
|
|
+ // to avoid eventdesc with multiple Asserted like "undefined - Asserted - Asserted"
|
|
|
+ if(eventdesc.indexOf(eLang.getString("common", "STR_EVENT_LOG_ASSERT")) == -1) {
|
|
|
+ eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_ASSERT");
|
|
|
+ }
|
|
|
+ } else
|
|
|
+ eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_ASSERT");
|
|
|
+ } else {
|
|
|
+ if(typeof(eventdesc) != "undefined") {
|
|
|
+ // to avoid eventdesc with multiple Asserted like "undefined - Deasserted - Deasserted"
|
|
|
+ if(eventdesc.indexOf(eLang.getString("common", "STR_EVENT_LOG_DEASSERT")) == -1) {
|
|
|
+ eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_DEASSERT");
|
|
|
+ }
|
|
|
+ } else
|
|
|
+ eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_DEASSERT");
|
|
|
+ }
|
|
|
+ sensortype = eLang.getString("sensortype", item.SensorType);
|
|
|
+ item.sensortype = sensortype
|
|
|
+ }
|
|
|
|
|
|
- if (this.getbits(item.EventDirType,7,7) == 0) {
|
|
|
- if(typeof(eventdesc) != "undefined") {
|
|
|
- // to avoid eventdesc with multiple Asserted like "undefined - Asserted - Asserted"
|
|
|
- if(eventdesc.indexOf(eLang.getString("common", "STR_EVENT_LOG_ASSERT")) == -1) {
|
|
|
- eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_ASSERT");
|
|
|
- }
|
|
|
- } else
|
|
|
- eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_ASSERT");
|
|
|
- } else {
|
|
|
- if(typeof(eventdesc) != "undefined") {
|
|
|
- // to avoid eventdesc with multiple Asserted like "undefined - Deasserted - Deasserted"
|
|
|
- if(eventdesc.indexOf(eLang.getString("common", "STR_EVENT_LOG_DEASSERT")) == -1) {
|
|
|
- eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_DEASSERT");
|
|
|
- }
|
|
|
- } else
|
|
|
- eventdesc += " - "+eLang.getString("common", "STR_EVENT_LOG_DEASSERT");
|
|
|
- }
|
|
|
- sensortype = eLang.getString("sensortype", item.SensorType);
|
|
|
- item.sensortype = sensortype
|
|
|
|
|
|
})
|
|
|
this.data = data
|
|
|
},
|
|
|
getData(){
|
|
|
+ this.spinShow = true
|
|
|
api.Get("/action/GetAllSELEntriesSorted", {}).then((res)=>{
|
|
|
// this.data = res.data
|
|
|
this.filterByData(res.data)
|