zfs_common.h 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. #ifndef NETDATA_ZFS_COMMON_H
  3. #define NETDATA_ZFS_COMMON_H 1
  4. #include "daemon/common.h"
  5. #define ZFS_FAMILY_SIZE "size"
  6. #define ZFS_FAMILY_EFFICIENCY "efficiency"
  7. #define ZFS_FAMILY_ACCESSES "accesses"
  8. #define ZFS_FAMILY_OPERATIONS "operations"
  9. #define ZFS_FAMILY_HASH "hashes"
  10. struct arcstats {
  11. // values
  12. unsigned long long hits;
  13. unsigned long long misses;
  14. unsigned long long demand_data_hits;
  15. unsigned long long demand_data_misses;
  16. unsigned long long demand_metadata_hits;
  17. unsigned long long demand_metadata_misses;
  18. unsigned long long prefetch_data_hits;
  19. unsigned long long prefetch_data_misses;
  20. unsigned long long prefetch_metadata_hits;
  21. unsigned long long prefetch_metadata_misses;
  22. unsigned long long mru_hits;
  23. unsigned long long mru_ghost_hits;
  24. unsigned long long mfu_hits;
  25. unsigned long long mfu_ghost_hits;
  26. unsigned long long deleted;
  27. unsigned long long mutex_miss;
  28. unsigned long long evict_skip;
  29. unsigned long long evict_not_enough;
  30. unsigned long long evict_l2_cached;
  31. unsigned long long evict_l2_eligible;
  32. unsigned long long evict_l2_ineligible;
  33. unsigned long long evict_l2_skip;
  34. unsigned long long hash_elements;
  35. unsigned long long hash_elements_max;
  36. unsigned long long hash_collisions;
  37. unsigned long long hash_chains;
  38. unsigned long long hash_chain_max;
  39. unsigned long long p;
  40. unsigned long long c;
  41. unsigned long long c_min;
  42. unsigned long long c_max;
  43. unsigned long long size;
  44. unsigned long long hdr_size;
  45. unsigned long long data_size;
  46. unsigned long long metadata_size;
  47. unsigned long long other_size;
  48. unsigned long long anon_size;
  49. unsigned long long anon_evictable_data;
  50. unsigned long long anon_evictable_metadata;
  51. unsigned long long mru_size;
  52. unsigned long long mru_evictable_data;
  53. unsigned long long mru_evictable_metadata;
  54. unsigned long long mru_ghost_size;
  55. unsigned long long mru_ghost_evictable_data;
  56. unsigned long long mru_ghost_evictable_metadata;
  57. unsigned long long mfu_size;
  58. unsigned long long mfu_evictable_data;
  59. unsigned long long mfu_evictable_metadata;
  60. unsigned long long mfu_ghost_size;
  61. unsigned long long mfu_ghost_evictable_data;
  62. unsigned long long mfu_ghost_evictable_metadata;
  63. unsigned long long l2_hits;
  64. unsigned long long l2_misses;
  65. unsigned long long l2_feeds;
  66. unsigned long long l2_rw_clash;
  67. unsigned long long l2_read_bytes;
  68. unsigned long long l2_write_bytes;
  69. unsigned long long l2_writes_sent;
  70. unsigned long long l2_writes_done;
  71. unsigned long long l2_writes_error;
  72. unsigned long long l2_writes_lock_retry;
  73. unsigned long long l2_evict_lock_retry;
  74. unsigned long long l2_evict_reading;
  75. unsigned long long l2_evict_l1cached;
  76. unsigned long long l2_free_on_write;
  77. unsigned long long l2_cdata_free_on_write;
  78. unsigned long long l2_abort_lowmem;
  79. unsigned long long l2_cksum_bad;
  80. unsigned long long l2_io_error;
  81. unsigned long long l2_size;
  82. unsigned long long l2_asize;
  83. unsigned long long l2_hdr_size;
  84. unsigned long long l2_compress_successes;
  85. unsigned long long l2_compress_zeros;
  86. unsigned long long l2_compress_failures;
  87. unsigned long long memory_throttle_count;
  88. unsigned long long duplicate_buffers;
  89. unsigned long long duplicate_buffers_size;
  90. unsigned long long duplicate_reads;
  91. unsigned long long memory_direct_count;
  92. unsigned long long memory_indirect_count;
  93. unsigned long long arc_no_grow;
  94. unsigned long long arc_tempreserve;
  95. unsigned long long arc_loaned_bytes;
  96. unsigned long long arc_prune;
  97. unsigned long long arc_meta_used;
  98. unsigned long long arc_meta_limit;
  99. unsigned long long arc_meta_max;
  100. unsigned long long arc_meta_min;
  101. unsigned long long arc_need_free;
  102. unsigned long long arc_sys_free;
  103. // flags
  104. int l2exist;
  105. };
  106. void generate_charts_arcstats(const char *plugin, const char *module, int show_zero_charts, int update_every);
  107. void generate_charts_arc_summary(const char *plugin, const char *module, int show_zero_charts, int update_every);
  108. #endif //NETDATA_ZFS_COMMON_H