Reg Quota Assertion
Does the quota assertion follow 24 hour clock to reset or it calculates the initial request made (eg: if a call comes to Layer 7 at 10 AM does it reset at 10 AM next day)
Release : 9.4
It does not reset/clear the data store in the counters table. it's a calculation on when access, the limit stored in GMT time
To verify ssg log INFO message on the reason
Also a FINE message on where the counter stored (SSGDB)
2023-02-14T06:01:15.471-0500 FINE 460 com.l7tech.external.assertions.throughputquota.server.ServerThroughputQuotaAssertion: ThroughputQuotaAssertion is using counter provider: ssgdb
2023-02-14T06:01:15.475-0500 INFO 460 com.l7tech.external.assertions.throughputquota.server.ServerThroughputQuotaAssertion: throughput quota limit is already reached.
How the “Apply Throughput Quote” works and where the counters/access are stored
The counter is stored in SSG DB, this is checked when the assertion is used by the gateway in the cluster. The status is based on what configured and GMT time
COUNTERS Table
mysql> desc counters;
+-------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+-------+
| goid | binary(16) | NO | PRI | NULL | |
| countername | varchar(255) | NO | UNI | NULL | |
| cnt_sec | bigint | YES | | 0 | |
| cnt_min | bigint | YES | | 0 | |
| cnt_hr | bigint | YES | | 0 | |
| cnt_day | bigint | YES | | 0 | |
| cnt_mnt | bigint | YES | | 0 | |
| last_update | bigint | YES | | 0 | |
+-------------+--------------+------+-----+---------+---
The table query example below - these are shared in all GW in the cluster
mysql> select countername, last_update, cnt_day from counters;
+----------------------------------------+---------------+---------+
| countername | last_update | cnt_day |
+----------------------------------------+---------------+---------+
| 89c1dda9ed38461796ffd00da43cd9f5 | 1676068301452 | 1 |
| PRESET(eb1bf52f3fe3560b)10.230.109.199 | 1676068476323 | 5 |
| 10.252.146.108 | 1676068771451 | 200 |
| PRESET(a6e7064407e50a32)10.230.109.199 | 1676371666930 | 1 |
| PRESET(93af8ec2f5d95a91) | 1676068104521 | 85 |
| PRESET(93af8ec2f5d95a91)10.230.109.199 | 1676068690686 | 200 |
| 10.252.144.216 | 1676068798195 | 120 |
+----------------------------------------+---------------+---------+
7 rows in set (0.00 sec)
For the highlighted request the assertions allow one request per day based on GMT time last_update.
24 hours from the below time access will be allowed again
GMT time 1676371666930 limit will be
Assuming that this timestamp is in milliseconds:
GMT: Tuesday, February 14, 2023 10:47:46.930 AM
Your time zone: Tuesday, February 14, 2023 5:47:46.930 AM GMT-05:00
Relative: A minute ago
Request will fail after one attempt a day