1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

Reformat all code to coding standard

This commit is contained in:
Andrew Hutchings
2017-10-26 17:18:17 +01:00
parent 4985f3456e
commit 01446d1e22
1296 changed files with 403852 additions and 353747 deletions

View File

@ -52,133 +52,143 @@ using namespace logging;
************************************************************************************************************/
int main (int argc, char** argv)
{
string data[10];
string SensorName;
float SensorValue;
string data[10];
string SensorName;
float SensorValue;
string Units;
string SensorStatus;
float lowFatal;
float lowCritical;
float lowWarning;
float highWarning;
float highCritical;
float highFatal;
char *p;
string SensorStatus;
float lowFatal;
float lowCritical;
float lowWarning;
float highWarning;
float highCritical;
float highFatal;
char* p;
// check for IPMI_SUPPORT FLAG passed in
if(argc > 1)
IPMI_SUPPORT = atoi(argv[1]);
if (argc > 1)
IPMI_SUPPORT = atoi(argv[1]);
// loop forever reading the hardware status
while(true)
{
if( IPMI_SUPPORT == 0) {
int returnCode = system("ipmitool sensor list > /tmp/harwareMonitor.txt");
if (returnCode) {
// System error, Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add("Error running ipmitool sensor list!!!");
msg.format(args);
ml.logWarningMessage(msg);
sleep(300);
continue;
}
}
// parse output file
ifstream File ("/tmp/harwareMonitor.txt");
if (!File){
// System error, Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add("Error opening /tmp/harwareMonitor.txt!!!");
msg.format(args);
ml.logWarningMessage(msg);
sleep(300);
continue;
}
char line[200];
while (File.getline(line, 200))
{
// parse the line
int f = 0;
p = strtok(line,"|");
while (p)
{
data[f]=p;
data[f] = StripWhitespace(data[f]);
p = strtok (NULL, "|");
f++;
}
if( f == 0 )
// nothing on this line, skip
continue;
SensorName = data[0];
SensorValue = atof(data[1].c_str());
Units = data[2];
SensorStatus = data[3];
lowFatal = atof(data[4].c_str());
lowCritical = atof(data[5].c_str());
lowWarning = atof(data[6].c_str());
highWarning = atof(data[7].c_str());
highCritical = atof(data[8].c_str());
highFatal = atof(data[9].c_str());
// loop forever reading the hardware status
while (true)
{
if ( IPMI_SUPPORT == 0)
{
int returnCode = system("ipmitool sensor list > /tmp/harwareMonitor.txt");
// check status and issue apporiate alarm if needed
if ( (SensorStatus != "ok") && (SensorStatus != "nr") && (SensorStatus != "na") ) {
// Status error, check for warning or critical levels
if (returnCode)
{
// System error, Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add("Error running ipmitool sensor list!!!");
msg.format(args);
ml.logWarningMessage(msg);
sleep(300);
continue;
}
}
if ( SensorValue >= highFatal ) {
// issue critical alarm and send message to shutdown Server
sendAlarm(SensorName, HARDWARE_HIGH, SET, SensorValue);
sendMsgShutdownServer();
}
else if ( (SensorValue < highFatal) && (SensorValue >= highCritical) )
// issue major alarm
sendAlarm(SensorName, HARDWARE_MED, SET, SensorValue);
// parse output file
else if ( (SensorValue < highCritical ) && (SensorValue >= highWarning) )
// issue minor alarm
sendAlarm(SensorName, HARDWARE_LOW, SET, SensorValue);
ifstream File ("/tmp/harwareMonitor.txt");
else if ( (SensorValue <= lowWarning) && (SensorValue > lowCritical) )
// issue minor alarm
sendAlarm(SensorName, HARDWARE_LOW, SET, SensorValue);
if (!File)
{
// System error, Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add("Error opening /tmp/harwareMonitor.txt!!!");
msg.format(args);
ml.logWarningMessage(msg);
sleep(300);
continue;
}
else if ( (SensorValue <= lowCritical) && (SensorValue > lowFatal) )
// issue major alarm
sendAlarm(SensorName, HARDWARE_MED, SET, SensorValue);
char line[200];
else if ( SensorValue <= lowFatal ) {
// issue critical alarm and send message to shutdown Server
sendAlarm(SensorName, HARDWARE_HIGH, SET, SensorValue);
sendMsgShutdownServer();
}
else
// check if there are any active alarms that needs to be cleared
checkAlarm(SensorName);
}
else
// check if there are any active alarms that needs to be cleared
checkAlarm(SensorName);
while (File.getline(line, 200))
{
// parse the line
int f = 0;
p = strtok(line, "|");
} //end of parsing file while
File.close();
// sleep for 1 minute
sleep(60);
} //end of forever while loop
while (p)
{
data[f] = p;
data[f] = StripWhitespace(data[f]);
p = strtok (NULL, "|");
f++;
}
if ( f == 0 )
// nothing on this line, skip
continue;
SensorName = data[0];
SensorValue = atof(data[1].c_str());
Units = data[2];
SensorStatus = data[3];
lowFatal = atof(data[4].c_str());
lowCritical = atof(data[5].c_str());
lowWarning = atof(data[6].c_str());
highWarning = atof(data[7].c_str());
highCritical = atof(data[8].c_str());
highFatal = atof(data[9].c_str());
// check status and issue apporiate alarm if needed
if ( (SensorStatus != "ok") && (SensorStatus != "nr") && (SensorStatus != "na") )
{
// Status error, check for warning or critical levels
if ( SensorValue >= highFatal )
{
// issue critical alarm and send message to shutdown Server
sendAlarm(SensorName, HARDWARE_HIGH, SET, SensorValue);
sendMsgShutdownServer();
}
else if ( (SensorValue < highFatal) && (SensorValue >= highCritical) )
// issue major alarm
sendAlarm(SensorName, HARDWARE_MED, SET, SensorValue);
else if ( (SensorValue < highCritical ) && (SensorValue >= highWarning) )
// issue minor alarm
sendAlarm(SensorName, HARDWARE_LOW, SET, SensorValue);
else if ( (SensorValue <= lowWarning) && (SensorValue > lowCritical) )
// issue minor alarm
sendAlarm(SensorName, HARDWARE_LOW, SET, SensorValue);
else if ( (SensorValue <= lowCritical) && (SensorValue > lowFatal) )
// issue major alarm
sendAlarm(SensorName, HARDWARE_MED, SET, SensorValue);
else if ( SensorValue <= lowFatal )
{
// issue critical alarm and send message to shutdown Server
sendAlarm(SensorName, HARDWARE_HIGH, SET, SensorValue);
sendMsgShutdownServer();
}
else
// check if there are any active alarms that needs to be cleared
checkAlarm(SensorName);
}
else
// check if there are any active alarms that needs to be cleared
checkAlarm(SensorName);
} //end of parsing file while
File.close();
// sleep for 1 minute
sleep(60);
} //end of forever while loop
}
/******************************************************************************************
* @brief sendAlarm
*
@ -187,48 +197,52 @@ int main (int argc, char** argv)
******************************************************************************************/
void sendAlarm(string alarmItem, ALARMS alarmID, int action, float sensorValue)
{
Oam oam;
Oam oam;
//Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add(alarmItem);
args.add(", sensor value out-of-range: ");
args.add(sensorValue);
//Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add(alarmItem);
args.add(", sensor value out-of-range: ");
args.add(sensorValue);
// get current server name
string serverName;
oamServerInfo_t st;
try {
st = oam.getServerInfo();
serverName = boost::get<0>(st);
}
catch (...) {
serverName = "Unknown Server";
}
// get current server name
string serverName;
oamServerInfo_t st;
// check if there is an active alarm above the reporting theshold
// that needs to be cleared
checkAlarm(alarmItem, alarmID);
try
{
st = oam.getServerInfo();
serverName = boost::get<0>(st);
}
catch (...)
{
serverName = "Unknown Server";
}
// check if Alarm is already active, don't resend
if ( !( oam.checkActiveAlarm(alarmID, serverName, alarmItem)) ) {
// check if there is an active alarm above the reporting theshold
// that needs to be cleared
checkAlarm(alarmItem, alarmID);
ALARMManager alarmMgr;
// send alarm
alarmMgr.sendAlarmReport(alarmItem.c_str(), alarmID, action);
// check if Alarm is already active, don't resend
if ( !( oam.checkActiveAlarm(alarmID, serverName, alarmItem)) )
{
args.add(", Alarm set: ");
args.add(alarmID);
}
ALARMManager alarmMgr;
// send alarm
alarmMgr.sendAlarmReport(alarmItem.c_str(), alarmID, action);
// output log
msg.format(args);
ml.logWarningMessage(msg);
args.add(", Alarm set: ");
args.add(alarmID);
}
return;
// output log
msg.format(args);
ml.logWarningMessage(msg);
return;
}
/******************************************************************************************
@ -239,48 +253,62 @@ void sendAlarm(string alarmItem, ALARMS alarmID, int action, float sensorValue)
******************************************************************************************/
void checkAlarm(string alarmItem, ALARMS alarmID)
{
Oam oam;
Oam oam;
// get current server name
string serverName;
oamServerInfo_t st;
try {
st = oam.getServerInfo();
serverName = boost::get<0>(st);
}
catch (...) {
serverName = "Unknown Server";
}
// get current server name
string serverName;
oamServerInfo_t st;
switch (alarmID) {
case ALARM_NONE: // clear all alarms set if any found
if ( oam.checkActiveAlarm(HARDWARE_HIGH, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_HIGH);
if ( oam.checkActiveAlarm(HARDWARE_MED, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_MED);
if ( oam.checkActiveAlarm(HARDWARE_LOW, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_LOW);
break;
case HARDWARE_LOW: // clear high and medium alarms set if any found
if ( oam.checkActiveAlarm(HARDWARE_HIGH, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_HIGH);
if ( oam.checkActiveAlarm(HARDWARE_MED, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_MED);
break;
case HARDWARE_MED: // clear high alarms set if any found
if ( oam.checkActiveAlarm(HARDWARE_HIGH, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_HIGH);
break;
default: // none to clear
break;
} // end of switch
return;
try
{
st = oam.getServerInfo();
serverName = boost::get<0>(st);
}
catch (...)
{
serverName = "Unknown Server";
}
switch (alarmID)
{
case ALARM_NONE: // clear all alarms set if any found
if ( oam.checkActiveAlarm(HARDWARE_HIGH, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_HIGH);
if ( oam.checkActiveAlarm(HARDWARE_MED, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_MED);
if ( oam.checkActiveAlarm(HARDWARE_LOW, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_LOW);
break;
case HARDWARE_LOW: // clear high and medium alarms set if any found
if ( oam.checkActiveAlarm(HARDWARE_HIGH, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_HIGH);
if ( oam.checkActiveAlarm(HARDWARE_MED, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_MED);
break;
case HARDWARE_MED: // clear high alarms set if any found
if ( oam.checkActiveAlarm(HARDWARE_HIGH, serverName, alarmItem) )
// alarm set, clear it
clearAlarm(alarmItem, HARDWARE_HIGH);
break;
default: // none to clear
break;
} // end of switch
return;
}
/******************************************************************************************
@ -291,20 +319,20 @@ void checkAlarm(string alarmItem, ALARMS alarmID)
******************************************************************************************/
void clearAlarm(string alarmItem, ALARMS alarmID)
{
ALARMManager alarmMgr;
alarmMgr.sendAlarmReport(alarmItem.c_str(), alarmID, CLEAR);
ALARMManager alarmMgr;
alarmMgr.sendAlarmReport(alarmItem.c_str(), alarmID, CLEAR);
//Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add(alarmItem);
args.add(" alarm #");
args.add(alarmID);
args.add("cleared");
msg.format(args);
ml.logWarningMessage(msg);
//Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add(alarmItem);
args.add(" alarm #");
args.add(alarmID);
args.add("cleared");
msg.format(args);
ml.logWarningMessage(msg);
}
/******************************************************************************************
* @brief sendMsgShutdownServer
@ -314,39 +342,42 @@ void clearAlarm(string alarmItem, ALARMS alarmID)
******************************************************************************************/
void sendMsgShutdownServer()
{
Oam oam;
Oam oam;
//Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add("Fatal Hardware Alarm detected, Server being shutdown");
msg.format(args);
ml.logCriticalMessage(msg);
//Log this event
LoggingID lid;
MessageLog ml(lid);
Message msg;
Message::Args args;
args.add("Fatal Hardware Alarm detected, Server being shutdown");
msg.format(args);
ml.logCriticalMessage(msg);
string serverName;
oamServerInfo_t st;
try {
st = oam.getServerInfo();
serverName = boost::get<0>(st);
}
catch (...) {
// o well, let's take out own action
if( IPMI_SUPPORT == 0)
system("init 0");
}
string serverName;
oamServerInfo_t st;
try
{
oam.shutdownServer(serverName, FORCEFUL, ACK_NO);
}
catch (exception& e)
{
// o well, let's take out own action
if( IPMI_SUPPORT == 0)
system("init 0");
}
try
{
st = oam.getServerInfo();
serverName = boost::get<0>(st);
}
catch (...)
{
// o well, let's take out own action
if ( IPMI_SUPPORT == 0)
system("init 0");
}
try
{
oam.shutdownServer(serverName, FORCEFUL, ACK_NO);
}
catch (exception& e)
{
// o well, let's take out own action
if ( IPMI_SUPPORT == 0)
system("init 0");
}
}
/******************************************************************************************
@ -357,20 +388,25 @@ void sendMsgShutdownServer()
******************************************************************************************/
string StripWhitespace(string value)
{
for(;;)
{
string::size_type pos = value.find (' ',0);
if (pos == string::npos)
// no more found
break;
// strip leading
if (pos == 0) {
value = value.substr (pos+1,10000);
}
else
{ // strip trailing
value = value.substr (0, pos);
}
}
return value;
for (;;)
{
string::size_type pos = value.find (' ', 0);
if (pos == string::npos)
// no more found
break;
// strip leading
if (pos == 0)
{
value = value.substr (pos + 1, 10000);
}
else
{
// strip trailing
value = value.substr (0, pos);
}
}
return value;
}