log.cpp 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #include "log.h"
  2. #include "defines.h"
  3. #include "helpers.h"
  4. #ifdef USE_LOGGER
  5. #include "esphome/components/logger/logger.h"
  6. #endif
  7. namespace esphome {
  8. void HOT esp_log_printf_(int level, const char *tag, int line, const char *format, ...) { // NOLINT
  9. va_list arg;
  10. va_start(arg, format);
  11. esp_log_vprintf_(level, tag, line, format, arg);
  12. va_end(arg);
  13. }
  14. #ifdef USE_STORE_LOG_STR_IN_FLASH
  15. void HOT esp_log_printf_(int level, const char *tag, int line, const __FlashStringHelper *format, ...) {
  16. va_list arg;
  17. va_start(arg, format);
  18. esp_log_vprintf_(level, tag, line, format, arg);
  19. va_end(arg);
  20. }
  21. #endif
  22. void HOT esp_log_vprintf_(int level, const char *tag, int line, const char *format, va_list args) { // NOLINT
  23. #ifdef USE_LOGGER
  24. auto *log = logger::global_logger;
  25. if (log == nullptr)
  26. return;
  27. log->log_vprintf_(level, tag, line, format, args);
  28. #endif
  29. }
  30. #ifdef USE_STORE_LOG_STR_IN_FLASH
  31. void HOT esp_log_vprintf_(int level, const char *tag, int line, const __FlashStringHelper *format,
  32. va_list args) { // NOLINT
  33. #ifdef USE_LOGGER
  34. auto *log = logger::global_logger;
  35. if (log == nullptr)
  36. return;
  37. log->log_vprintf_(level, tag, line, format, args);
  38. #endif
  39. }
  40. #endif
  41. #ifdef ARDUINO_ARCH_ESP32
  42. int HOT esp_idf_log_vprintf_(const char *format, va_list args) { // NOLINT
  43. #ifdef USE_LOGGER
  44. auto *log = logger::global_logger;
  45. if (log == nullptr)
  46. return 0;
  47. log->log_vprintf_(ESPHOME_LOG_LEVEL, "esp-idf", 0, format, args);
  48. #endif
  49. return 0;
  50. }
  51. #endif
  52. } // namespace esphome