mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 10:06:24 +05:00
ees: implement api to reset exporter metrics
This commit is contained in:
committed by
Dan Christian Bogos
parent
1c00a3aad1
commit
fdc8a1be7e
@@ -37,3 +37,9 @@ func (eeSv1 *EeSv1) ProcessEvent(ctx *context.Context, args *engine.CGREventWith
|
||||
reply *map[string]map[string]any) error {
|
||||
return eeSv1.eeS.V1ProcessEvent(ctx, args, reply)
|
||||
}
|
||||
|
||||
// V1ResetExporterMetrics resets the metrics for a specific exporter identified by ExporterID.
|
||||
// Returns utils.ErrNotFound if the exporter is not found in the cache.
|
||||
func (eeSv1 *EeSv1) ResetExporterMetrics(ctx *context.Context, params ees.V1ResetExporterMetricsParams, reply *string) error {
|
||||
return eeSv1.eeS.V1ResetExporterMetrics(ctx, params, reply)
|
||||
}
|
||||
|
||||
21
ees/ees.go
21
ees/ees.go
@@ -410,3 +410,24 @@ func ExportWithAttempts(exp EventExporter, eEv any, key string) (err error) {
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// V1ResetExporterMetricsParams contains required parameters for resetting exporter metrics.
|
||||
type V1ResetExporterMetricsParams struct {
|
||||
Tenant string
|
||||
ID string // unique identifier of the request
|
||||
ExporterID string
|
||||
APIOpts map[string]any
|
||||
}
|
||||
|
||||
// V1ResetExporterMetrics resets the metrics for a specific exporter identified by ExporterID.
|
||||
// Returns utils.ErrNotFound if the exporter is not found in the cache.
|
||||
func (eeS *EventExporterS) V1ResetExporterMetrics(ctx *context.Context, params V1ResetExporterMetricsParams, reply *string) error {
|
||||
eeCfg := eeS.cfg.EEsCfg().ExporterCfg(params.ExporterID)
|
||||
ee, ok := eeS.exporterCache[eeCfg.Type].Get(eeCfg.ID)
|
||||
if !ok {
|
||||
return utils.ErrNotFound
|
||||
}
|
||||
ee.(EventExporter).GetMetrics().Reset()
|
||||
*reply = utils.OK
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -1907,9 +1907,10 @@ const (
|
||||
|
||||
// EEs
|
||||
const (
|
||||
EeSv1 = "EeSv1"
|
||||
EeSv1Ping = "EeSv1.Ping"
|
||||
EeSv1ProcessEvent = "EeSv1.ProcessEvent"
|
||||
EeSv1 = "EeSv1"
|
||||
EeSv1Ping = "EeSv1.Ping"
|
||||
EeSv1ProcessEvent = "EeSv1.ProcessEvent"
|
||||
EeSv1ResetExporterMetrics = "EeSv1.ResetExporterMetrics"
|
||||
)
|
||||
|
||||
// ERs
|
||||
|
||||
Reference in New Issue
Block a user