summaryrefslogtreecommitdiff
path: root/lib/lib_vty.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2020-10-30 15:33:33 -0400
committerDonald Sharp <sharpd@nvidia.com>2020-11-19 09:52:11 -0500
commit16ae941f4ad987dd14034be1b49dc175a752cec5 (patch)
tree74fc7f8a3a5c9fc8b80c97b64cde469182f647f9 /lib/lib_vty.c
parentf8e6ada8821d5992e5680ff660fc9bd1691f8ae2 (diff)
lib: Add information log of how long configuration took to read in
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'lib/lib_vty.c')
-rw-r--r--lib/lib_vty.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/lib_vty.c b/lib/lib_vty.c
index 7a8f85b2c9..8207aa20e6 100644
--- a/lib/lib_vty.c
+++ b/lib/lib_vty.c
@@ -213,15 +213,20 @@ DEFUN (frr_version,
}
static struct call_back {
+ time_t readin_time;
+
void (*start_config)(void);
void (*end_config)(void);
} callback;
+
DEFUN_HIDDEN (start_config,
start_config_cmd,
"start_configuration",
"The Beginning of Configuration\n")
{
+ callback.readin_time = monotime(NULL);
+
if (callback.start_config)
(*callback.start_config)();
@@ -233,6 +238,17 @@ DEFUN_HIDDEN (end_config,
"end_configuration",
"The End of Configuration\n")
{
+ time_t readin_time;
+ char readin_time_str[MONOTIME_STRLEN];
+
+ readin_time = monotime(NULL);
+ readin_time -= callback.readin_time;
+
+ frrtime_to_interval(readin_time, readin_time_str,
+ sizeof(readin_time_str));
+
+ zlog_info("Configuration Read in Took: %s", readin_time_str);
+
if (callback.end_config)
(*callback.end_config)();