Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
nat: add maximum configured sessions to stat segment
[vpp.git]
/
src
/
plugins
/
nat
/
nat44-ed
/
nat44_ed.c
diff --git
a/src/plugins/nat/nat44-ed/nat44_ed.c
b/src/plugins/nat/nat44-ed/nat44_ed.c
index
58aade5
..
d42d303
100644
(file)
--- a/
src/plugins/nat/nat44-ed/nat44_ed.c
+++ b/
src/plugins/nat/nat44-ed/nat44_ed.c
@@
-36,6
+36,8
@@
#include <nat/nat44-ed/nat44_ed_affinity.h>
#include <nat/nat44-ed/nat44_ed_inlines.h>
#include <nat/nat44-ed/nat44_ed_affinity.h>
#include <nat/nat44-ed/nat44_ed_inlines.h>
+#include <vpp/stats/stat_segment.h>
+
snat_main_t snat_main;
static_always_inline void nat_validate_interface_counters (snat_main_t *sm,
snat_main_t snat_main;
static_always_inline void nat_validate_interface_counters (snat_main_t *sm,
@@
-2025,6
+2027,8
@@
nat_init (vlib_main_t * vm)
nat_init_simple_counter (sm->total_sessions, "total-sessions",
"/nat44-ed/total-sessions");
nat_init_simple_counter (sm->total_sessions, "total-sessions",
"/nat44-ed/total-sessions");
+ sm->max_cfg_sessions_gauge = stat_segment_new_entry (
+ (u8 *) "/nat44-ed/max-cfg-sessions", STAT_DIR_TYPE_SCALAR_INDEX);
#define _(x) \
nat_init_simple_counter (sm->counters.fastpath.in2out.x, #x, \
#define _(x) \
nat_init_simple_counter (sm->counters.fastpath.in2out.x, #x, \
@@
-2123,6
+2127,8
@@
nat44_plugin_enable (nat44_config_t c)
c.sessions = 63 * 1024;
sm->max_translations_per_thread = c.sessions;
c.sessions = 63 * 1024;
sm->max_translations_per_thread = c.sessions;
+ stat_segment_set_state_counter (sm->max_cfg_sessions_gauge,
+ sm->max_translations_per_thread);
sm->translation_buckets = nat_calc_bihash_buckets (c.sessions);
// ED only feature
sm->translation_buckets = nat_calc_bihash_buckets (c.sessions);
// ED only feature
@@
-2788,6
+2794,9
@@
nat44_update_session_limit (u32 session_limit, u32 vrf_id)
return 1;
sm->max_translations_per_thread = nat44_get_max_session_limit ();
return 1;
sm->max_translations_per_thread = nat44_get_max_session_limit ();
+ stat_segment_set_state_counter (sm->max_cfg_sessions_gauge,
+ sm->max_translations_per_thread);
+
sm->translation_buckets =
nat_calc_bihash_buckets (sm->max_translations_per_thread);
sm->translation_buckets =
nat_calc_bihash_buckets (sm->max_translations_per_thread);