X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=gmod%2Fgmod%2Fmod_vpp.c;fp=gmod%2Fgmod%2Fmod_vpp.c;h=4a82ca70f13b4fc6771d03f433ecc475a51bbf3c;hb=cbed90c8cbf8449ff8ed6da08ec248f1e49a374d;hp=c28f1a51c598878e2341726394f2b7b4a4a1bf6a;hpb=ecec279029a8a507483bc54ace3dca7f623f3fb7;p=vpp.git diff --git a/gmod/gmod/mod_vpp.c b/gmod/gmod/mod_vpp.c index c28f1a51c59..4a82ca70f13 100644 --- a/gmod/gmod/mod_vpp.c +++ b/gmod/gmod/mod_vpp.c @@ -70,7 +70,7 @@ static g_val_t vpp_metric_handler (int metric_index) { g_val_t val; pid_t *vpp_pidp; - f64 *vector_ratep, *vpp_rx_ratep; + f64 *vector_ratep, *vpp_rx_ratep, *sig_error_ratep; switch (metric_index) { case 0: @@ -108,6 +108,16 @@ static g_val_t vpp_metric_handler (int metric_index) val.d = 0.0; break; + case 3: + sig_error_ratep = svmdb_local_get_vec_variable + (svmdb_client, "vpp_sig_error_rate", sizeof (*vector_ratep)); + if (sig_error_ratep) { + val.d = *sig_error_ratep; + vec_free (sig_error_ratep); + } else + val.d = 0.0; + break; + default: val.d = 0.0; } @@ -125,6 +135,10 @@ static Ganglia_25metric vpp_metric_info[] = {0, "Input_Rate", 100, GANGLIA_VALUE_DOUBLE, "5 sec RX rate", "both", "%.1f", UDP_HEADER_SIZE+8, "VPP Aggregate RX Rate"}, + {0, "Sig_Error_Rate", 100, GANGLIA_VALUE_DOUBLE, + "5 sec significant error rate", + "both", "%.1f", + UDP_HEADER_SIZE+8, "VPP Significant Error Rate"}, {0, NULL} };