diff --git a/Changelog.md b/Changelog.md index fcc445ac..691cbfbd 100644 --- a/Changelog.md +++ b/Changelog.md @@ -8,6 +8,11 @@ - Added PreValue to `/json` ([#1154](https://github.com/jomjol/AI-on-the-edge-device/issues/1154)) - Show graph of values direct in the user interface (thanks to [@rdmueller](https://github.com/rdmueller)) - SD card info into the "Info" Menue (thanks to [@Slider007]( https://github.com/Slider0007)) +- Added a logging of the values in a text table in `/log/data` - each measurement is one line + - Format: tabulator separated + - Content: time, raw-value, return-value, pre-value, error-text, cnn-digital, cnn-analog + - ATTENTION: format not fully fixed yet! + ### Changed diff --git a/code/components/jomjol_helper/Helper.cpp b/code/components/jomjol_helper/Helper.cpp index cf7b4d5e..69ef3e1d 100644 --- a/code/components/jomjol_helper/Helper.cpp +++ b/code/components/jomjol_helper/Helper.cpp @@ -230,10 +230,9 @@ void FindReplace(std::string& line, std::string& oldString, std::string& newStri void MakeDir(std::string _what) { -// chdir(_where.c_str()); - - if (mkdir(_what.c_str(), S_IRWXU|S_IRWXG|S_IROTH)) - ESP_LOGD(TAG, "Problem with MakeDir: %s", _what.c_str()); +int mk_ret = mkdir(_what.c_str(), 0775); +if (mk_ret) + ESP_LOGD(TAG, "error with mkdir %s ret %d", _what.c_str(), mk_ret); } diff --git a/code/components/jomjol_logfile/ClassLogFile.cpp b/code/components/jomjol_logfile/ClassLogFile.cpp index 4dd6882f..0d3e2b96 100644 --- a/code/components/jomjol_logfile/ClassLogFile.cpp +++ b/code/components/jomjol_logfile/ClassLogFile.cpp @@ -95,7 +95,7 @@ void ClassLogFile::WriteToData(std::string _ReturnRawValue, std::string _ReturnV strftime(buffer, 80, "%Y-%m-%dT%H:%M:%S", timeinfo); - zwtime = std::string(buffer) + ":\t"; + zwtime = std::string(buffer) + "\t"; fputs(zwtime.c_str(), pFile); fputs(_ReturnRawValue.c_str(), pFile); fputs("\t", pFile); @@ -104,11 +104,8 @@ void ClassLogFile::WriteToData(std::string _ReturnRawValue, std::string _ReturnV fputs(_ReturnPreValue.c_str(), pFile); fputs("\t", pFile); fputs(_ErrorMessageText.c_str(), pFile); - fputs("\t", pFile); fputs(_digital.c_str(), pFile); - fputs("\t", pFile); fputs(_analog.c_str(), pFile); - fputs("\t", pFile); fputs("\n", pFile); fclose(pFile); @@ -284,6 +281,17 @@ void ClassLogFile::RemoveOld() closedir(dir); } +void ClassLogFile::CreateLogDirectories() +{ + MakeDir("/sdcard/log"); + MakeDir("/sdcard/log/data"); + MakeDir("/sdcard/log/analog"); + MakeDir("/sdcard/log/digit"); + MakeDir("/sdcard/log/message"); + MakeDir("/sdcard/log/source"); +} + + ClassLogFile::ClassLogFile(std::string _logroot, std::string _logfile, std::string _logdatapath, std::string _datafile) { logroot = _logroot; @@ -294,6 +302,4 @@ ClassLogFile::ClassLogFile(std::string _logroot, std::string _logfile, std::stri retentionInDays = 10; loglevel = 0; MakeDir("/sdcard/log/data"); - MakeDir("/sdcard/test"); - MakeDir("/test"); } diff --git a/code/components/jomjol_logfile/ClassLogFile.h b/code/components/jomjol_logfile/ClassLogFile.h index c04978a2..76426db5 100644 --- a/code/components/jomjol_logfile/ClassLogFile.h +++ b/code/components/jomjol_logfile/ClassLogFile.h @@ -24,6 +24,8 @@ public: void SwitchOnOff(bool _doLogFile); void SetRetention(unsigned short _retentionInDays); + void CreateLogDirectories(); + void WriteToFile(std::string info, bool _time = true); void WriteToDedicatedFile(std::string _fn, std::string info, bool _time = true); void RemoveOld(); diff --git a/code/main/main.cpp b/code/main/main.cpp index 5436c7c6..f0a37ff8 100644 --- a/code/main/main.cpp +++ b/code/main/main.cpp @@ -111,9 +111,9 @@ bool Init_NVS_SDCard() } return false; } + sdmmc_card_print_info(stdout, card); SaveSDCardInfo(card); - return true; } @@ -167,6 +167,17 @@ extern "C" void app_main(void) CheckOTAUpdate(); + LogFile.CreateLogDirectories(); +/* + int mk_ret = mkdir("/sdcard/new_fd_mkdir", 0775); + ESP_LOGI(TAGMAIN, "mkdir ret %d", mk_ret); + mk_ret = mkdir("/sdcard/new_fd_mkdir/test", 0775); + ESP_LOGI(TAGMAIN, "mkdir ret %d", mk_ret); + MakeDir("/sdcard/test2"); + MakeDir("/sdcard/test2/intern"); +*/ + + char *ssid = NULL, *passwd = NULL, *hostname = NULL, *ip = NULL, *gateway = NULL, *netmask = NULL, *dns = NULL; LoadWlanFromFile("/sdcard/wlan.ini", ssid, passwd, hostname, ip, gateway, netmask, dns);