2778 Commits

Author SHA1 Message Date
armirveliaj
63320b71f0 Add coverage tests on engine && utils 2024-10-30 22:14:31 +01:00
gezimbll
f72d4defb4 added *rankings filters in dynamicDP 2024-10-30 22:14:03 +01:00
gezimbll
b8616282ee added integration tests for ranking scheduling 2024-10-30 22:14:03 +01:00
ionutboangiu
7df0494913 Consider diameter requests when limiting caps
- add possibility to pass custom Error-Message AVP to negative diameter
  answers
- negative answer is now built only when an error occurs
- remove tests that were testing behaviour with max concurrent requests 0
2024-10-29 18:53:22 +01:00
DanB
14292a77ea RankingSummary structure, LastUpdate timestamp inside Ranking struct, Ranking documentation 2024-10-18 18:53:58 +02:00
gezimbll
2e192dde78 added trend dynamicDP in filters and GetTrendSummary API 2024-10-18 16:24:02 +02:00
gezimbll
88805ac074 added get/set methods for ranking in datamanager 2024-10-17 15:54:53 +02:00
DanB
8b0279d341 Completing rankingDescSorter 2024-10-17 13:07:01 +02:00
gezimbll
1765be1247 modified ranking csv and model 2024-10-17 12:17:21 +02:00
DanB
ed8ac2a317 Adding rankingSorter interface 2024-10-16 20:09:24 +02:00
DanB
4d7cb6c88a Basic RankingS implementation 2024-10-16 18:44:57 +02:00
gezimbll
e518e7b913 Integration test for scheduleAutomaticQueries && api for scheduled trends 2024-10-08 20:49:13 +02:00
DanB
86ed9e932b Alpha code for TrendS 2024-10-05 20:30:22 +02:00
gezimbll
06a9e1b661 changed DataManager.GetTrendProfiles to GetTrendProfileIDs with new signature 2024-10-03 17:43:26 +02:00
gezimbll
b134df83b7 added it tests and new APIs for TrendS 2024-10-01 20:05:29 +02:00
armirveliaj
d9a5458a43 Add new trends config option: scheduled_ids 2024-10-01 20:04:22 +02:00
DanB
68a5a76b93 Adding TrendS.V1ScheduleTrendQueries API 2024-09-24 20:17:11 +02:00
arberkatellari
3df926c642 Improve V1ReprocessCDRs flags handling 2024-09-24 12:29:41 +02:00
arberkatellari
bd6f5c661d Add *eventTimestamp for EES 2024-09-23 11:52:31 +02:00
arberkatellari
c7e7634189 Add CDRsV1.ReprocessCDRs 2024-09-23 11:52:31 +02:00
gezimblliku
bfba6c6f74 updated trendprofile model structure 2024-09-23 11:51:18 +02:00
gezimblliku
187ac2e0c9 updated profile and model fields for trends 2024-09-17 18:17:28 +02:00
arberkatellari
bcb089822f Add APIerSV1TimingIsActiveAt 2024-09-17 18:13:41 +02:00
DanB
6e84b555be Updating TrendS with getTrendGrowth function 2024-09-16 21:01:42 +02:00
DanB
98818c3560 TrendS.computeTrend implementation 2024-09-13 21:31:53 +02:00
gezimblliku
b56220933a added ees_conns on stats 2024-09-10 13:20:05 +02:00
ionutboangiu
62c30ab539 improve CoreSv1.Status API with more detailed metrics
- add new metrics (off by default)
- add Debug boolean option for full metric details
- add Timezone option for 'running_since' field
- update default metrics shown and their constants
- remove utils.GetStartTime(), now use process metrics
2024-09-09 16:47:38 +02:00
ionutboangiu
6e971e954c chore: remove unused call & redundant ping methods
- Ping methods defined by engine.NewService for all services
- Call methods were previously replaced by the centralized call method
(on *birpc.Service) for all components
- All services now register V1/V2 objects from apier package for
consistency
2024-09-06 17:37:05 +02:00
ionutboangiu
162b077d0e SplitPath: stop at '#' for nesting separator 2024-09-05 20:51:30 +02:00
ionutboangiu
8fec8dbca1 fix: maintain fallback subj keys configured order 2024-08-30 13:01:01 +02:00
gezimblliku
ccc999642d added *fileLineNumber variable 2024-08-22 20:40:46 +02:00
gezimblliku
b7b931b8f6 added datamanager GetTrendProfiles method && api 2024-08-21 21:04:36 +02:00
gezimblliku
58e419b002 updated trend structure && model 2024-08-16 12:32:21 +02:00
gezimblliku
5b75bacff7 added trend with get,set and remove methods in datamanager 2024-08-14 14:03:21 +02:00
ionutboangiu
594e8404dc Add http pprof_path cfg option 2024-08-12 18:36:45 +02:00
ionutboangiu
73fc386036 Add stordb pgSSLCertMode option 2024-08-12 18:36:45 +02:00
arberkatellari
0bab7d5557 Add reader id within the *vars in ERs 2024-08-09 09:14:24 +02:00
ionutboangiu
d0183597f1 Add postgres stor_db SSL opts 2024-08-09 09:13:10 +02:00
ionutboangiu
78e020e2be Implement HTTP endpoint for prometheus
configurable via 'prometheus_url' option in the HTTP section
2024-08-05 13:28:33 +02:00
gezimblliku
22b96ca1e3 added tests for filter statmetric 2024-08-04 21:10:50 +02:00
ionutboangiu
63129feb4c prevent memprof file overwrites for small intervals
Previously, the timestamp was accurate only down to seconds. For smaller intervals,
this would truncate the previous file(s). Now, for small intervals, the number of
microseconds is appended to the file name.

Added the possibility to disable timestamps in the memory profile file names and use
increments of 1 instead.

Updated the memory profiling integration tests.
2024-08-02 09:35:36 +02:00
ionutboangiu
1c490a9020 Revise memory profiling implementation
- merge StopChanMemProf with StopMemoryProfiling
- remove fileMEM and stopMemProf from struct and constructors
- add separate mutex for memory profiling, ensure thread safety
- handle all significant errors
- log error if StopMemoryProfiling fails during CoreS Shutdown
- ignore errors if profiling inactive in Shutdown and deferred Stop
- move validations inside V1 functions
- return error if StartMemoryProfiling already started
- return error if StopMemoryProfiling already stopped or never started
- close profiling loop on error, not the cgr-engine
- StopMemoryProfiling closes channel and profiling loop writes final profile
- rename Path to DirPath for mandatory field error
- rename memprof_nrfiles flag to memprof_maxfiles
- increase default memprof_interval
- consider MaxFiles <= 0 as unlimited
- move memory profiling logic after starting services
- use CoreService Start/StopMemoryProfiling in main
- remove final memory profile block (created by deferred Stop)
- convert MemProfiling to method on CoreService and rename to profileMemory
- use Ticker for recurrent actions instead of Timer
- compute mem_final.prof full path in StartMemoryProfiling
- suffix profile files with current time instead of numbers
- update dispatcher methods after changes
- move MemoryPrf from utils to cores, rename to MemoryProfilingParams
- add logs for starting/stopping profiling
2024-08-02 09:35:36 +02:00
ionutboangiu
6f4d2144a6 Add test & constant for set_versions flag
Also added set_versions help entry to cgr-engine doc.
2024-08-02 09:35:36 +02:00
ionutboangiu
958aa267cf Refactor HTTP profiling and flag handling
- hardcode the base path for profiling endpoints to '/debug/pprof/'
- change profiling flag 'httprof_path' to boolean 'http_pprof'
  (because of the above)
- remove redundant profiling endpoint registrations (handled by pprof.Index)
- move profiling registration log after actual registration
- make profiling registration log more descriptive
- use utils.Logger instead of log.Print for the log mentioned above
- refactor flags test into a table test (adding also verification for default
  flag values)
- change 'scheduledShutdown' flag type from string to time.Duration (to avoid
  unnecessary time parsing)
- revise flags usage descriptions
- rename flag 'singlecpu' to 'singleCPU'
- switch to 'ExitOnError' for flag parsing to simplify error handling and
  automatically handle 'ErrHelp' by exiting with status 0 when help is
  requested and status 2 for other parsing errors. Before the following error
  log would have been received:
  '<InitS> error received: <flag: help requested>, exiting!'
- update cgr-engine documentation
2024-08-02 09:35:36 +02:00
ionutboangiu
4cba4a699d Implement SharedActionsData for action groups
- holds common relevant data between actions.
- currently supports only *cdrlog, making the process more reliable
and less repetitive. It also provides access to more information about
actions when creating CDRs.
- easier to scale.
- removes the need for cloning accounts before executing a group of
actions.
- added Actions method to check if specific action types exist inside.
2024-07-21 19:04:53 +02:00
gezimbll
85bd7a50e7 updated sags service name to ranking 2024-07-14 13:39:20 +02:00
gezimbll
4d4392d196 revised comments && renamed sars to trends 2024-07-14 13:39:20 +02:00
gezimbll
6c2fbbec28 added sars model,tp,api 2024-07-14 13:39:20 +02:00
ionutboangiu
eb3bd5cc1d Add redisPoolPipelineLimit configuration field for datadb
Sets the maximum number of commands that can be pipelined before flushing.
0 means no limit and pipelines will only be limited by the time window.
2024-07-05 11:21:16 +02:00
ionutboangiu
ed3fa0d294 Add redisPoolPipelineWindow configuration field for datadb
Sets the duration after which internal pipelines are flushed.
0 disabled implicit pipelining.
2024-07-02 19:58:03 +02:00