rrd_api_kernel.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. /** @file rrd_api_kernel.h
  3. * @brief Incudes the structure and function definitions
  4. * for the kernel log charts.
  5. */
  6. #ifndef RRD_API_KERNEL_H_
  7. #define RRD_API_KERNEL_H_
  8. #include "daemon/common.h"
  9. struct File_info;
  10. typedef struct Chart_data_kernel chart_data_kernel_t;
  11. #include "../file_info.h"
  12. #include "../circular_buffer.h"
  13. #include "rrd_api.h"
  14. #include "rrd_api_systemd.h" // required for dim_sever_str[]
  15. struct Chart_data_kernel {
  16. time_t last_update;
  17. /* Number of collected log records */
  18. collected_number num_lines;
  19. /* Kernel metrics - Syslog Severity value */
  20. collected_number num_sever[SYSLOG_SEVER_ARR_SIZE];
  21. /* Kernel metrics - Subsystem */
  22. struct Chart_str cs_subsys;
  23. // Special case: Subsystem dimension and number are part of Kernel_metrics_t
  24. /* Kernel metrics - Device */
  25. struct Chart_str cs_device;
  26. // Special case: Device dimension and number are part of Kernel_metrics_t
  27. };
  28. void kernel_chart_init(struct File_info *p_file_info);
  29. void kernel_chart_update(struct File_info *p_file_info);
  30. #endif // RRD_API_KERNEL_H_