added logging basics

This commit is contained in:
2020-09-07 17:23:15 +02:00
parent eab95844b8
commit 730b1205f7
5 changed files with 344 additions and 22 deletions

View File

@ -32,7 +32,6 @@ static fd_set selectSet;
*/
reHDD::reHDD(void)
{
cout << "created app" << endl;
u8SelectedEntry = 0U;
}
@ -43,7 +42,6 @@ reHDD::reHDD(void)
*/
void reHDD::app_logic(void)
{
cout << "app logic" << endl;
ui = new TUI();
ui->initTUI();
@ -90,6 +88,7 @@ Drive* reHDD::getSelectedDrive()
}
else
{
Logger::logThis()->warning("selected drive not present");
return {};
}
}
@ -98,7 +97,6 @@ void reHDD::ThreadScannDevices()
{
while(true)
{
// cout << "Thread" << endl;
mxScannDrives.lock();
vecNewDrives.clear();
searchDrives(&vecNewDrives); //search for new drives and store them in list
@ -180,13 +178,13 @@ void reHDD::ThreadShred()
if (getSelectedDrive() != nullptr)
{
Shred::shredDrive(getSelectedDrive(), &fdShredInformPipe[1]);
Logger::logThis()->info("Finished shred for: " + getSelectedDrive()->getModelName() + "-" + getSelectedDrive()->getSerial());
ui->updateTUI(&vecDrives, u8SelectedEntry);
}
}
void reHDD::filterNewDrives(vector <Drive>* pvecOldDrives, vector <Drive>* pvecNewDrives)
{
vector <Drive>::iterator itOld; //Iterator for current (old) drive list
vector <Drive>::iterator itNew; //Iterator for new drive list that was created from to scann thread
@ -209,6 +207,7 @@ void reHDD::filterNewDrives(vector <Drive>* pvecOldDrives, vector <Drive>* pvecN
if(bOldDriveIsOffline == true)
{
//cout << "offline drive found: " << itOld->getPath() << endl;
Logger::logThis()->warning("offline drive found delete for: " + itOld->getPath());
itOld->state = Drive::NONE;
}
}
@ -217,6 +216,7 @@ void reHDD::filterNewDrives(vector <Drive>* pvecOldDrives, vector <Drive>* pvecN
for (long unsigned int i=0; i<pvecNewDrives->size(); i++)
{
pvecOldDrives->push_back((*pvecNewDrives)[i]);
Logger::logThis()->info("Attached drive: " + i + string("-") + pvecNewDrives->at(i).getPath());
}
}
@ -263,8 +263,6 @@ void reHDD::filterIgnoredDrives(vector <Drive>* pvecDrives)
vector<tuple<string, string>> vtlIgnoredDevices; //store drives from ingnore file
//vector <Drive> vecTmpDrives
ifstream input( "ignoreDrives.conf" ); //read ingnore file
for(string sLine; getline( input, sLine );)
@ -280,8 +278,6 @@ void reHDD::filterIgnoredDrives(vector <Drive>* pvecDrives)
sLine.erase(0, pos + sDelimiter.length());
sIgnoredDriveUUID = sLine;
} //end while
//cout << "Path: " << sIgnoredDrivePath << std::endl;
//cout << "UUID: " << sIgnoredDriveUUID << std::endl;
vtlIgnoredDevices.emplace_back(sIgnoredDrivePath, sIgnoredDriveUUID); //add found path and uuid from ingnore file to vector
}
}
@ -322,14 +318,15 @@ void reHDD::filterIgnoredDrives(vector <Drive>* pvecDrives)
if (get<1>(row).compare(sUUID)) //compare uuid from ignore file and uuid from drive
{
cout << "[ERROR] different uuid found than in ignore file:" << it->getPath() << endl;
Logger::logThis()->error("[ERROR] different uuid found than in ignore file: " + it->getPath());
exit(EXIT_FAILURE); // exit to prevent accidentally shred a system drive
}
else
{
// same uuid found than in ignore file --> ignore this drive
Logger::logThis()->info("same uuid found than in ignore file --> ignore this drive: " + it->getPath());
it = pvecDrives->erase(it);
it--;
//cout << "same uuid found than in ignore file --> ignore this drive:" << it->getPath() << endl;
}
}
}
@ -402,6 +399,8 @@ void reHDD::handleArrowKey(TUI::UserInput userInput)
u8SelectedEntry = 0;
break;
}
Logger::logThis()->info("ArrowKey - selected drive: " + to_string(u8SelectedEntry));
}
void reHDD::handleEnter()
@ -410,6 +409,7 @@ void reHDD::handleEnter()
{
if(getSelectedDrive()->state == Drive::TaskState::SHRED_SELECTED)
{
Logger::logThis()->info("Started shred for: " + getSelectedDrive()->getModelName() + "-" + getSelectedDrive()->getSerial());
getSelectedDrive()->state = Drive::TaskState::SHRED_ACTIVE;
//task for drive is running --> don´t show more task options
thread(ThreadShred).detach();
@ -417,11 +417,13 @@ void reHDD::handleEnter()
if(getSelectedDrive()->state == Drive::TaskState::DELETE_SELECTED)
{
Logger::logThis()->info("Started delete for: " + getSelectedDrive()->getModelName() + "-" + getSelectedDrive()->getSerial());
getSelectedDrive()->state = Drive::TaskState::DELETE_ACTIVE;
//task for drive is running --> don´t show more task options
Delete::deleteDrive(getSelectedDrive()); //blocking, no thread
getSelectedDrive()->state = Drive::TaskState::NONE; //delete finished
getSelectedDrive()->bWasDeleteted = true;
Logger::logThis()->info("Finished delete for: " + getSelectedDrive()->getModelName() + "-" + getSelectedDrive()->getSerial());
}
}
}
@ -451,6 +453,7 @@ void reHDD::handleAbort()
if(getSelectedDrive()->state == Drive::SHRED_ACTIVE || getSelectedDrive()->state == Drive::DELETE_ACTIVE )
{
getSelectedDrive()->state = Drive::NONE;
Logger::logThis()->info("Abort-Shred for: " + getSelectedDrive()->getModelName() + "-" + getSelectedDrive()->getSerial());
//task for drive is running --> remove selection
}
}