cfg: move failed_posts to ees, add static_ttl

This commit is contained in:
ionutboangiu
2025-10-24 17:41:53 +03:00
committed by Dan Christian Bogos
parent 082c412159
commit 295ddec792
45 changed files with 324 additions and 208 deletions

View File

@@ -113,11 +113,11 @@ func testCDRsOnExpInitCdrDb(t *testing.T) {
if err := engine.InitStorDb(cdrsSlaveCfg); err != nil {
t.Fatal(err)
}
if err := os.RemoveAll(cdrsMasterCfg.GeneralCfg().FailedPostsDir); err != nil {
t.Fatal("Error removing folder: ", cdrsMasterCfg.GeneralCfg().FailedPostsDir, err)
if err := os.RemoveAll(cdrsMasterCfg.EEsCfg().FailedPosts.Dir); err != nil {
t.Fatal("Error removing folder: ", cdrsMasterCfg.EEsCfg().FailedPosts.Dir, err)
}
if err := os.MkdirAll(cdrsMasterCfg.GeneralCfg().FailedPostsDir, 0700); err != nil {
if err := os.MkdirAll(cdrsMasterCfg.EEsCfg().FailedPosts.Dir, 0700); err != nil {
t.Error(err)
}
@@ -245,9 +245,9 @@ func testCDRsOnExpDisableOnlineExport(t *testing.T) {
t.Error("Unexpected reply received: ", reply)
}
time.Sleep(time.Duration(*utils.WaitRater) * time.Millisecond)
filesInDir, _ := os.ReadDir(cdrsMasterCfg.GeneralCfg().FailedPostsDir)
filesInDir, _ := os.ReadDir(cdrsMasterCfg.EEsCfg().FailedPosts.Dir)
if len(filesInDir) != 0 {
t.Fatalf("Should be no files in directory: %s", cdrsMasterCfg.GeneralCfg().FailedPostsDir)
t.Fatalf("Should be no files in directory: %s", cdrsMasterCfg.EEsCfg().FailedPosts.Dir)
}
}
@@ -458,13 +458,13 @@ func testCDRsOnExpFileFailover(t *testing.T) {
v2.Set("OriginID", "amqpreconnect")
httpContent := []any{&ees.HTTPPosterRequest{Body: v1, Header: http.Header{"Content-Type": []string{"application/x-www-form-urlencoded"}}},
&ees.HTTPPosterRequest{Body: v2, Header: http.Header{"Content-Type": []string{"application/x-www-form-urlencoded"}}}}
filesInDir, _ := os.ReadDir(cdrsMasterCfg.GeneralCfg().FailedPostsDir)
filesInDir, _ := os.ReadDir(cdrsMasterCfg.EEsCfg().FailedPosts.Dir)
if len(filesInDir) == 0 {
t.Fatalf("No files in directory: %s", cdrsMasterCfg.GeneralCfg().FailedPostsDir)
t.Fatalf("No files in directory: %s", cdrsMasterCfg.EEsCfg().FailedPosts.Dir)
}
for _, file := range filesInDir { // First file in directory is the one we need, harder to find it's name out of config
fileName := file.Name()
filePath := path.Join(cdrsMasterCfg.GeneralCfg().FailedPostsDir, fileName)
filePath := path.Join(cdrsMasterCfg.EEsCfg().FailedPosts.Dir, fileName)
ev, err := ees.NewExportEventsFromFile(filePath)
if err != nil {

View File

@@ -81,10 +81,10 @@ func testCDRsPostFailoverInitConfig(t *testing.T) {
if cdrsPostFailCfg, err = config.NewCGRConfigFromPath(cdrsPostFailCfgPath); err != nil {
t.Fatal("Got config error: ", err.Error())
}
if err = os.RemoveAll(cdrsPostFailCfg.GeneralCfg().FailedPostsDir); err != nil {
if err = os.RemoveAll(cdrsPostFailCfg.EEsCfg().FailedPosts.Dir); err != nil {
t.Error(err)
}
if err = os.MkdirAll(cdrsPostFailCfg.GeneralCfg().FailedPostsDir, 0755); err != nil {
if err = os.MkdirAll(cdrsPostFailCfg.EEsCfg().FailedPosts.Dir, 0755); err != nil {
t.Error(err)
}
}
@@ -184,13 +184,13 @@ func testCDRsPostFailoverProcessCDR(t *testing.T) {
func testCDRsPostFailoverToFile(t *testing.T) {
time.Sleep(2 * time.Second)
filesInDir, _ := os.ReadDir(cdrsPostFailCfg.GeneralCfg().FailedPostsDir)
filesInDir, _ := os.ReadDir(cdrsPostFailCfg.EEsCfg().FailedPosts.Dir)
if len(filesInDir) == 0 {
t.Fatalf("No files in directory: %s", cdrsPostFailCfg.GeneralCfg().FailedPostsDir)
t.Fatalf("No files in directory: %s", cdrsPostFailCfg.EEsCfg().FailedPosts.Dir)
}
for _, file := range filesInDir { // First file in directory is the one we need, harder to find it's name out of config
fileName := file.Name()
filePath := path.Join(cdrsPostFailCfg.GeneralCfg().FailedPostsDir, fileName)
filePath := path.Join(cdrsPostFailCfg.EEsCfg().FailedPosts.Dir, fileName)
ev, err := ees.NewExportEventsFromFile(filePath)
if err != nil {
@@ -210,7 +210,7 @@ func testCDRsPostFailoverToFile(t *testing.T) {
}
func testCDRsPostFailoverKillEngine(t *testing.T) {
if err := os.RemoveAll(cdrsPostFailCfg.GeneralCfg().FailedPostsDir); err != nil {
if err := os.RemoveAll(cdrsPostFailCfg.EEsCfg().FailedPosts.Dir); err != nil {
t.Error(err)
}
if err := engine.KillEngine(*utils.WaitRater); err != nil {

View File

@@ -107,10 +107,10 @@ func testV1CDRsInitCdrDb(t *testing.T) {
func testV1CDRsStartEngine(t *testing.T) {
// before starting the engine, create the directories needed for failed posts or
// clear their contents if they exist already
if err := os.RemoveAll(pecdrsCfg.GeneralCfg().FailedPostsDir); err != nil {
t.Fatal("Error removing folder: ", pecdrsCfg.GeneralCfg().FailedPostsDir, err)
if err := os.RemoveAll(pecdrsCfg.EEsCfg().FailedPosts.Dir); err != nil {
t.Fatal("Error removing folder: ", pecdrsCfg.EEsCfg().FailedPosts.Dir, err)
}
if err := os.MkdirAll(pecdrsCfg.GeneralCfg().FailedPostsDir, 0755); err != nil {
if err := os.MkdirAll(pecdrsCfg.EEsCfg().FailedPosts.Dir, 0755); err != nil {
t.Fatal(err)
}
if _, err := engine.StopStartEngine(pecdrsCfgPath, *utils.WaitRater); err != nil {
@@ -575,9 +575,9 @@ func testV1CDRsProcessEventExport(t *testing.T) {
}
func testV1CDRsProcessEventExportCheck(t *testing.T) {
failoverContent := []byte(fmt.Sprintf(`{"CGRID":"%s"}`, utils.Sha1("test7_processEvent", "OriginHost7")))
filesInDir, _ := os.ReadDir(pecdrsCfg.GeneralCfg().FailedPostsDir)
filesInDir, _ := os.ReadDir(pecdrsCfg.EEsCfg().FailedPosts.Dir)
if len(filesInDir) == 0 {
t.Fatalf("No files in directory: %s", pecdrsCfg.GeneralCfg().FailedPostsDir)
t.Fatalf("No files in directory: %s", pecdrsCfg.EEsCfg().FailedPosts.Dir)
}
var foundFile bool
var fileName string
@@ -585,7 +585,7 @@ func testV1CDRsProcessEventExportCheck(t *testing.T) {
fileName = file.Name()
if strings.HasPrefix(fileName, "EEs|") {
foundFile = true
filePath := path.Join(pecdrsCfg.GeneralCfg().FailedPostsDir, fileName)
filePath := path.Join(pecdrsCfg.EEsCfg().FailedPosts.Dir, fileName)
ev, err := ees.NewExportEventsFromFile(filePath)
if err != nil {
t.Fatal(err)

View File

@@ -349,7 +349,6 @@ func TestEEsReplayFailedPosts(t *testing.T) {
"general": {
"log_level": 7,
"failed_posts_ttl": "1ms",
"poster_attempts": 1
},
@@ -370,6 +369,9 @@ func TestEEsReplayFailedPosts(t *testing.T) {
"cache": {
"*nats_json_map": {"limit": 0, "ttl": "", "static_ttl": false}
},
"failed_posts": {
"ttl": "1ms"
},
"exporters": [
{
"id": "nats_exporter",

View File

@@ -103,10 +103,10 @@ func testPosterITInitCdrDb(t *testing.T) {
func testPosterITStartEngine(t *testing.T) {
// before starting the engine, create the directories needed for failed posts or
// clear their contents if they exist already
if err := os.RemoveAll(pstrCfg.GeneralCfg().FailedPostsDir); err != nil {
t.Fatal("Error removing folder: ", pstrCfg.GeneralCfg().FailedPostsDir, err)
if err := os.RemoveAll(pstrCfg.EEsCfg().FailedPosts.Dir); err != nil {
t.Fatal("Error removing folder: ", pstrCfg.EEsCfg().FailedPosts.Dir, err)
}
if err := os.MkdirAll(pstrCfg.GeneralCfg().FailedPostsDir, 0755); err != nil {
if err := os.MkdirAll(pstrCfg.EEsCfg().FailedPosts.Dir, 0755); err != nil {
t.Fatal(err)
}
if _, err := engine.StopStartEngine(pstrCfgPath, *utils.WaitRater); err != nil {
@@ -119,14 +119,14 @@ func testPosterITRpcConn(t *testing.T) {
}
func testPosterReadFolder(format string) (expEv *ees.ExportEvents, err error) {
filesInDir, _ := os.ReadDir(pstrCfg.GeneralCfg().FailedPostsDir)
filesInDir, _ := os.ReadDir(pstrCfg.EEsCfg().FailedPosts.Dir)
if len(filesInDir) == 0 {
err = fmt.Errorf("No files in directory: %s", pstrCfg.GeneralCfg().FailedPostsDir)
err = fmt.Errorf("No files in directory: %s", pstrCfg.EEsCfg().FailedPosts.Dir)
return
}
for _, file := range filesInDir { // First file in directory is the one we need, harder to find it's name out of config
fileName := file.Name()
filePath := path.Join(pstrCfg.GeneralCfg().FailedPostsDir, fileName)
filePath := path.Join(pstrCfg.EEsCfg().FailedPosts.Dir, fileName)
expEv, err = ees.NewExportEventsFromFile(filePath)
if err != nil {