Merge, test, fix, and release

dev v0.6
marcelb 5 months ago
commit f6f7853062
  1. 2
      .gitignore
  2. 1
      example/2023-05-21.log
  3. 3
      example/2023-07-27.log
  4. 5
      example/2023-5-20.log
  5. 2
      example/2023-5-21.log
  6. 2
      lib/log.hpp
  7. 34
      src/log.cpp
  8. 4
      test/test.cpp
  9. BIN
      test/test.o

2
.gitignore vendored

@ -1,3 +1,3 @@
.vscode .vscode
example/* example
test/*.o test/*.o

@ -1 +0,0 @@
23:08:58 [EVENT] Start loging

@ -1,3 +0,0 @@
18:29:30 [EVENT] Start loging
18:29:44 [EVENT] Start loging
18:29:47 [EVENT] Start loging

@ -1,5 +0,0 @@
[EVENT] Start loging
[EVENT] Start loging
10:58:12 [EVENT] Start loging
10:59:19 [EVENT] Start loging
11:00:17 [EVENT] Start loging

@ -1,2 +0,0 @@
11:00:58 [EVENT] Start loging
13:02:17 [EVENT] Start loging

@ -14,6 +14,7 @@
typedef unsigned int uint; typedef unsigned int uint;
#endif #endif
namespace marcelb { namespace marcelb {
namespace logging {
using namespace std; using namespace std;
@ -116,6 +117,7 @@ class log {
~log(); ~log();
}; };
}
} }
#endif #endif

@ -1,6 +1,9 @@
#include "../lib/log.hpp" #include "../lib/log.hpp"
marcelb::log::log(string _dir, Level _loglevel, bool _isKeepOpen, bool _printInConsole) { namespace marcelb {
namespace logging {
log::log(string _dir, Level _loglevel, bool _isKeepOpen, bool _printInConsole) {
dir = _dir; dir = _dir;
loglevel = _loglevel; loglevel = _loglevel;
isKeepOpen = _isKeepOpen; isKeepOpen = _isKeepOpen;
@ -22,28 +25,28 @@ marcelb::log::log(string _dir, Level _loglevel, bool _isKeepOpen, bool _printInC
} }
bool marcelb::log::isdir() { bool log::isdir() {
struct stat sb; struct stat sb;
return stat(dir.c_str(), &sb) == 0; return stat(dir.c_str(), &sb) == 0;
} }
bool marcelb::log::open() { bool log::open() {
logfile = ofstream (path, ios_base::app); logfile = ofstream (path, ios_base::app);
return logfile.is_open(); return logfile.is_open();
} }
void marcelb::log::loose() { void log::loose() {
logfile.close(); logfile.close();
} }
void marcelb::log::setMoment() { void log::setMoment() {
time_t rawtime; time_t rawtime;
time (&rawtime); time (&rawtime);
moment = localtime (&rawtime); moment = localtime (&rawtime);
} }
void marcelb::log::put(string logline, Level _level) { void log::put(string logline, Level _level) {
if (_level < loglevel) { if (_level < loglevel) {
return; return;
} }
@ -83,7 +86,7 @@ void marcelb::log::put(string logline, Level _level) {
} }
void marcelb::log::setPath() { void log::setPath() {
if (dir[dir.length()-1] != '/') { if (dir[dir.length()-1] != '/') {
dir.push_back('/'); dir.push_back('/');
} }
@ -94,7 +97,7 @@ void marcelb::log::setPath() {
path = dir + to_string(moment->tm_year+1900) + '-' + mon.str() + '-' + _day.str() + ".log"; path = dir + to_string(moment->tm_year+1900) + '-' + mon.str() + '-' + _day.str() + ".log";
} }
void marcelb::log::setPrefix(string &logline, Level &_level) { void log::setPrefix(string &logline, Level &_level) {
stringstream hour, min, sec; stringstream hour, min, sec;
hour << setw(2) << setfill('0') << moment->tm_hour; hour << setw(2) << setfill('0') << moment->tm_hour;
min << setw(2) << setfill('0') << moment->tm_min; min << setw(2) << setfill('0') << moment->tm_min;
@ -125,28 +128,31 @@ void marcelb::log::setPrefix(string &logline, Level &_level) {
logline = _logline + logline; logline = _logline + logline;
} }
void marcelb::log::debug(string logline) { void log::debug(string logline) {
put(logline, DEBUG); put(logline, DEBUG);
} }
void marcelb::log::info(string logline) { void log::info(string logline) {
put(logline, INFO); put(logline, INFO);
} }
void marcelb::log::warning(string logline) { void log::warning(string logline) {
put(logline, WARNING); put(logline, WARNING);
} }
void marcelb::log::error(string logline) { void log::error(string logline) {
put(logline, ERROR); put(logline, ERROR);
} }
void marcelb::log::fatal(string logline) { void log::fatal(string logline) {
put(logline, FATAL); put(logline, FATAL);
} }
marcelb::log::~log() { log::~log() {
loose(); loose();
} }
}
}

@ -3,9 +3,9 @@
#include "../lib/log.hpp" #include "../lib/log.hpp"
using namespace std; using namespace std;
using namespace marcelb; using namespace marcelb::logging;
log mylog("../example", Level::FATAL, false); log mylog("../example", Level::INFO, false);
int main() { int main() {
mylog.debug("Start debug loging"); mylog.debug("Start debug loging");

Binary file not shown.
Loading…
Cancel
Save