@cybermem/mcp 0.5.3 → 0.6.2

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 (80) hide show
  1. package/README.md +1 -1
  2. package/dist/index.js +204 -28
  3. package/package.json +29 -28
  4. package/requirements.txt +2 -0
  5. package/server.py +347 -0
  6. package/src/index.ts +228 -0
  7. package/test_mcp.py +111 -0
  8. package/tsconfig.json +14 -0
  9. package/dist/commands/__tests__/backup.test.js +0 -75
  10. package/dist/commands/__tests__/restore.test.js +0 -70
  11. package/dist/commands/backup.js +0 -52
  12. package/dist/commands/deploy.js +0 -242
  13. package/dist/commands/init.js +0 -65
  14. package/dist/commands/restore.js +0 -62
  15. package/dist/templates/ansible/inventory/hosts.ini +0 -3
  16. package/dist/templates/ansible/playbooks/deploy-cybermem.yml +0 -71
  17. package/dist/templates/ansible/playbooks/stop-cybermem.yml +0 -17
  18. package/dist/templates/charts/cybermem/Chart.yaml +0 -6
  19. package/dist/templates/charts/cybermem/templates/dashboard-deployment.yaml +0 -29
  20. package/dist/templates/charts/cybermem/templates/dashboard-service.yaml +0 -20
  21. package/dist/templates/charts/cybermem/templates/openmemory-deployment.yaml +0 -40
  22. package/dist/templates/charts/cybermem/templates/openmemory-pvc.yaml +0 -10
  23. package/dist/templates/charts/cybermem/templates/openmemory-service.yaml +0 -13
  24. package/dist/templates/charts/cybermem/values-vps.yaml +0 -18
  25. package/dist/templates/charts/cybermem/values.yaml +0 -42
  26. package/dist/templates/docker-compose.yml +0 -236
  27. package/dist/templates/envs/local.example +0 -27
  28. package/dist/templates/envs/rpi.example +0 -27
  29. package/dist/templates/envs/vps.example +0 -25
  30. package/dist/templates/mcp-responder/Dockerfile +0 -6
  31. package/dist/templates/mcp-responder/server.js +0 -22
  32. package/dist/templates/monitoring/db_exporter/Dockerfile +0 -19
  33. package/dist/templates/monitoring/db_exporter/exporter.py +0 -313
  34. package/dist/templates/monitoring/db_exporter/requirements.txt +0 -2
  35. package/dist/templates/monitoring/grafana/dashboards/cybermem.json +0 -1088
  36. package/dist/templates/monitoring/grafana/provisioning/dashboards/default.yml +0 -12
  37. package/dist/templates/monitoring/grafana/provisioning/datasources/prometheus.yml +0 -9
  38. package/dist/templates/monitoring/log_exporter/Dockerfile +0 -13
  39. package/dist/templates/monitoring/log_exporter/exporter.py +0 -274
  40. package/dist/templates/monitoring/log_exporter/requirements.txt +0 -1
  41. package/dist/templates/monitoring/postgres_exporter/queries.yml +0 -22
  42. package/dist/templates/monitoring/prometheus/prometheus.yml +0 -22
  43. package/dist/templates/monitoring/traefik/dynamic/.gitkeep +0 -0
  44. package/dist/templates/monitoring/traefik/traefik.yml +0 -32
  45. package/dist/templates/monitoring/vector/vector.toml/vector.yaml +0 -77
  46. package/dist/templates/monitoring/vector/vector.yaml +0 -106
  47. package/dist/templates/openmemory/Dockerfile +0 -19
  48. package/templates/ansible/inventory/hosts.ini +0 -3
  49. package/templates/ansible/playbooks/deploy-cybermem.yml +0 -71
  50. package/templates/ansible/playbooks/stop-cybermem.yml +0 -17
  51. package/templates/charts/cybermem/Chart.yaml +0 -6
  52. package/templates/charts/cybermem/templates/dashboard-deployment.yaml +0 -29
  53. package/templates/charts/cybermem/templates/dashboard-service.yaml +0 -20
  54. package/templates/charts/cybermem/templates/openmemory-deployment.yaml +0 -40
  55. package/templates/charts/cybermem/templates/openmemory-pvc.yaml +0 -10
  56. package/templates/charts/cybermem/templates/openmemory-service.yaml +0 -13
  57. package/templates/charts/cybermem/values-vps.yaml +0 -18
  58. package/templates/charts/cybermem/values.yaml +0 -42
  59. package/templates/docker-compose.yml +0 -236
  60. package/templates/envs/local.example +0 -27
  61. package/templates/envs/rpi.example +0 -27
  62. package/templates/envs/vps.example +0 -25
  63. package/templates/mcp-responder/Dockerfile +0 -6
  64. package/templates/mcp-responder/server.js +0 -22
  65. package/templates/monitoring/db_exporter/Dockerfile +0 -19
  66. package/templates/monitoring/db_exporter/exporter.py +0 -313
  67. package/templates/monitoring/db_exporter/requirements.txt +0 -2
  68. package/templates/monitoring/grafana/dashboards/cybermem.json +0 -1088
  69. package/templates/monitoring/grafana/provisioning/dashboards/default.yml +0 -12
  70. package/templates/monitoring/grafana/provisioning/datasources/prometheus.yml +0 -9
  71. package/templates/monitoring/log_exporter/Dockerfile +0 -13
  72. package/templates/monitoring/log_exporter/exporter.py +0 -274
  73. package/templates/monitoring/log_exporter/requirements.txt +0 -1
  74. package/templates/monitoring/postgres_exporter/queries.yml +0 -22
  75. package/templates/monitoring/prometheus/prometheus.yml +0 -22
  76. package/templates/monitoring/traefik/dynamic/.gitkeep +0 -0
  77. package/templates/monitoring/traefik/traefik.yml +0 -32
  78. package/templates/monitoring/vector/vector.toml/vector.yaml +0 -77
  79. package/templates/monitoring/vector/vector.yaml +0 -106
  80. package/templates/openmemory/Dockerfile +0 -19
@@ -1,1088 +0,0 @@
1
- {
2
- "annotations": {
3
- "list": [
4
- {
5
- "builtIn": 1,
6
- "datasource": {
7
- "type": "grafana",
8
- "uid": "-- Grafana --"
9
- },
10
- "enable": false,
11
- "hide": true,
12
- "iconColor": "rgba(0, 211, 255, 1)",
13
- "name": "Annotations & Alerts",
14
- "type": "dashboard"
15
- }
16
- ]
17
- },
18
- "editable": true,
19
- "fiscalYearStartMonth": 0,
20
- "graphTooltip": 1,
21
- "id": null,
22
- "links": [],
23
- "panels": [
24
- {
25
- "datasource": {
26
- "type": "prometheus",
27
- "uid": "prometheus"
28
- },
29
- "fieldConfig": {
30
- "defaults": {
31
- "color": {
32
- "mode": "thresholds"
33
- },
34
- "mappings": [],
35
- "thresholds": {
36
- "mode": "absolute",
37
- "steps": [
38
- {
39
- "color": "green",
40
- "value": null
41
- }
42
- ]
43
- },
44
- "unit": "short"
45
- },
46
- "overrides": []
47
- },
48
- "gridPos": {
49
- "h": 4,
50
- "w": 6,
51
- "x": 0,
52
- "y": 0
53
- },
54
- "id": 100,
55
- "options": {
56
- "colorMode": "value",
57
- "graphMode": "area",
58
- "justifyMode": "auto",
59
- "orientation": "auto",
60
- "reduceOptions": {
61
- "values": false,
62
- "calcs": [
63
- "lastNotNull"
64
- ],
65
- "fields": ""
66
- },
67
- "textMode": "auto"
68
- },
69
- "targets": [
70
- {
71
- "datasource": {
72
- "type": "prometheus",
73
- "uid": "prometheus"
74
- },
75
- "editorMode": "code",
76
- "expr": "sum(openmemory_requests_total)",
77
- "range": true,
78
- "refId": "A"
79
- }
80
- ],
81
- "title": "Total Requests",
82
- "type": "stat"
83
- },
84
- {
85
- "datasource": {
86
- "type": "prometheus",
87
- "uid": "prometheus"
88
- },
89
- "fieldConfig": {
90
- "defaults": {
91
- "color": {
92
- "mode": "thresholds"
93
- },
94
- "mappings": [],
95
- "thresholds": {
96
- "mode": "absolute",
97
- "steps": [
98
- {
99
- "color": "green",
100
- "value": null
101
- }
102
- ]
103
- },
104
- "unit": "short"
105
- },
106
- "overrides": []
107
- },
108
- "gridPos": {
109
- "h": 4,
110
- "w": 6,
111
- "x": 6,
112
- "y": 0
113
- },
114
- "id": 101,
115
- "options": {
116
- "colorMode": "value",
117
- "graphMode": "area",
118
- "justifyMode": "auto",
119
- "orientation": "auto",
120
- "reduceOptions": {
121
- "values": false,
122
- "calcs": [
123
- "lastNotNull"
124
- ],
125
- "fields": ""
126
- },
127
- "textMode": "auto"
128
- },
129
- "targets": [
130
- {
131
- "datasource": {
132
- "type": "prometheus",
133
- "uid": "prometheus"
134
- },
135
- "editorMode": "code",
136
- "expr": "openmemory_memories_total",
137
- "range": true,
138
- "refId": "A"
139
- }
140
- ],
141
- "title": "Memory Records",
142
- "type": "stat"
143
- },
144
- {
145
- "datasource": {
146
- "type": "prometheus",
147
- "uid": "prometheus"
148
- },
149
- "fieldConfig": {
150
- "defaults": {
151
- "color": {
152
- "mode": "thresholds"
153
- },
154
- "mappings": [],
155
- "thresholds": {
156
- "mode": "absolute",
157
- "steps": [
158
- {
159
- "color": "green",
160
- "value": null
161
- }
162
- ]
163
- },
164
- "unit": "short"
165
- },
166
- "overrides": []
167
- },
168
- "gridPos": {
169
- "h": 4,
170
- "w": 6,
171
- "x": 12,
172
- "y": 0
173
- },
174
- "id": 102,
175
- "options": {
176
- "colorMode": "value",
177
- "graphMode": "area",
178
- "justifyMode": "auto",
179
- "orientation": "auto",
180
- "reduceOptions": {
181
- "values": false,
182
- "calcs": [
183
- "lastNotNull"
184
- ],
185
- "fields": ""
186
- },
187
- "textMode": "auto"
188
- },
189
- "targets": [
190
- {
191
- "datasource": {
192
- "type": "prometheus",
193
- "uid": "prometheus"
194
- },
195
- "editorMode": "code",
196
- "expr": "count(count by (client_name) (openmemory_requests_total))",
197
- "range": true,
198
- "refId": "A"
199
- }
200
- ],
201
- "title": "Total Clients",
202
- "type": "stat"
203
- },
204
- {
205
- "datasource": {
206
- "type": "prometheus",
207
- "uid": "prometheus"
208
- },
209
- "fieldConfig": {
210
- "defaults": {
211
- "color": {
212
- "mode": "thresholds"
213
- },
214
- "mappings": [],
215
- "thresholds": {
216
- "mode": "absolute",
217
- "steps": [
218
- {
219
- "color": "green",
220
- "value": null
221
- }
222
- ]
223
- },
224
- "unit": "percent"
225
- },
226
- "overrides": []
227
- },
228
- "gridPos": {
229
- "h": 4,
230
- "w": 6,
231
- "x": 18,
232
- "y": 0
233
- },
234
- "id": 103,
235
- "options": {
236
- "colorMode": "value",
237
- "graphMode": "area",
238
- "justifyMode": "auto",
239
- "orientation": "auto",
240
- "reduceOptions": {
241
- "values": false,
242
- "calcs": [
243
- "lastNotNull"
244
- ],
245
- "fields": ""
246
- },
247
- "textMode": "auto"
248
- },
249
- "targets": [
250
- {
251
- "datasource": {
252
- "type": "prometheus",
253
- "uid": "prometheus"
254
- },
255
- "editorMode": "code",
256
- "expr": "(sum(openmemory_requests_total) - sum(openmemory_requests_total{status=~\"4..|5..\"})) / sum(openmemory_requests_total) * 100",
257
- "range": true,
258
- "refId": "A"
259
- }
260
- ],
261
- "title": "Success Rate",
262
- "type": "stat"
263
- },
264
- {
265
- "datasource": {
266
- "type": "prometheus",
267
- "uid": "prometheus"
268
- },
269
- "fieldConfig": {
270
- "defaults": {
271
- "color": {
272
- "mode": "palette-classic"
273
- },
274
- "custom": {
275
- "axisCenteredZero": false,
276
- "axisColorMode": "text",
277
- "axisLabel": "",
278
- "axisPlacement": "auto",
279
- "barAlignment": 0,
280
- "drawStyle": "line",
281
- "fillOpacity": 0,
282
- "gradientMode": "none",
283
- "hideFrom": {
284
- "tooltip": false,
285
- "viz": false,
286
- "legend": false
287
- },
288
- "lineInterpolation": "linear",
289
- "lineWidth": 2,
290
- "pointSize": 5,
291
- "scaleDistribution": {
292
- "type": "linear"
293
- },
294
- "showPoints": "never",
295
- "spanNulls": true,
296
- "stacking": {
297
- "group": "A",
298
- "mode": "none"
299
- },
300
- "thresholdsStyle": {
301
- "mode": "off"
302
- }
303
- },
304
- "mappings": [],
305
- "min": 0,
306
- "thresholds": {
307
- "mode": "absolute",
308
- "steps": [
309
- {
310
- "color": "green",
311
- "value": null
312
- }
313
- ]
314
- },
315
- "unit": "short"
316
- },
317
- "overrides": []
318
- },
319
- "gridPos": {
320
- "h": 8,
321
- "w": 12,
322
- "x": 0,
323
- "y": 4
324
- },
325
- "id": 1,
326
- "options": {
327
- "legend": {
328
- "calcs": [
329
- "last"
330
- ],
331
- "displayMode": "list",
332
- "placement": "bottom",
333
- "showLegend": true
334
- },
335
- "tooltip": {
336
- "mode": "multi",
337
- "sort": "none"
338
- }
339
- },
340
- "targets": [
341
- {
342
- "datasource": {
343
- "type": "prometheus",
344
- "uid": "prometheus"
345
- },
346
- "editorMode": "code",
347
- "expr": "sum by (client_name) (openmemory_requests_total{operation=\"create\"})",
348
- "legendFormat": "{{client_name}}",
349
- "range": true,
350
- "refId": "A"
351
- }
352
- ],
353
- "title": "Creates by Client",
354
- "type": "timeseries"
355
- },
356
- {
357
- "datasource": {
358
- "type": "prometheus",
359
- "uid": "prometheus"
360
- },
361
- "fieldConfig": {
362
- "defaults": {
363
- "color": {
364
- "mode": "palette-classic"
365
- },
366
- "custom": {
367
- "axisCenteredZero": false,
368
- "axisColorMode": "text",
369
- "axisLabel": "",
370
- "axisPlacement": "auto",
371
- "barAlignment": 0,
372
- "drawStyle": "line",
373
- "fillOpacity": 0,
374
- "gradientMode": "none",
375
- "hideFrom": {
376
- "tooltip": false,
377
- "viz": false,
378
- "legend": false
379
- },
380
- "lineInterpolation": "linear",
381
- "lineWidth": 2,
382
- "pointSize": 5,
383
- "scaleDistribution": {
384
- "type": "linear"
385
- },
386
- "showPoints": "never",
387
- "spanNulls": true,
388
- "stacking": {
389
- "group": "A",
390
- "mode": "none"
391
- },
392
- "thresholdsStyle": {
393
- "mode": "off"
394
- }
395
- },
396
- "mappings": [],
397
- "min": 0,
398
- "thresholds": {
399
- "mode": "absolute",
400
- "steps": [
401
- {
402
- "color": "green",
403
- "value": null
404
- }
405
- ]
406
- },
407
- "unit": "short"
408
- },
409
- "overrides": []
410
- },
411
- "gridPos": {
412
- "h": 8,
413
- "w": 12,
414
- "x": 12,
415
- "y": 4
416
- },
417
- "id": 2,
418
- "options": {
419
- "legend": {
420
- "calcs": [
421
- "last"
422
- ],
423
- "displayMode": "list",
424
- "placement": "bottom",
425
- "showLegend": true
426
- },
427
- "tooltip": {
428
- "mode": "multi",
429
- "sort": "none"
430
- }
431
- },
432
- "targets": [
433
- {
434
- "datasource": {
435
- "type": "prometheus",
436
- "uid": "prometheus"
437
- },
438
- "editorMode": "code",
439
- "expr": "sum by (client_name) (openmemory_requests_total{operation=\"read\"})",
440
- "legendFormat": "{{client_name}}",
441
- "range": true,
442
- "refId": "A"
443
- }
444
- ],
445
- "title": "Reads by Client",
446
- "type": "timeseries"
447
- },
448
- {
449
- "datasource": {
450
- "type": "prometheus",
451
- "uid": "prometheus"
452
- },
453
- "fieldConfig": {
454
- "defaults": {
455
- "color": {
456
- "mode": "palette-classic"
457
- },
458
- "custom": {
459
- "axisCenteredZero": false,
460
- "axisColorMode": "text",
461
- "axisLabel": "",
462
- "axisPlacement": "auto",
463
- "barAlignment": 0,
464
- "drawStyle": "line",
465
- "fillOpacity": 0,
466
- "gradientMode": "none",
467
- "hideFrom": {
468
- "tooltip": false,
469
- "viz": false,
470
- "legend": false
471
- },
472
- "lineInterpolation": "linear",
473
- "lineWidth": 2,
474
- "pointSize": 5,
475
- "scaleDistribution": {
476
- "type": "linear"
477
- },
478
- "showPoints": "never",
479
- "spanNulls": true,
480
- "stacking": {
481
- "group": "A",
482
- "mode": "none"
483
- },
484
- "thresholdsStyle": {
485
- "mode": "off"
486
- }
487
- },
488
- "mappings": [],
489
- "min": 0,
490
- "thresholds": {
491
- "mode": "absolute",
492
- "steps": [
493
- {
494
- "color": "green",
495
- "value": null
496
- }
497
- ]
498
- },
499
- "unit": "short"
500
- },
501
- "overrides": []
502
- },
503
- "gridPos": {
504
- "h": 8,
505
- "w": 12,
506
- "x": 0,
507
- "y": 12
508
- },
509
- "id": 3,
510
- "options": {
511
- "legend": {
512
- "calcs": [
513
- "last"
514
- ],
515
- "displayMode": "list",
516
- "placement": "bottom",
517
- "showLegend": true
518
- },
519
- "tooltip": {
520
- "mode": "multi",
521
- "sort": "none"
522
- }
523
- },
524
- "targets": [
525
- {
526
- "datasource": {
527
- "type": "prometheus",
528
- "uid": "prometheus"
529
- },
530
- "editorMode": "code",
531
- "expr": "sum by (client_name) (openmemory_requests_total{operation=\"update\"})",
532
- "legendFormat": "{{client_name}}",
533
- "range": true,
534
- "refId": "A"
535
- }
536
- ],
537
- "title": "Updates by Client",
538
- "type": "timeseries"
539
- },
540
- {
541
- "datasource": {
542
- "type": "prometheus",
543
- "uid": "prometheus"
544
- },
545
- "fieldConfig": {
546
- "defaults": {
547
- "color": {
548
- "mode": "palette-classic"
549
- },
550
- "custom": {
551
- "axisCenteredZero": false,
552
- "axisColorMode": "text",
553
- "axisLabel": "",
554
- "axisPlacement": "auto",
555
- "barAlignment": 0,
556
- "drawStyle": "line",
557
- "fillOpacity": 0,
558
- "gradientMode": "none",
559
- "hideFrom": {
560
- "tooltip": false,
561
- "viz": false,
562
- "legend": false
563
- },
564
- "lineInterpolation": "linear",
565
- "lineWidth": 2,
566
- "pointSize": 5,
567
- "scaleDistribution": {
568
- "type": "linear"
569
- },
570
- "showPoints": "never",
571
- "spanNulls": true,
572
- "stacking": {
573
- "group": "A",
574
- "mode": "none"
575
- },
576
- "thresholdsStyle": {
577
- "mode": "off"
578
- }
579
- },
580
- "mappings": [],
581
- "min": 0,
582
- "thresholds": {
583
- "mode": "absolute",
584
- "steps": [
585
- {
586
- "color": "green",
587
- "value": null
588
- }
589
- ]
590
- },
591
- "unit": "short"
592
- },
593
- "overrides": []
594
- },
595
- "gridPos": {
596
- "h": 8,
597
- "w": 12,
598
- "x": 12,
599
- "y": 12
600
- },
601
- "id": 4,
602
- "options": {
603
- "legend": {
604
- "calcs": [
605
- "last"
606
- ],
607
- "displayMode": "list",
608
- "placement": "bottom",
609
- "showLegend": true
610
- },
611
- "tooltip": {
612
- "mode": "multi",
613
- "sort": "none"
614
- }
615
- },
616
- "targets": [
617
- {
618
- "datasource": {
619
- "type": "prometheus",
620
- "uid": "prometheus"
621
- },
622
- "editorMode": "code",
623
- "expr": "sum by (client_name) (openmemory_requests_total{operation=\"delete\"})",
624
- "legendFormat": "{{client_name}}",
625
- "range": true,
626
- "refId": "A"
627
- }
628
- ],
629
- "title": "Deletes by Client",
630
- "type": "timeseries"
631
- },
632
- {
633
- "datasource": {
634
- "type": "prometheus",
635
- "uid": "prometheus"
636
- },
637
- "fieldConfig": {
638
- "defaults": {
639
- "color": {
640
- "mode": "palette-classic"
641
- },
642
- "custom": {
643
- "axisCenteredZero": false,
644
- "axisColorMode": "text",
645
- "axisLabel": "",
646
- "axisPlacement": "auto",
647
- "barAlignment": 0,
648
- "drawStyle": "line",
649
- "fillOpacity": 0,
650
- "gradientMode": "none",
651
- "hideFrom": {
652
- "tooltip": false,
653
- "viz": false,
654
- "legend": false
655
- },
656
- "lineInterpolation": "linear",
657
- "lineWidth": 2,
658
- "pointSize": 5,
659
- "scaleDistribution": {
660
- "type": "linear"
661
- },
662
- "showPoints": "never",
663
- "spanNulls": true,
664
- "stacking": {
665
- "group": "A",
666
- "mode": "none"
667
- },
668
- "thresholdsStyle": {
669
- "mode": "off"
670
- }
671
- },
672
- "mappings": [],
673
- "max": 100,
674
- "min": 0,
675
- "thresholds": {
676
- "mode": "absolute",
677
- "steps": [
678
- {
679
- "color": "green",
680
- "value": null
681
- }
682
- ]
683
- },
684
- "unit": "percent"
685
- },
686
- "overrides": []
687
- },
688
- "gridPos": {
689
- "h": 8,
690
- "w": 12,
691
- "x": 0,
692
- "y": 20
693
- },
694
- "id": 5,
695
- "options": {
696
- "legend": {
697
- "calcs": [
698
- "last"
699
- ],
700
- "displayMode": "list",
701
- "placement": "bottom",
702
- "showLegend": true
703
- },
704
- "tooltip": {
705
- "mode": "multi",
706
- "sort": "none"
707
- }
708
- },
709
- "targets": [
710
- {
711
- "datasource": {
712
- "type": "prometheus",
713
- "uid": "prometheus"
714
- },
715
- "editorMode": "code",
716
- "expr": "(sum by (client_name) (openmemory_requests_total) - sum by (client_name) (openmemory_requests_total{status=~\"4..|5..\"})) / sum by (client_name) (openmemory_requests_total) * 100",
717
- "legendFormat": "{{client_name}}",
718
- "range": true,
719
- "refId": "A"
720
- }
721
- ],
722
- "title": "Success Rate by Client",
723
- "type": "timeseries"
724
- },
725
- {
726
- "datasource": {
727
- "type": "prometheus",
728
- "uid": "prometheus"
729
- },
730
- "fieldConfig": {
731
- "defaults": {
732
- "color": {
733
- "mode": "palette-classic"
734
- },
735
- "custom": {
736
- "axisCenteredZero": false,
737
- "axisColorMode": "text",
738
- "axisLabel": "",
739
- "axisPlacement": "auto",
740
- "barAlignment": 0,
741
- "drawStyle": "line",
742
- "fillOpacity": 0,
743
- "gradientMode": "none",
744
- "hideFrom": {
745
- "tooltip": false,
746
- "viz": false,
747
- "legend": false
748
- },
749
- "lineInterpolation": "linear",
750
- "lineWidth": 2,
751
- "pointSize": 5,
752
- "scaleDistribution": {
753
- "type": "linear"
754
- },
755
- "showPoints": "never",
756
- "spanNulls": true,
757
- "stacking": {
758
- "group": "A",
759
- "mode": "none"
760
- },
761
- "thresholdsStyle": {
762
- "mode": "off"
763
- }
764
- },
765
- "mappings": [],
766
- "min": 0,
767
- "thresholds": {
768
- "mode": "absolute",
769
- "steps": [
770
- {
771
- "color": "green",
772
- "value": null
773
- }
774
- ]
775
- },
776
- "unit": "short"
777
- },
778
- "overrides": []
779
- },
780
- "gridPos": {
781
- "h": 8,
782
- "w": 12,
783
- "x": 12,
784
- "y": 20
785
- },
786
- "id": 6,
787
- "options": {
788
- "legend": {
789
- "calcs": [
790
- "last"
791
- ],
792
- "displayMode": "list",
793
- "placement": "bottom",
794
- "showLegend": true
795
- },
796
- "tooltip": {
797
- "mode": "multi",
798
- "sort": "none"
799
- }
800
- },
801
- "targets": [
802
- {
803
- "datasource": {
804
- "type": "prometheus",
805
- "uid": "prometheus"
806
- },
807
- "editorMode": "code",
808
- "expr": "sum by (client_name) (openmemory_requests_total{status=~\"4..|5..\"})",
809
- "legendFormat": "{{client_name}}",
810
- "range": true,
811
- "refId": "A"
812
- }
813
- ],
814
- "title": "Errors by Client",
815
- "type": "timeseries"
816
- },
817
- {
818
- "datasource": {
819
- "type": "prometheus",
820
- "uid": "prometheus"
821
- },
822
- "fieldConfig": {
823
- "defaults": {
824
- "color": {
825
- "mode": "thresholds"
826
- },
827
- "custom": {
828
- "align": "left",
829
- "cellOptions": {
830
- "type": "auto"
831
- },
832
- "inspect": false
833
- },
834
- "mappings": [
835
- {
836
- "options": {
837
- "create": {
838
- "color": "purple",
839
- "index": 0,
840
- "text": "Write"
841
- },
842
- "delete": {
843
- "color": "red",
844
- "index": 3,
845
- "text": "Delete"
846
- },
847
- "read": {
848
- "color": "blue",
849
- "index": 1,
850
- "text": "Read"
851
- },
852
- "update": {
853
- "color": "yellow",
854
- "index": 2,
855
- "text": "Update"
856
- }
857
- },
858
- "type": "value"
859
- }
860
- ],
861
- "thresholds": {
862
- "mode": "absolute",
863
- "steps": [
864
- {
865
- "color": "green",
866
- "value": null
867
- }
868
- ]
869
- }
870
- },
871
- "overrides": [
872
- {
873
- "matcher": {
874
- "id": "byName",
875
- "options": "Time"
876
- },
877
- "properties": [
878
- {
879
- "id": "custom.width",
880
- "value": 180
881
- },
882
- {
883
- "id": "unit",
884
- "value": "dateTimeFromNow"
885
- }
886
- ]
887
- },
888
- {
889
- "matcher": {
890
- "id": "byName",
891
- "options": "client_name"
892
- },
893
- "properties": [
894
- {
895
- "id": "displayName",
896
- "value": "Client"
897
- },
898
- {
899
- "id": "custom.width",
900
- "value": 200
901
- }
902
- ]
903
- },
904
- {
905
- "matcher": {
906
- "id": "byName",
907
- "options": "operation"
908
- },
909
- "properties": [
910
- {
911
- "id": "displayName",
912
- "value": "Operation"
913
- },
914
- {
915
- "id": "custom.width",
916
- "value": 120
917
- },
918
- {
919
- "id": "custom.cellOptions",
920
- "value": {
921
- "type": "color-background"
922
- }
923
- }
924
- ]
925
- },
926
- {
927
- "matcher": {
928
- "id": "byName",
929
- "options": "status"
930
- },
931
- "properties": [
932
- {
933
- "id": "displayName",
934
- "value": "Status"
935
- },
936
- {
937
- "id": "custom.width",
938
- "value": 100
939
- },
940
- {
941
- "id": "mappings",
942
- "value": [
943
- {
944
- "options": {
945
- "pattern": "2..",
946
- "result": {
947
- "color": "green",
948
- "index": 0,
949
- "text": "Success"
950
- }
951
- },
952
- "type": "regex"
953
- },
954
- {
955
- "options": {
956
- "pattern": "[45]..",
957
- "result": {
958
- "color": "red",
959
- "index": 1,
960
- "text": "Error"
961
- }
962
- },
963
- "type": "regex"
964
- }
965
- ]
966
- },
967
- {
968
- "id": "custom.cellOptions",
969
- "value": {
970
- "type": "color-background"
971
- }
972
- }
973
- ]
974
- },
975
- {
976
- "matcher": {
977
- "id": "byName",
978
- "options": "endpoint"
979
- },
980
- "properties": [
981
- {
982
- "id": "displayName",
983
- "value": "Endpoint"
984
- }
985
- ]
986
- },
987
- {
988
- "matcher": {
989
- "id": "byName",
990
- "options": "method"
991
- },
992
- "properties": [
993
- {
994
- "id": "custom.hidden",
995
- "value": true
996
- }
997
- ]
998
- }
999
- ]
1000
- },
1001
- "gridPos": {
1002
- "h": 9,
1003
- "w": 24,
1004
- "x": 0,
1005
- "y": 28
1006
- },
1007
- "id": 7,
1008
- "options": {
1009
- "cellHeight": "sm",
1010
- "footer": {
1011
- "countRows": false,
1012
- "fields": "",
1013
- "reducer": [
1014
- "sum"
1015
- ],
1016
- "show": false
1017
- },
1018
- "showHeader": true,
1019
- "sortBy": [
1020
- {
1021
- "desc": true,
1022
- "displayName": "Time"
1023
- }
1024
- ]
1025
- },
1026
- "pluginVersion": "10.4.2",
1027
- "targets": [
1028
- {
1029
- "datasource": {
1030
- "type": "prometheus",
1031
- "uid": "prometheus"
1032
- },
1033
- "editorMode": "code",
1034
- "exemplar": false,
1035
- "expr": "topk(100, openmemory_requests_total)",
1036
- "format": "table",
1037
- "instant": true,
1038
- "legendFormat": "__auto",
1039
- "range": false,
1040
- "refId": "A"
1041
- }
1042
- ],
1043
- "title": "Access Log (Recent Requests)",
1044
- "transformations": [
1045
- {
1046
- "id": "organize",
1047
- "options": {
1048
- "excludeByName": {
1049
- "Time": false,
1050
- "Value": true,
1051
- "__name__": true,
1052
- "client_version": true,
1053
- "instance": true,
1054
- "job": true
1055
- },
1056
- "indexByName": {
1057
- "Time": 0,
1058
- "client_name": 1,
1059
- "endpoint": 3,
1060
- "method": 4,
1061
- "operation": 2,
1062
- "status": 5
1063
- },
1064
- "renameByName": {}
1065
- }
1066
- }
1067
- ],
1068
- "type": "table"
1069
- }
1070
- ],
1071
- "refresh": "5s",
1072
- "schemaVersion": 38,
1073
- "tags": [
1074
- "cybermem"
1075
- ],
1076
- "templating": {
1077
- "list": []
1078
- },
1079
- "time": {
1080
- "from": "now-1h",
1081
- "to": "now"
1082
- },
1083
- "timepicker": {},
1084
- "timezone": "",
1085
- "title": "CyberMem Operations",
1086
- "uid": "cybermem-ops",
1087
- "version": 2
1088
- }