@open-rlb/nestjs-amqp 2.0.9 → 2.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +35 -35
  2. package/modules/acl/{authz-match.js → auth-match.js} +1 -1
  3. package/modules/acl/auth-match.js.map +1 -0
  4. package/modules/acl/const.d.ts +3 -0
  5. package/modules/acl/const.js +3 -0
  6. package/modules/acl/const.js.map +1 -1
  7. package/modules/acl/index.d.ts +1 -1
  8. package/modules/acl/index.js +1 -1
  9. package/modules/acl/index.js.map +1 -1
  10. package/modules/acl/repository/acl-action.repository.d.ts +1 -0
  11. package/modules/acl/repository/acl-action.repository.js.map +1 -1
  12. package/modules/acl/repository/acl-grant.repository.d.ts +1 -0
  13. package/modules/acl/repository/acl-grant.repository.js.map +1 -1
  14. package/modules/acl/repository/acl-role.repository.d.ts +1 -0
  15. package/modules/acl/repository/acl-role.repository.js.map +1 -1
  16. package/modules/acl/services/acl-management.service.d.ts +3 -0
  17. package/modules/acl/services/acl-management.service.js +38 -2
  18. package/modules/acl/services/acl-management.service.js.map +1 -1
  19. package/modules/acl/services/acl.service.d.ts +1 -1
  20. package/modules/acl/services/acl.service.js +2 -2
  21. package/modules/acl/services/acl.service.js.map +1 -1
  22. package/modules/gateway-admin/config/gateway-admin.config.d.ts +2 -0
  23. package/modules/gateway-admin/const.d.ts +7 -0
  24. package/modules/gateway-admin/const.js +7 -0
  25. package/modules/gateway-admin/const.js.map +1 -1
  26. package/modules/gateway-admin/gateway-admin.module.js +4 -1
  27. package/modules/gateway-admin/gateway-admin.module.js.map +1 -1
  28. package/modules/gateway-admin/health.d.ts +14 -0
  29. package/modules/gateway-admin/health.js +5 -0
  30. package/modules/gateway-admin/health.js.map +1 -0
  31. package/modules/gateway-admin/index.d.ts +5 -0
  32. package/modules/gateway-admin/index.js +5 -0
  33. package/modules/gateway-admin/index.js.map +1 -1
  34. package/modules/gateway-admin/models.d.ts +61 -0
  35. package/modules/gateway-admin/repository/auth-provider.repository.d.ts +1 -0
  36. package/modules/gateway-admin/repository/auth-provider.repository.js.map +1 -1
  37. package/modules/gateway-admin/repository/http-metric.repository.d.ts +6 -2
  38. package/modules/gateway-admin/repository/http-metric.repository.js.map +1 -1
  39. package/modules/gateway-admin/repository/http-path.repository.d.ts +3 -0
  40. package/modules/gateway-admin/repository/http-path.repository.js.map +1 -1
  41. package/modules/gateway-admin/repository/route-sync-log.repository.d.ts +4 -1
  42. package/modules/gateway-admin/repository/route-sync-log.repository.js.map +1 -1
  43. package/modules/gateway-admin/services/gateway-auth.service.d.ts +1 -0
  44. package/modules/gateway-admin/services/gateway-auth.service.js +12 -0
  45. package/modules/gateway-admin/services/gateway-auth.service.js.map +1 -1
  46. package/modules/gateway-admin/services/gateway-health.service.d.ts +10 -0
  47. package/modules/gateway-admin/services/gateway-health.service.js +64 -0
  48. package/modules/gateway-admin/services/gateway-health.service.js.map +1 -0
  49. package/modules/gateway-admin/services/gateway-metrics-rollup.service.d.ts +13 -0
  50. package/modules/gateway-admin/services/gateway-metrics-rollup.service.js +63 -0
  51. package/modules/gateway-admin/services/gateway-metrics-rollup.service.js.map +1 -0
  52. package/modules/gateway-admin/services/gateway-metrics.service.d.ts +5 -4
  53. package/modules/gateway-admin/services/gateway-metrics.service.js +56 -17
  54. package/modules/gateway-admin/services/gateway-metrics.service.js.map +1 -1
  55. package/modules/gateway-admin/services/gateway-path.service.d.ts +11 -4
  56. package/modules/gateway-admin/services/gateway-path.service.js +79 -11
  57. package/modules/gateway-admin/services/gateway-path.service.js.map +1 -1
  58. package/modules/gateway-admin/services/gateway-retention.service.d.ts +16 -0
  59. package/modules/gateway-admin/services/gateway-retention.service.js +71 -0
  60. package/modules/gateway-admin/services/gateway-retention.service.js.map +1 -0
  61. package/modules/gateway-admin/services/route-sync.service.js +12 -5
  62. package/modules/gateway-admin/services/route-sync.service.js.map +1 -1
  63. package/modules/gateway-admin/util/metrics.d.ts +10 -0
  64. package/modules/gateway-admin/util/metrics.js +170 -0
  65. package/modules/gateway-admin/util/metrics.js.map +1 -0
  66. package/modules/gateway-admin/util/route-diff.d.ts +7 -0
  67. package/modules/gateway-admin/util/route-diff.js +7 -2
  68. package/modules/gateway-admin/util/route-diff.js.map +1 -1
  69. package/modules/gateway-admin/util/route-manifest.d.ts +3 -0
  70. package/modules/gateway-admin/util/route-manifest.js +35 -0
  71. package/modules/gateway-admin/util/route-manifest.js.map +1 -1
  72. package/modules/proxy/services/acl.service.d.ts +1 -1
  73. package/modules/proxy/services/http-auth-handler.service.d.ts +1 -1
  74. package/modules/proxy/services/http-auth-handler.service.js.map +1 -1
  75. package/modules/proxy/services/http-handler.service.d.ts +1 -0
  76. package/modules/proxy/services/http-handler.service.js +24 -32
  77. package/modules/proxy/services/http-handler.service.js.map +1 -1
  78. package/modules/proxy/services/metrics-hook.d.ts +1 -0
  79. package/package.json +1 -1
  80. package/schematics/nest-add/files/acl/src/modules/database/repository/acl.repository.ts +3 -0
  81. package/schematics/nest-add/files/db-core/src/modules/database/repository/in-memory-collection.ts +29 -0
  82. package/schematics/nest-add/files/gateway-admin/src/modules/database/repository/gateway.repository.ts +48 -20
  83. package/schematics/nest-add/files/gateway-admin/src/modules/database/repository/route-sync.repository.ts +24 -1
  84. package/schematics/nest-add/files/skills/rlb-amqp-acl/SKILL.md +6 -1
  85. package/schematics/nest-add/files/skills/rlb-amqp-add-route/SKILL.md +1 -1
  86. package/schematics/nest-add/files/skills/rlb-amqp-gateway-admin/SKILL.md +48 -8
  87. package/schematics/nest-add/index.js +73 -0
  88. package/schematics/nest-add/index.js.map +1 -1
  89. package/schematics/nest-add/index.ts +73 -0
  90. package/modules/acl/authz-match.js.map +0 -1
  91. /package/modules/acl/{authz-match.d.ts → auth-match.d.ts} +0 -0
@@ -43,7 +43,21 @@ GatewayAdminModule.forRoot([
43
43
 
44
44
  Use `forRootAsync` to resolve the **consumer-side** `routeDiscovery { exchange, queue }`
45
45
  from config (see Route auto-discovery). Exports `GatewayPathService`,
46
- `GatewayAuthService`, `GatewayMetricsService`.
46
+ `GatewayAuthService`, `GatewayMetricsService`, `GatewayMetricsRollupService`,
47
+ `GatewayHealthService`, `GatewayRetentionService`.
48
+
49
+ **Options also carry `retentionDays`** (default `90` ≈ 3 months; `0`/negative disables) **and
50
+ `rollupRetentionDays`** (default `365` ≈ 1 year; `0`/negative disables rollups). A daily
51
+ `GatewayRetentionService` job prunes the route journal + raw metric points (`retentionDays`, via
52
+ `prune`/`prunePoints`) and the hourly rollups (`rollupRetentionDays`, via `pruneRollups`). An hourly
53
+ `GatewayMetricsRollupService` downsamples the previous hour's raw points into persisted
54
+ `HttpMetricRollup` rows (`recordRollups`) so long-term trends survive raw-point pruning;
55
+ `gw-metrics-rollups` reads them back via `rollupSeries`.
56
+
57
+ **New repo contract methods consumers must implement:** every `*Repository.search(q?, page?, limit?)`
58
+ now returns `Promise<PaginationModel<T>>` (not a bare array); `RouteSyncLogRepository.query(filter,
59
+ page?, limit?)` backs `gw-route-log-search`; `RouteSyncLogRepository.prune` + `HttpMetricRepository.prunePoints`
60
+ back retention.
47
61
 
48
62
  ## Broker topic + queue (required)
49
63
 
@@ -88,10 +102,13 @@ auth/ACL resources. `create` rejects a `(method, path)` collision (409).
88
102
  | --- | --- | --- | --- | --- |
89
103
  | POST | `/admin/paths` | `gw-path-create` | body | needs `name,method,path,topic`; 409 on collision |
90
104
  | GET | `/admin/paths` | `gw-path-list` | query | `?page=&limit=` |
105
+ | GET | `/admin/paths/search` | `gw-path-search` | query | free-text → `PaginationModel<StoredHttpPath>`; `?q=&page=&limit=` |
91
106
  | GET | `/admin/paths/export` | `gw-path-export` | query | enabled, ordered; used by `loadConfig.paths` |
92
107
  | PUT | `/admin/paths` | `gw-path-update` | body | needs `id`; re-checks collisions |
93
108
  | GET | `/admin/paths/get` | `gw-path-get` | query | `?id=` |
94
109
  | DELETE | `/admin/paths` | `gw-path-delete` | body | `{ id }` |
110
+ | GET | `/admin/route-log` | `gw-route-log-list` | query | route journal (who changed what); `?limit=` |
111
+ | GET | `/admin/route-log/search` | `gw-route-log-search` | query | filtered + paginated journal → `PaginationModel<RouteSyncLogEntry>`; `?actor=&service=&event=&routeKey=&from=&to=&page=&limit=` |
95
112
 
96
113
  ## Auth-provider management — `gw-auth-*` (name-keyed PUT-upsert)
97
114
 
@@ -104,6 +121,7 @@ DB-stored providers, ON TOP of the static `auth-providers[]` in YAML.
104
121
  | PUT | `/admin/auth` | `gw-auth-update` | body | upsert by name; `{ name, type, ... }` |
105
122
  | GET | `/admin/auth/get` | `gw-auth-get` | query | `?name=` |
106
123
  | DELETE | `/admin/auth` | `gw-auth-delete` | body | `{ name }` |
124
+ | GET | `/admin/auth/search` | `gw-auth-search` | query | free-text → `PaginationModel<StoredAuthProvider>`; `?q=&page=&limit=` |
107
125
 
108
126
  `gw-auth-export` (dump all enabled) also exists; not in the sample YAML.
109
127
 
@@ -111,12 +129,30 @@ DB-stored providers, ON TOP of the static `auth-providers[]` in YAML.
111
129
 
112
130
  | Method | Path | action | mode | dataSource | Returns |
113
131
  | --- | --- | --- | --- | --- | --- |
114
- | GET | `/admin/metrics` | `gw-metrics-get` | rpc | query | counters/route (`count,errorCount,avgDurationMs`); `?route=` |
115
- | GET | `/admin/metrics/series` | `gw-metrics-series` | rpc | query | buckets: `?bucketMs=60000&from=&to=&method=&route=&name=` |
116
- | GET | `/admin/metrics/points` | `gw-metrics-points` | rpc | query | raw points newest-first: `?method=&route=&from=&to=&limit=` |
117
- | POST | `/admin/metrics/track` | `gw-metrics-track` | event | body | fire-and-forget sink (wired via `gateway.metrics`) |
132
+ | GET | `/admin/metrics` | `gw-metrics-get` | rpc | query | counters/route (`count,errorCount,avgDurationMs,errorRate,lastErrorCode`); `?route=` |
133
+ | GET | `/admin/metrics/series` | `gw-metrics-series` | rpc | query | enriched buckets w/ `p50/p95/p99`+`byStatus`: `?bucketMs=60000&from=&to=&method=&route=&name=` |
134
+ | GET | `/admin/metrics/points` | `gw-metrics-points` | rpc | query | raw points (incl. error `code`) newest-first: `?method=&route=&from=&to=&limit=` |
135
+ | GET | `/admin/metrics/summary` | `gw-metrics-summary` | rpc | query | overview `MetricSummary` (totals,errorRate,p50/95/99,byStatus,top-N): `?from=&to=&method=&route=&name=&topN=10` |
136
+ | GET | `/admin/metrics/prometheus` | `gw-metrics-prometheus` | rpc | query | Prometheus text exposition of counters (`text/plain`) |
137
+ | GET | `/admin/metrics/rollups` | `gw-metrics-rollups` | rpc | query | hourly rollups (`HttpMetricRollup[]`, survive retention): `?from=&to=&method=&route=` |
138
+ | POST | `/admin/metrics/track` | `gw-metrics-track` | event | body | fire-and-forget sink (wired via `gateway.metrics`) |
139
+
140
+ `series`/`summary` are computed **app-side from raw points** (latency percentiles are exact); the
141
+ counters stay O(1) per route. `prometheus` needs the route's `headers: { Content-Type: text/plain }`.
142
+
143
+ `gw-health` is a **readiness** probe (NOT a metrics dump). Returns
144
+ `{ status: 'up'|'down', broker: { status, detail? }, dependencies: { <name>: { status, detail? } } }`;
145
+ `status` is `'down'` if the broker OR any dependency is down. The broker (AmqpConnection) is checked
146
+ built-in; DB/redis/external checks are **consumer-supplied** via `RLB_GW_HEALTH_INDICATORS` (array of
147
+ `GatewayHealthIndicator { name; check(): Promise<{status:'up'|'down', detail?}> }`, both exported from
148
+ `@open-rlb/nestjs-amqp`). The HTTP response is **always 200** (the gateway forwards an rpc result,
149
+ can't set 503) — readiness must inspect `status`.
118
150
 
119
- `gw-health` → `{ status: 'ok' }`, a real 200 liveness probe (NOT a metrics dump):
151
+ ```ts
152
+ { provide: RLB_GW_HEALTH_INDICATORS, useValue: [
153
+ { name: 'database', check: async () => ({ status: 'up' }) },
154
+ ] satisfies GatewayHealthIndicator[] }
155
+ ```
120
156
 
121
157
  ```yaml
122
158
  - name: health
@@ -212,8 +248,12 @@ Wired by `GatewayAdminModule` (NOT YAML). Asserts the fanout exchange, subscribe
212
248
  to the durable queue (competing consumers), then per manifest: diffs vs DB scoped
213
249
  to the publishing service, applies only changes (insert/update; soft-disable stale
214
250
  to `enabled:false`; skip collisions — existing owner keeps `(method,path)`),
215
- journals every event via `RouteSyncLogRepository`, and publishes `gw-reload` when
216
- anything changed. Never throws (acks; no poison loop).
251
+ journals every event via `RouteSyncLogRepository` (each row has `actor:'system'`;
252
+ `skipped` rows mark user-modified routes left untouched; `updated` rows carry a
253
+ `changes` per-field diff like `actions: [+x, -y]`), and publishes `gw-reload` when
254
+ anything changed. Never throws (acks; no poison loop). Stored routes carry `source`
255
+ (`'microservice'|'user'`) and `modified`; user CRUD (`gw-path-*`) is audited too —
256
+ `actor`=`X-GTW-AUTH-USERID` (else `'unknown'`), event `created`/`updated`/`deleted`.
217
257
 
218
258
  ```ts
219
259
  GatewayAdminModule.forRootAsync({
@@ -285,6 +285,13 @@ const ACL_PATHS = ` # --- ACL management: actions (name is the key — PUT up
285
285
  topic: rlb-acl
286
286
  action: acl-action-delete
287
287
  mode: rpc
288
+ - name: acl-action-search # query: ?q=&limit=
289
+ method: GET
290
+ path: /acl/actions/search
291
+ dataSource: query
292
+ topic: rlb-acl
293
+ action: acl-action-search
294
+ mode: rpc
288
295
  # --- ACL management: roles ---
289
296
  - name: acl-role-list
290
297
  method: GET
@@ -314,6 +321,13 @@ const ACL_PATHS = ` # --- ACL management: actions (name is the key — PUT up
314
321
  topic: rlb-acl
315
322
  action: acl-role-delete
316
323
  mode: rpc
324
+ - name: acl-role-search # query: ?q=&limit=
325
+ method: GET
326
+ path: /acl/roles/search
327
+ dataSource: query
328
+ topic: rlb-acl
329
+ action: acl-role-search
330
+ mode: rpc
317
331
  # --- ACL grants (per-user; resourceId/companyId optional) ---
318
332
  - name: acl-grant
319
333
  method: POST
@@ -329,6 +343,13 @@ const ACL_PATHS = ` # --- ACL management: actions (name is the key — PUT up
329
343
  topic: rlb-acl
330
344
  action: acl-revoke
331
345
  mode: rpc
346
+ - name: acl-grant-search # access search; query: ?q=&limit=
347
+ method: GET
348
+ path: /acl/grants/search
349
+ dataSource: query
350
+ topic: rlb-acl
351
+ action: acl-grant-search
352
+ mode: rpc
332
353
  # --- ACL check (GET → 200 with true/false) ---
333
354
  # checkAction(userId, {companyId?, resourceId?}, action): true if the user holds the action
334
355
  # via any role on the EXACT (companyId, resourceId). companyId/resourceId are optional;
@@ -371,6 +392,13 @@ function adminPaths(controlTopic) {
371
392
  topic: rlb-gateway-admin
372
393
  action: gw-path-list
373
394
  mode: rpc
395
+ - name: gw-path-search # query: ?q=&limit=
396
+ method: GET
397
+ path: /admin/paths/search
398
+ dataSource: query
399
+ topic: rlb-gateway-admin
400
+ action: gw-path-search
401
+ mode: rpc
374
402
  - name: gw-path-export
375
403
  method: GET
376
404
  path: /admin/paths/export
@@ -399,6 +427,21 @@ function adminPaths(controlTopic) {
399
427
  topic: rlb-gateway-admin
400
428
  action: gw-path-delete
401
429
  mode: rpc
430
+ # Route-change journal (who changed what): actor=system for auto-discovery, userId for manual CRUD.
431
+ - name: gw-route-log-list
432
+ method: GET
433
+ path: /admin/route-log
434
+ dataSource: query
435
+ topic: rlb-gateway-admin
436
+ action: gw-route-log-list
437
+ mode: rpc
438
+ - name: gw-route-log-search # filtered+paginated; query: ?actor=&service=&event=&routeKey=&from=&to=&page=&limit=
439
+ method: GET
440
+ path: /admin/route-log/search
441
+ dataSource: query
442
+ topic: rlb-gateway-admin
443
+ action: gw-route-log-search
444
+ mode: rpc
402
445
  - name: gw-auth-list
403
446
  method: GET
404
447
  path: /admin/auth
@@ -406,6 +449,13 @@ function adminPaths(controlTopic) {
406
449
  topic: rlb-gateway-admin
407
450
  action: gw-auth-list
408
451
  mode: rpc
452
+ - name: gw-auth-search # query: ?q=&limit=
453
+ method: GET
454
+ path: /admin/auth/search
455
+ dataSource: query
456
+ topic: rlb-gateway-admin
457
+ action: gw-auth-search
458
+ mode: rpc
409
459
  - name: gw-auth-upsert
410
460
  method: PUT
411
461
  path: /admin/auth
@@ -448,6 +498,29 @@ function adminPaths(controlTopic) {
448
498
  topic: rlb-gateway-admin
449
499
  action: gw-metrics-points
450
500
  mode: rpc
501
+ - name: gw-metrics-summary # dashboard overview; query: ?from=&to=&method=&route=&name=&topN=
502
+ method: GET
503
+ path: /admin/metrics/summary
504
+ dataSource: query
505
+ topic: rlb-gateway-admin
506
+ action: gw-metrics-summary
507
+ mode: rpc
508
+ - name: gw-metrics-prometheus # Prometheus text exposition (returned as text/plain)
509
+ method: GET
510
+ path: /admin/metrics/prometheus
511
+ dataSource: query
512
+ topic: rlb-gateway-admin
513
+ action: gw-metrics-prometheus
514
+ mode: rpc
515
+ headers:
516
+ Content-Type: text/plain; version=0.0.4
517
+ - name: gw-metrics-rollups # long-term downsampled aggregates; query: ?from=&to=&method=&route=
518
+ method: GET
519
+ path: /admin/metrics/rollups
520
+ dataSource: query
521
+ topic: rlb-gateway-admin
522
+ action: gw-metrics-rollups
523
+ mode: rpc
451
524
  - name: gw-metrics-track
452
525
  method: POST
453
526
  path: /admin/metrics/track
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/rlb-nestjs-amqp/src/schematics/nest-add/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/rlb-nestjs-amqp/src/schematics/nest-add/index.ts"],"names":[],"mappings":"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"}
@@ -340,6 +340,13 @@ const ACL_PATHS = ` # --- ACL management: actions (name is the key — PUT up
340
340
  topic: rlb-acl
341
341
  action: acl-action-delete
342
342
  mode: rpc
343
+ - name: acl-action-search # query: ?q=&limit=
344
+ method: GET
345
+ path: /acl/actions/search
346
+ dataSource: query
347
+ topic: rlb-acl
348
+ action: acl-action-search
349
+ mode: rpc
343
350
  # --- ACL management: roles ---
344
351
  - name: acl-role-list
345
352
  method: GET
@@ -369,6 +376,13 @@ const ACL_PATHS = ` # --- ACL management: actions (name is the key — PUT up
369
376
  topic: rlb-acl
370
377
  action: acl-role-delete
371
378
  mode: rpc
379
+ - name: acl-role-search # query: ?q=&limit=
380
+ method: GET
381
+ path: /acl/roles/search
382
+ dataSource: query
383
+ topic: rlb-acl
384
+ action: acl-role-search
385
+ mode: rpc
372
386
  # --- ACL grants (per-user; resourceId/companyId optional) ---
373
387
  - name: acl-grant
374
388
  method: POST
@@ -384,6 +398,13 @@ const ACL_PATHS = ` # --- ACL management: actions (name is the key — PUT up
384
398
  topic: rlb-acl
385
399
  action: acl-revoke
386
400
  mode: rpc
401
+ - name: acl-grant-search # access search; query: ?q=&limit=
402
+ method: GET
403
+ path: /acl/grants/search
404
+ dataSource: query
405
+ topic: rlb-acl
406
+ action: acl-grant-search
407
+ mode: rpc
387
408
  # --- ACL check (GET → 200 with true/false) ---
388
409
  # checkAction(userId, {companyId?, resourceId?}, action): true if the user holds the action
389
410
  # via any role on the EXACT (companyId, resourceId). companyId/resourceId are optional;
@@ -427,6 +448,13 @@ function adminPaths(controlTopic: string): string {
427
448
  topic: rlb-gateway-admin
428
449
  action: gw-path-list
429
450
  mode: rpc
451
+ - name: gw-path-search # query: ?q=&limit=
452
+ method: GET
453
+ path: /admin/paths/search
454
+ dataSource: query
455
+ topic: rlb-gateway-admin
456
+ action: gw-path-search
457
+ mode: rpc
430
458
  - name: gw-path-export
431
459
  method: GET
432
460
  path: /admin/paths/export
@@ -455,6 +483,21 @@ function adminPaths(controlTopic: string): string {
455
483
  topic: rlb-gateway-admin
456
484
  action: gw-path-delete
457
485
  mode: rpc
486
+ # Route-change journal (who changed what): actor=system for auto-discovery, userId for manual CRUD.
487
+ - name: gw-route-log-list
488
+ method: GET
489
+ path: /admin/route-log
490
+ dataSource: query
491
+ topic: rlb-gateway-admin
492
+ action: gw-route-log-list
493
+ mode: rpc
494
+ - name: gw-route-log-search # filtered+paginated; query: ?actor=&service=&event=&routeKey=&from=&to=&page=&limit=
495
+ method: GET
496
+ path: /admin/route-log/search
497
+ dataSource: query
498
+ topic: rlb-gateway-admin
499
+ action: gw-route-log-search
500
+ mode: rpc
458
501
  - name: gw-auth-list
459
502
  method: GET
460
503
  path: /admin/auth
@@ -462,6 +505,13 @@ function adminPaths(controlTopic: string): string {
462
505
  topic: rlb-gateway-admin
463
506
  action: gw-auth-list
464
507
  mode: rpc
508
+ - name: gw-auth-search # query: ?q=&limit=
509
+ method: GET
510
+ path: /admin/auth/search
511
+ dataSource: query
512
+ topic: rlb-gateway-admin
513
+ action: gw-auth-search
514
+ mode: rpc
465
515
  - name: gw-auth-upsert
466
516
  method: PUT
467
517
  path: /admin/auth
@@ -504,6 +554,29 @@ function adminPaths(controlTopic: string): string {
504
554
  topic: rlb-gateway-admin
505
555
  action: gw-metrics-points
506
556
  mode: rpc
557
+ - name: gw-metrics-summary # dashboard overview; query: ?from=&to=&method=&route=&name=&topN=
558
+ method: GET
559
+ path: /admin/metrics/summary
560
+ dataSource: query
561
+ topic: rlb-gateway-admin
562
+ action: gw-metrics-summary
563
+ mode: rpc
564
+ - name: gw-metrics-prometheus # Prometheus text exposition (returned as text/plain)
565
+ method: GET
566
+ path: /admin/metrics/prometheus
567
+ dataSource: query
568
+ topic: rlb-gateway-admin
569
+ action: gw-metrics-prometheus
570
+ mode: rpc
571
+ headers:
572
+ Content-Type: text/plain; version=0.0.4
573
+ - name: gw-metrics-rollups # long-term downsampled aggregates; query: ?from=&to=&method=&route=
574
+ method: GET
575
+ path: /admin/metrics/rollups
576
+ dataSource: query
577
+ topic: rlb-gateway-admin
578
+ action: gw-metrics-rollups
579
+ mode: rpc
507
580
  - name: gw-metrics-track
508
581
  method: POST
509
582
  path: /admin/metrics/track
@@ -1 +0,0 @@
1
- {"version":3,"file":"authz-match.js","sourceRoot":"","sources":["../../../libs/rlb-nestjs-amqp/src/modules/acl/authz-match.ts"],"names":[],"mappings":";;AAkBA,oDAEC;AAXD,SAAS,IAAI,CAAC,CAAU;IACtB,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAOD,SAAgB,oBAAoB,CAAC,KAAe,EAAE,GAAwB;IAC5E,OAAO,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;AAC9G,CAAC"}