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