Add *pdd metric in stats_it_test.go and add a new test(GetStatsAfterRestart)

This commit is contained in:
TeoV
2017-09-27 13:37:52 +03:00
parent 75123911d1
commit 9a36cb5bb5
3 changed files with 35 additions and 3 deletions

View File

@@ -77,6 +77,7 @@ var sTestsStatSV1 = []func(t *testing.T){
testV1STSRpcConn,
testV1STSFromFolder,
testV1STSGetStats,
testV1STSGetStatsAfterRestart,
testV1STSProcessEvent,
testV1STSSetStatQueueProfile,
testV1STSUpdateStatQueueProfile,
@@ -157,6 +158,7 @@ func testV1STSGetStats(t *testing.T) {
utils.MetaTCC: utils.NOT_AVAILABLE,
utils.MetaTCD: utils.NOT_AVAILABLE,
utils.MetaACC: utils.NOT_AVAILABLE,
utils.MetaPDD: utils.NOT_AVAILABLE,
}
if err := stsV1Rpc.Call("StatSV1.GetQueueStringMetrics",
&utils.TenantID{Tenant: "cgrates.org", ID: expectedIDs[0]}, &metrics); err != nil {
@@ -166,6 +168,34 @@ func testV1STSGetStats(t *testing.T) {
}
}
func testV1STSGetStatsAfterRestart(t *testing.T) {
var reply []string
expectedIDs := []string{"STATS_1"}
//get stats before restart
if err := stsV1Rpc.Call("StatSV1.GetQueueIDs", "cgrates.org", &reply); err != nil {
t.Error(err)
} else if !reflect.DeepEqual(expectedIDs, reply) {
t.Errorf("expecting: %+v, received reply: %s", expectedIDs, reply)
}
if _, err := engine.StopStartEngine(stsV1CfgPath, statsDelay); err != nil {
t.Fatal(err)
}
var err error
stsV1Rpc, err = jsonrpc.Dial("tcp", stsV1Cfg.RPCJSONListen) // We connect over JSON so we can also troubleshoot if needed
if err != nil {
t.Fatal("Could not connect to rater: ", err.Error())
}
//get stats after restart
var reply2 []string
expectedIDs2 := []string{"STATS_1"}
if err := stsV1Rpc.Call("StatSV1.GetQueueIDs", "cgrates.org", &reply2); err != nil {
t.Error(err)
} else if !reflect.DeepEqual(expectedIDs2, reply2) {
t.Errorf("expecting: %+v, received reply: %s", expectedIDs2, reply2)
}
time.Sleep(time.Duration(1 * time.Second))
}
func testV1STSProcessEvent(t *testing.T) {
var reply string
ev1 := engine.StatEvent{
@@ -175,7 +205,8 @@ func testV1STSProcessEvent(t *testing.T) {
utils.ACCOUNT: "1001",
utils.ANSWER_TIME: time.Date(2014, 7, 14, 14, 25, 0, 0, time.UTC),
utils.USAGE: time.Duration(135 * time.Second),
utils.COST: 123.0}}
utils.COST: 123.0,
utils.PDD: time.Duration(12 * time.Second)}}
if err := stsV1Rpc.Call("StatSV1.ProcessEvent", &ev1, &reply); err != nil {
t.Error(err)
} else if reply != utils.OK {
@@ -211,6 +242,7 @@ func testV1STSProcessEvent(t *testing.T) {
utils.MetaACC: "61.5",
utils.MetaTCD: "3m0s",
utils.MetaTCC: "123",
utils.MetaPDD: "4s",
}
var metrics map[string]string
if err := stsV1Rpc.Call("StatSV1.GetQueueStringMetrics", &utils.TenantID{Tenant: "cgrates.org", ID: "STATS_1"}, &metrics); err != nil {

View File

@@ -1,2 +1,2 @@
#Tenant[0],Id[1],FilterType[2],FilterFieldName[3],FilterFieldValues[4],ActivationInterval[5],QueueLength[6],TTL[7],Metrics[8],Blocker[9],Stored[10],Weight[11],Thresholds[12]
cgrates.org,Stats1,*string,Account,1001;1002,2014-07-29T15:00:00Z,100,1s,*asr;*acd;*acc;*tcd;*tcc,true,true,20,THRESH1;THRESH2
cgrates.org,Stats1,*string,Account,1001;1002,2014-07-29T15:00:00Z,100,1s,*asr;*acd;*acc;*tcd;*tcc;*pdd,true,true,20,THRESH1;THRESH2
1 #Tenant[0] Id[1] FilterType[2] FilterFieldName[3] FilterFieldValues[4] ActivationInterval[5] QueueLength[6] TTL[7] Metrics[8] Blocker[9] Stored[10] Weight[11] Thresholds[12]
2 cgrates.org Stats1 *string Account 1001;1002 2014-07-29T15:00:00Z 100 1s *asr;*acd;*acc;*tcd;*tcc *asr;*acd;*acc;*tcd;*tcc;*pdd true true 20 THRESH1;THRESH2

View File

@@ -1,2 +1,2 @@
#Tenant[0],Id[1],FilterType[2],FilterFieldName[3],FilterFieldValues[4],ActivationInterval[5],QueueLength[6],TTL[7],Metrics[8],Blocker[9],Stored[10],Weight[11],Thresholds[12]
cgrates.org,STATS_1,*string,Account,1001;1002,2014-07-29T15:00:00Z,100,1s,*asr;*acc;*tcc;*acd;*tcd,true,true,20,THRESH1;THRESH2
cgrates.org,STATS_1,*string,Account,1001;1002,2014-07-29T15:00:00Z,100,1s,*asr;*acc;*tcc;*acd;*tcd;*pdd,true,true,20,THRESH1;THRESH2
1 #Tenant[0] Id[1] FilterType[2] FilterFieldName[3] FilterFieldValues[4] ActivationInterval[5] QueueLength[6] TTL[7] Metrics[8] Blocker[9] Stored[10] Weight[11] Thresholds[12]
2 cgrates.org STATS_1 *string Account 1001;1002 2014-07-29T15:00:00Z 100 1s *asr;*acc;*tcc;*acd;*tcd *asr;*acc;*tcc;*acd;*tcd;*pdd true true 20 THRESH1;THRESH2