]> git.puffer.fish Git - matthieu/frr.git/commitdiff
isisd: Provide statistics over number of generated purges
authorChristian Franke <chris@opensourcerouting.org>
Fri, 23 Nov 2018 23:36:37 +0000 (00:36 +0100)
committerRodny Molina <rmolina@linkedin.com>
Fri, 7 Dec 2018 19:45:14 +0000 (19:45 +0000)
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
isisd/isis_lsp.c
isisd/isisd.c
isisd/isisd.h

index b5d5878f86a777bdaee0dfcab90345cd7b520554..8d393c7a08f8113e795ec8e8ccbd523222d08789 100644 (file)
@@ -386,6 +386,7 @@ static void lsp_purge(struct isis_lsp *lsp, int level,
        lsp->hdr.rem_lifetime = 0;
        lsp->level = level;
        lsp->age_out = lsp->area->max_lsp_lifetime[level - 1];
+       lsp->area->lsp_purge_count[level - 1]++;
 
        lsp_purge_add_poi(lsp, sender);
 
@@ -1966,6 +1967,7 @@ void lsp_purge_non_exist(int level, struct isis_lsp_hdr *hdr,
        lsp->level = level;
        lsp_adjust_stream(lsp);
        lsp->age_out = ZERO_AGE_LIFETIME;
+       lsp->area->lsp_purge_count[level - 1]++;
 
        memcpy(&lsp->hdr, hdr, sizeof(lsp->hdr));
        lsp->hdr.rem_lifetime = 0;
index 6679950c35937f360bc777842e4f8ad3eea26107..0e496193a3210822cb0e11f7eb4153ad92d87482 100644 (file)
@@ -1274,6 +1274,9 @@ DEFUN (show_isis_summary,
                        vty_out(vty, "    LSP0 regenerated: %" PRIu64 "\n",
                                area->lsp_gen_count[level - 1]);
 
+                       vty_out(vty, "         LSPs purged: %" PRIu64 "\n",
+                               area->lsp_purge_count[level - 1]);
+
                        if (area->spf_timer[level - 1])
                                vty_out(vty, "    SPF: (pending)\n");
                        else
index 8c571a69e8478665b9245a44eb9926b45026a57b..2c0ea203f3ecc0df3ac16a0cc3581a9b430b56bd 100644 (file)
@@ -150,6 +150,7 @@ struct isis_area {
        /* the percentage of LSP mtu size used, before generating a new frag */
        int lsp_frag_threshold;
        uint64_t lsp_gen_count[ISIS_LEVELS];
+       uint64_t lsp_purge_count[ISIS_LEVELS];
        int ip_circuits;
        /* logging adjacency changes? */
        uint8_t log_adj_changes;