ClassLogFile.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #pragma once
  2. #ifndef CLASSLOGFILE_H
  3. #define CLASSLOGFILE_H
  4. #include <string>
  5. #include "esp_log.h"
  6. class ClassLogFile
  7. {
  8. private:
  9. std::string logroot;
  10. std::string logfile;
  11. std::string dataroot;
  12. std::string datafile;
  13. unsigned short logFileRetentionInDays;
  14. unsigned short dataLogRetentionInDays;
  15. bool doDataLogToSD;
  16. esp_log_level_t loglevel;
  17. public:
  18. ClassLogFile(std::string _logpath, std::string _logfile, std::string _logdatapath, std::string _datafile);
  19. void WriteHeapInfo(std::string _id);
  20. void setLogLevel(esp_log_level_t _logLevel);
  21. void SetLogFileRetention(unsigned short _LogFileRetentionInDays);
  22. void SetDataLogRetention(unsigned short _DataLogRetentionInDays);
  23. void SetDataLogToSD(bool _doDataLogToSD);
  24. bool GetDataLogToSD();
  25. void WriteToFile(esp_log_level_t level, std::string tag, std::string message, bool _time);
  26. void WriteToFile(esp_log_level_t level, std::string tag, std::string message);
  27. void CloseLogFileAppendHandle();
  28. void CreateLogDirectories();
  29. void RemoveOldLogFile();
  30. void RemoveOldDataLog();
  31. // void WriteToData(std::string _ReturnRawValue, std::string _ReturnValue, std::string _ReturnPreValue, std::string _ErrorMessageText, std::string _digital, std::string _analog);
  32. void WriteToData(std::string _timestamp, std::string _name, std::string _ReturnRawValue, std::string _ReturnValue, std::string _ReturnPreValue, std::string _ReturnRateValue, std::string _ReturnChangeAbsolute, std::string _ErrorMessageText, std::string _digital, std::string _analog);
  33. std::string GetCurrentFileName();
  34. std::string GetCurrentFileNameData();
  35. };
  36. extern ClassLogFile LogFile;
  37. #endif //CLASSLOGFILE_H