Commit Graph

1000 Commits

Author SHA1 Message Date
ionutboangiu
e8c770c415 prometheus: add node_id label to cache metrics 2025-07-21 10:27:10 +02:00
ionutboangiu
71a1242522 prometheus: add cache statistics metrics 2025-07-21 10:27:10 +02:00
ionutboangiu
f68b6e8f79 radius: pass ips flag to sessions via opts 2025-07-10 16:56:08 +02:00
ionutboangiu
54f4a63c24 radius: revise dict loading err log 2025-07-10 16:56:08 +02:00
ionutboangiu
570a285b31 Consider radius requests when limiting caps 2025-07-08 08:18:30 +02:00
ionutboangiu
785236592b Port RADIUS DMR/CoA functionality
This commit ports the following changes from v0.11:

- 9991b29 - Implement DisconnectSession API for RADIUS Agent
- 02c8ed1 - Implement support for RADIUS CoA
- 7129d34 - Merge CoA into ReAuthorize logic
- d8ad760 - Update both ReAuthorize API signatures
- 5560608 - Dynamic templates for Radius CoA out of APIOpts
- f9d1c0f - Refactor ReAuthorize to AlterSessions
- 8388832 - Rename agents API object: SessionSv1 to AgentV1
- b580e09 - Add sanity checks for radius templates
- ca6a944 - Update client_da_addresses structure
- 98265a1 - Refactor function names and error msgs related to AlterSessions
- ee98dbe - Update AgentV1DisconnectSession api signature
- c9b6c1f - Add support for sending *dmr template via APIOpts
- 03eff44 - Cache RADIUS packets during accounting instead of auth
- 28e53ce - Add requests_cache_key field to radagent cfg
2025-07-08 08:18:30 +02:00
ionutboangiu
43930547b9 cfg: support multiple radius auth/acct listeners 2025-07-08 08:18:30 +02:00
ionutboangiu
c42198f3c2 cfg: allow multiple dict dirs per radius client
ported from commit 47e75fab1
2025-07-08 08:18:30 +02:00
arberkatellari
baf767c966 Correct addition of vendor at radReplyAppendAttributes & IT test for it 2025-07-08 08:18:30 +02:00
arberkatellari
4642c47599 Show proper value to radAgent reply when using *log 2025-07-08 08:18:30 +02:00
arberkatellari
ad5ec6c062 Add cgr_max_usage variable to fs channels 2025-07-06 19:46:53 +02:00
arberkatellari
1d8e84892a Revise postgres tp tables creation & fix tests 2025-07-02 21:45:29 +02:00
ionutboangiu
0e8bff551b test diameter-stats-prometheus integration 2025-06-24 18:18:12 +02:00
ionutboangiu
28edf30543 send agent events to stats/thresholds w/ ProcessTime
applies only to template-based agents
2025-06-24 18:18:12 +02:00
arberkatellari
5847ceab00 Add and revise tests for offline internal DB 2025-05-13 17:07:17 +02:00
ionutboangiu
109ed8fe34 prometheus: replace string literals with constants 2025-05-03 21:44:51 +02:00
ionutboangiu
c2fb0df6c6 normalize metric types for mixed connection types 2025-05-03 21:44:51 +02:00
ionutboangiu
d8eccf83da revise wrong prom metric comment 2025-05-03 21:44:51 +02:00
gezimbll
1c11eb3582 add *gigawords dataconverter 2025-04-25 16:24:43 +02:00
ionutboangiu
16d131b058 move attributes to dedicated package 2025-04-22 19:33:12 +02:00
ionutboangiu
069cadd618 move routes to dedicated package 2025-04-22 19:33:12 +02:00
ionutboangiu
347ea9d988 Add CoreS metrics collection to PrometheusAgent 2025-03-25 14:27:52 +01:00
ionutboangiu
0b26559d1f move chargers to dedicated package 2025-03-16 16:28:30 +01:00
gezimbll
1f686fca63 added RequestProcessors in fsAgent 2025-03-11 18:12:49 +01:00
ionutboangiu
24d886c8e0 Pass CGRConfig to DataManager
instead of just CacheCfg. Prevents the need of global config var in
engine/datamanager.go
2025-03-10 13:49:34 +01:00
ionutboangiu
e79fcdb064 use pre-defined instrumented prometheus handler
instead of creating the handler on each scrape
2025-03-09 17:27:31 +01:00
ionutboangiu
4e46f8dbd9 add PrometheusAgent implementation 2025-03-09 17:27:31 +01:00
ionutboangiu
4ad5bee6ab move failing tests to flaky 2025-02-24 13:36:32 +01:00
ionutboangiu
deaf5f4918 Move config/objdp.go to utils package
and rename the file to objectdp.go
2025-02-24 13:36:32 +01:00
ionutboangiu
3254e0d35f Export RSRParser Path field
configsanity and its tests need access to it
2025-02-24 13:36:32 +01:00
ionutboangiu
b1a5874215 Move config/rsrparser.go to utils package 2025-02-24 13:36:32 +01:00
ionutboangiu
36a7d174ab Remove RSRSep opt from general section
- allows RSRParser to be split gracefully from config (was depending on
  RSRSep, which was retrieved from the global config variable)
- default separator (;) was the only one used except for splitting
  inline attribute values (where ANDSep is used)
2025-02-24 13:36:32 +01:00
ionutboangiu
40c5d65af6 Add benchmark for diameter+caps
unusable until sessions is finished
2024-11-04 21:22:58 +01:00
ionutboangiu
66c119dba7 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
- add integration test specific to this change
2024-11-04 21:22:58 +01:00
ionutboangiu
ad104573e9 Remove concurrent_requests diameter opt
Will be replaced by caps.
2024-11-04 21:22:58 +01:00
ionutboangiu
3e98e37db3 Revise NewRPCClient helper function 2024-10-23 21:11:25 +02:00
ionutboangiu
df3c98e842 Revise agents *uch unit test
- optimized it (2s -> 0.03s) by lowering the cfg cache TTL to 5ms
  instead of 1s, which was enough to get consistent results.
- increase margin of error by 1ms
- in case of failure, retrieve the expiry time and log it along the
current time. Makes troubleshooting easier in the future.
2024-09-25 20:58:51 +02:00
ionutboangiu
a0ba8e352b FSAgent: ensure MaxReconnectInterval is being used
option was added previously but not made use of
2024-09-23 20:28:26 +02:00
ionutboangiu
6ed3c5592d Add reply_timeout field for FS event socket conns 2024-09-23 20:28:26 +02:00
ionutboangiu
449bc5c08a Add active_session_delimiter option for fs_agent
Used for 'show_channels' requests and responses.
2024-09-23 20:28:26 +02:00
ionutboangiu
2f387b5a0e chore: remove unnecessary parentheses
gofmt -r '(a) -> a' -w **/*.go
2024-09-05 20:46:40 +02:00
ionutboangiu
fee2712a23 chore: replace interface{} with any 2024-09-05 20:46:40 +02:00
gezimblliku
04f2c69b05 updated dependencies with the latest versions 2024-08-22 20:39:59 +02:00
ionutboangiu
0f70af84e9 centralize test flags for shared use across tests 2024-08-15 18:17:33 +02:00
ionutboangiu
0dfb3b860d Centralize RPCClient constructor 2024-08-15 18:17:33 +02:00
Gezim Blliku
80249e1074 implemented janusagent & added to services 2024-07-21 19:07:43 +02:00
arberkatellari
bd571376a7 Update kamevapi version 2024-03-08 16:38:50 +01:00
arberkatellari
d698e8db9d Make DNS TLS error log more suggestive 2024-01-06 17:12:02 +01:00
gezimbll
32ed816de7 Replacing IsSliceMember ,CloneStringSlice and SliceStringEqual with slices package functions 2023-11-01 21:38:27 +01:00
ionutboangiu
4c34d321de Add sanity check to prevent xml reader panic
HierarchyPath parser now returns nil when
the path is empty (instead of a string slice with one
EmptyString element).

If isAbsolute is set to true, when calling the AsString
method on a nil HierarchyPath, only the separator will
be returned. Alternatively, if isAbsolute is false, it
will just return . to signal that the path currently
being processed is the one required.This avoids a nil
expr error coming from the xmlquery library.

Use the Query and QueryAll functions from the xmlquery
package to be able to handle the errors ourselves and
avoid panics.

Remove config default value for xmlRootPath. The field
will remain commented in config_defaults for reference.

Add tests for HierarchyPath.AsString function.

Add comments for XmlProvider and xmlRootPath opt.

Update XmlProvider String() func based on the comment
which specifies that it should display the already
parsed values out of cache.
2023-10-19 17:19:30 +02:00