ClassLogFile.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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. std::string getESPHeapInfo();
  20. void WriteHeapInfo(std::string _id);
  21. void setLogLevel(esp_log_level_t _logLevel);
  22. void SetLogFileRetention(unsigned short _LogFileRetentionInDays);
  23. void SetDataLogRetention(unsigned short _DataLogRetentionInDays);
  24. void SetDataLogToSD(bool _doDataLogToSD);
  25. bool GetDataLogToSD();
  26. void WriteToFile(esp_log_level_t level, std::string tag, std::string message, bool _time);
  27. void WriteToFile(esp_log_level_t level, std::string tag, std::string message);
  28. void CloseLogFileAppendHandle();
  29. void CreateLogDirectories();
  30. void RemoveOldLogFile();
  31. void RemoveOldDataLog();
  32. // void WriteToData(std::string _ReturnRawValue, std::string _ReturnValue, std::string _ReturnPreValue, std::string _ErrorMessageText, std::string _digital, std::string _analog);
  33. 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);
  34. std::string GetCurrentFileName();
  35. std::string GetCurrentFileNameData();
  36. };
  37. extern ClassLogFile LogFile;
  38. #endif //CLASSLOGFILE_H