mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
agents: create dedicated events for stats processing
This commit is contained in:
committed by
Dan Christian Bogos
parent
daf91dc3fa
commit
344b14709a
@@ -189,16 +189,20 @@ func processRequest(ctx *context.Context, reqProcessor *config.RequestProcessor,
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// Clone is needed to prevent data races if requests are sent
|
||||
// asynchronously.
|
||||
ev := cgrEv.Clone()
|
||||
|
||||
ev.Event[utils.ReplyState] = replyState
|
||||
ev.Event[utils.StartTime] = startTime
|
||||
ev.Event[utils.EndTime] = endTime
|
||||
ev.Event[utils.ProcessingTime] = endTime.Sub(startTime)
|
||||
ev.Event[utils.Source] = agentName
|
||||
ev.APIOpts[utils.MetaEventType] = utils.ProcessTime
|
||||
ev := &utils.CGREvent{
|
||||
Tenant: cgrEv.Tenant,
|
||||
ID: utils.GenUUID(),
|
||||
Event: map[string]any{
|
||||
utils.ReplyState: replyState,
|
||||
utils.StartTime: startTime,
|
||||
utils.EndTime: endTime,
|
||||
utils.ProcessingTime: endTime.Sub(startTime),
|
||||
utils.Source: agentName,
|
||||
},
|
||||
APIOpts: map[string]any{
|
||||
utils.MetaEventType: utils.ProcessTime,
|
||||
},
|
||||
}
|
||||
|
||||
if rawStatIDs != "" {
|
||||
statIDs := strings.Split(rawStatIDs, utils.ANDSep)
|
||||
|
||||
@@ -467,16 +467,20 @@ func (ra *RadiusAgent) processRequest(req *radigo.Packet, reqProcessor *config.R
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// Clone is needed to prevent data races if requests are sent
|
||||
// asynchronously.
|
||||
ev := cgrEv.Clone()
|
||||
|
||||
ev.Event[utils.ReplyState] = replyState
|
||||
ev.Event[utils.StartTime] = startTime
|
||||
ev.Event[utils.EndTime] = endTime
|
||||
ev.Event[utils.ProcessingTime] = endTime.Sub(startTime)
|
||||
ev.Event[utils.Source] = utils.RadiusAgent
|
||||
ev.APIOpts[utils.MetaEventType] = utils.ProcessTime
|
||||
ev := &utils.CGREvent{
|
||||
Tenant: cgrEv.Tenant,
|
||||
ID: utils.GenUUID(),
|
||||
Event: map[string]any{
|
||||
utils.ReplyState: replyState,
|
||||
utils.StartTime: startTime,
|
||||
utils.EndTime: endTime,
|
||||
utils.ProcessingTime: endTime.Sub(startTime),
|
||||
utils.Source: utils.RadiusAgent,
|
||||
},
|
||||
APIOpts: map[string]any{
|
||||
utils.MetaEventType: utils.ProcessTime,
|
||||
},
|
||||
}
|
||||
|
||||
if rawStatIDs != "" {
|
||||
statIDs := strings.Split(rawStatIDs, utils.ANDSep)
|
||||
|
||||
@@ -465,16 +465,20 @@ func (sa *SIPAgent) processRequest(reqProcessor *config.RequestProcessor,
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// Clone is needed to prevent data races if requests are sent
|
||||
// asynchronously.
|
||||
ev := cgrEv.Clone()
|
||||
|
||||
ev.Event[utils.ReplyState] = replyState
|
||||
ev.Event[utils.StartTime] = startTime
|
||||
ev.Event[utils.EndTime] = endTime
|
||||
ev.Event[utils.ProcessingTime] = endTime.Sub(startTime)
|
||||
ev.Event[utils.Source] = utils.SIPAgent
|
||||
ev.APIOpts[utils.MetaEventType] = utils.ProcessTime
|
||||
ev := &utils.CGREvent{
|
||||
Tenant: cgrEv.Tenant,
|
||||
ID: utils.GenUUID(),
|
||||
Event: map[string]any{
|
||||
utils.ReplyState: replyState,
|
||||
utils.StartTime: startTime,
|
||||
utils.EndTime: endTime,
|
||||
utils.ProcessingTime: endTime.Sub(startTime),
|
||||
utils.Source: utils.SIPAgent,
|
||||
},
|
||||
APIOpts: map[string]any{
|
||||
utils.MetaEventType: utils.ProcessTime,
|
||||
},
|
||||
}
|
||||
|
||||
if rawStatIDs != "" {
|
||||
statIDs := strings.Split(rawStatIDs, utils.ANDSep)
|
||||
|
||||
24
ers/ers.go
24
ers/ers.go
@@ -207,16 +207,20 @@ func (erS *ERService) processEvent(cgrEv *utils.CGREvent,
|
||||
return
|
||||
}
|
||||
|
||||
// Clone is needed to prevent data races if requests are sent
|
||||
// asynchronously.
|
||||
ev := cgrEv.Clone()
|
||||
|
||||
ev.Event[utils.ReplyState] = replyState
|
||||
ev.Event[utils.StartTime] = startTime
|
||||
ev.Event[utils.EndTime] = endTime
|
||||
ev.Event[utils.ProcessingTime] = endTime.Sub(startTime)
|
||||
ev.Event[utils.Source] = utils.ERs
|
||||
ev.APIOpts[utils.MetaEventType] = utils.ProcessTime
|
||||
ev := &utils.CGREvent{
|
||||
Tenant: cgrEv.Tenant,
|
||||
ID: utils.GenUUID(),
|
||||
Event: map[string]any{
|
||||
utils.ReplyState: replyState,
|
||||
utils.StartTime: startTime,
|
||||
utils.EndTime: endTime,
|
||||
utils.ProcessingTime: endTime.Sub(startTime),
|
||||
utils.Source: utils.ERs,
|
||||
},
|
||||
APIOpts: map[string]any{
|
||||
utils.MetaEventType: utils.ProcessTime,
|
||||
},
|
||||
}
|
||||
|
||||
if rawStatIDs != "" {
|
||||
statIDs := strings.Split(rawStatIDs, utils.ANDSep)
|
||||
|
||||
Reference in New Issue
Block a user