diff options
author | 2021-05-05 09:23:17 +0200 | |
---|---|---|
committer | 2021-05-06 14:19:28 +0000 | |
commit | a606d92107d4bf0107c3f54e2c87d39311f82075 (patch) | |
tree | 4f15911d2d86dbb5227194b9acc3fea50ccde55e /src/vpp/stats/stat_segment.h | |
parent | ec34fb77231c9f601520d6a2eaa5aab8c54253a6 (diff) |
stats: memory heap counters
- Add counters for the main-heap
- Add additional counters per heap:
STAT_MEM_TOTAL
STAT_MEM_USED,
STAT_MEM_FREE,
STAT_MEM_USED_MMAP,
STAT_MEM_TOTAL_ALLOC,
STAT_MEM_FREE_CHUNKS,
STAT_MEM_RELEASABLE,
The per-heap counters are organised as a two dimensional vector.
total, used and free are directly available via symlinks.
vpp_get_stats ls "^/mem/"
/mem/stat segment
/mem/stat segment/total
/mem/stat segment/used
/mem/stat segment/free
/mem/main heap
/mem/main heap/total
/mem/main heap/used
/mem/main heap/free
vpp_get_stats dump "^/mem/main\ heap$"
[0 @ 0]: 1073741776 packets /mem/main heap
[1 @ 0]: 91586688 packets /mem/main heap
[2 @ 0]: 982155088 packets /mem/main heap
[3 @ 0]: 0 packets /mem/main heap
[4 @ 0]: 1073741776 packets /mem/main heap
[5 @ 0]: 433 packets /mem/main heap
[6 @ 0]: 981708688 packets /mem/main heap
Type: feature
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: I36725dde3b4b3befd27a8b4d3ba931f2d3b627cc
Diffstat (limited to 'src/vpp/stats/stat_segment.h')
-rw-r--r-- | src/vpp/stats/stat_segment.h | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/vpp/stats/stat_segment.h b/src/vpp/stats/stat_segment.h index 1d1ff31c294..c6056b1fade 100644 --- a/src/vpp/stats/stat_segment.h +++ b/src/vpp/stats/stat_segment.h @@ -35,8 +35,6 @@ typedef enum STAT_COUNTER_NODE_SUSPENDS, STAT_COUNTER_INTERFACE_NAMES, STAT_COUNTER_NODE_NAMES, - STAT_COUNTER_MEM_STATSEG_TOTAL, - STAT_COUNTER_MEM_STATSEG_USED, STAT_COUNTERS } stat_segment_counter_t; @@ -58,8 +56,6 @@ typedef enum _ (HEARTBEAT, SCALAR_INDEX, heartbeat, /sys) \ _ (INTERFACE_NAMES, NAME_VECTOR, names, /if) \ _ (NODE_NAMES, NAME_VECTOR, names, /sys/node) \ - _ (MEM_STATSEG_TOTAL, SCALAR_INDEX, total, /mem/statseg) \ - _ (MEM_STATSEG_USED, SCALAR_INDEX, used, /mem/statseg) \ foreach_stat_segment_node_counter_name /* clang-format on */ @@ -117,5 +113,14 @@ stat_segment_register_state_counter(u8 *name, u32 *index); clib_error_t * stat_segment_deregister_state_counter(u32 index); void stat_segment_set_state_counter (u32 index, u64 value); +void stat_segment_poll_add (u32 vector_index, stat_segment_update_fn update_fn, + u32 caller_index, u32 interval); + +u32 stat_segment_new_entry (u8 *name, stat_directory_type_t t); +void vlib_stats_register_mem_heap (clib_mem_heap_t *heap); +void vlib_stat_segment_lock (void); +void vlib_stat_segment_unlock (void); +void vlib_stats_register_symlink (void *oldheap, u8 *name, u32 index1, + u32 index2, u8 lock); #endif |