Comparison

misc/grafana/prosody-dashboard.json @ 5761:06ecadfe95e8

misc: Add a Grafana dashboard
author Kim Alvefur <zash@zash.se>
date Mon, 27 Nov 2023 17:14:36 +0100
comparison
equal deleted inserted replaced
5760:72b0fa7e36dc 5761:06ecadfe95e8
1 {
2 "description" : "",
3 "editable" : true,
4 "fiscalYearStartMonth" : 0,
5 "graphTooltip" : 1,
6 "id" : 1,
7 "links" : [],
8 "liveNow" : false,
9 "panels" : [
10 {
11 "collapsed" : false,
12 "gridPos" : {
13 "h" : 1,
14 "w" : 24,
15 "x" : 0,
16 "y" : 0
17 },
18 "id" : 26,
19 "panels" : [],
20 "title" : "Core",
21 "type" : "row"
22 },
23 {
24 "fieldConfig" : {
25 "defaults" : {
26 "color" : {
27 "mode" : "continuous-GrYlRd",
28 "seriesBy" : "last"
29 },
30 "custom" : {
31 "axisBorderShow" : false,
32 "axisCenteredZero" : false,
33 "axisColorMode" : "text",
34 "axisLabel" : "",
35 "axisPlacement" : "right",
36 "barAlignment" : 0,
37 "drawStyle" : "line",
38 "fillOpacity" : 10,
39 "gradientMode" : "scheme",
40 "hideFrom" : {
41 "legend" : false,
42 "tooltip" : false,
43 "viz" : false
44 },
45 "insertNulls" : false,
46 "lineInterpolation" : "smooth",
47 "lineStyle" : {
48 "fill" : "solid"
49 },
50 "lineWidth" : 1,
51 "pointSize" : 5,
52 "scaleDistribution" : {
53 "type" : "linear"
54 },
55 "showPoints" : "auto",
56 "spanNulls" : 300000,
57 "stacking" : {
58 "group" : "A",
59 "mode" : "none"
60 },
61 "thresholdsStyle" : {
62 "mode" : "off"
63 }
64 },
65 "mappings" : [],
66 "min" : 0,
67 "thresholds" : {
68 "mode" : "absolute",
69 "steps" : [
70 {
71 "color" : "green",
72 "value" : null
73 },
74 {
75 "color" : "red",
76 "value" : 80
77 }
78 ]
79 },
80 "unit" : "percentunit"
81 },
82 "overrides" : []
83 },
84 "gridPos" : {
85 "h" : 8,
86 "w" : 12,
87 "x" : 0,
88 "y" : 1
89 },
90 "id" : 6,
91 "options" : {
92 "legend" : {
93 "calcs" : [],
94 "displayMode" : "list",
95 "placement" : "bottom",
96 "showLegend" : true
97 },
98 "tooltip" : {
99 "mode" : "single",
100 "sort" : "none"
101 }
102 },
103 "pluginVersion" : "8.2.5",
104 "targets" : [
105 {
106 "exemplar" : true,
107 "expr" : "rate(process_cpu_seconds_total{job=\"prosody\"}[$__interval])",
108 "instant" : false,
109 "interval" : "",
110 "intervalFactor" : 2,
111 "legendFormat" : "usage",
112 "refId" : "A"
113 }
114 ],
115 "title" : "CPU",
116 "type" : "timeseries"
117 },
118 {
119 "fieldConfig" : {
120 "defaults" : {
121 "color" : {
122 "mode" : "palette-classic"
123 },
124 "custom" : {
125 "axisBorderShow" : false,
126 "axisCenteredZero" : false,
127 "axisColorMode" : "text",
128 "axisLabel" : "",
129 "axisPlacement" : "right",
130 "barAlignment" : 0,
131 "drawStyle" : "line",
132 "fillOpacity" : 10,
133 "gradientMode" : "none",
134 "hideFrom" : {
135 "legend" : false,
136 "tooltip" : false,
137 "viz" : false
138 },
139 "insertNulls" : false,
140 "lineInterpolation" : "smooth",
141 "lineStyle" : {
142 "fill" : "solid"
143 },
144 "lineWidth" : 1,
145 "pointSize" : 5,
146 "scaleDistribution" : {
147 "log" : 2,
148 "type" : "log"
149 },
150 "showPoints" : "auto",
151 "spanNulls" : 300000,
152 "stacking" : {
153 "group" : "A",
154 "mode" : "none"
155 },
156 "thresholdsStyle" : {
157 "mode" : "off"
158 }
159 },
160 "mappings" : [],
161 "thresholds" : {
162 "mode" : "percentage",
163 "steps" : [
164 {
165 "color" : "green",
166 "value" : null
167 }
168 ]
169 },
170 "unit" : "bytes"
171 },
172 "overrides" : [
173 {
174 "__systemRef" : "hideSeriesFrom",
175 "matcher" : {
176 "id" : "byNames",
177 "options" : {
178 "mode" : "exclude",
179 "names" : [
180 "RSS",
181 "Used",
182 "Lua"
183 ],
184 "prefix" : "All except:",
185 "readOnly" : true
186 }
187 },
188 "properties" : [
189 {
190 "id" : "custom.hideFrom",
191 "value" : {
192 "legend" : false,
193 "tooltip" : false,
194 "viz" : true
195 }
196 }
197 ]
198 }
199 ]
200 },
201 "gridPos" : {
202 "h" : 8,
203 "w" : 12,
204 "x" : 12,
205 "y" : 1
206 },
207 "id" : 4,
208 "options" : {
209 "legend" : {
210 "calcs" : [],
211 "displayMode" : "list",
212 "placement" : "bottom",
213 "showLegend" : true
214 },
215 "tooltip" : {
216 "mode" : "single",
217 "sort" : "none"
218 }
219 },
220 "pluginVersion" : "8.2.5",
221 "targets" : [
222 {
223 "exemplar" : true,
224 "expr" : "max_over_time(process_virtual_memory_bytes{job=\"prosody\"}[$__interval])",
225 "fullMetaSearch" : false,
226 "hide" : false,
227 "interval" : "",
228 "intervalFactor" : 1,
229 "legendFormat" : "Virtual",
230 "refId" : "VIRT"
231 },
232 {
233 "exemplar" : false,
234 "expr" : "max_over_time(process_resident_memory_bytes{job=\"prosody\"}[$__interval])",
235 "interval" : "",
236 "legendFormat" : "RSS",
237 "refId" : "RSS"
238 },
239 {
240 "exemplar" : false,
241 "expr" : "max_over_time(malloc_heap_allocated_bytes{job=\"prosody\"}[$__interval])",
242 "hide" : false,
243 "interval" : "",
244 "legendFormat" : "Allocated ({{mode}})",
245 "refId" : "Malloc allocated"
246 },
247 {
248 "exemplar" : false,
249 "expr" : "max_over_time(malloc_heap_used_bytes{job=\"prosody\"}[$__interval])",
250 "hide" : false,
251 "interval" : "",
252 "legendFormat" : "Used",
253 "refId" : "Malloc Used"
254 },
255 {
256 "exemplar" : false,
257 "expr" : "max_over_time(lua_heap_bytes{job=\"prosody\"}[$__interval])",
258 "hide" : false,
259 "interval" : "",
260 "legendFormat" : "Lua",
261 "refId" : "Lua"
262 },
263 {
264 "exemplar" : false,
265 "expr" : "sum(lua_heap_bytes{job=\"prosody\"}) / (sum(prosody_mod_c2s__connections{job=\"prosody\"})+sum(prosody_mod_s2s__connections_inbound{job=\"prosody\"})+sum(prosody_mod_s2s__connections_outbound{job=\"prosody\"}))",
266 "hide" : false,
267 "interval" : "",
268 "legendFormat" : "Lua (per connection)",
269 "refId" : "LuaPerConn"
270 }
271 ],
272 "title" : "Memory",
273 "type" : "timeseries"
274 },
275 {
276 "collapsed" : false,
277 "gridPos" : {
278 "h" : 1,
279 "w" : 24,
280 "x" : 0,
281 "y" : 9
282 },
283 "id" : 31,
284 "panels" : [],
285 "title" : "Connections",
286 "type" : "row"
287 },
288 {
289 "fieldConfig" : {
290 "defaults" : {
291 "color" : {
292 "mode" : "palette-classic"
293 },
294 "custom" : {
295 "axisBorderShow" : false,
296 "axisCenteredZero" : false,
297 "axisColorMode" : "text",
298 "axisLabel" : "",
299 "axisPlacement" : "right",
300 "barAlignment" : 0,
301 "drawStyle" : "line",
302 "fillOpacity" : 100,
303 "gradientMode" : "none",
304 "hideFrom" : {
305 "legend" : false,
306 "tooltip" : false,
307 "viz" : false
308 },
309 "insertNulls" : false,
310 "lineInterpolation" : "stepAfter",
311 "lineWidth" : 0,
312 "pointSize" : 5,
313 "scaleDistribution" : {
314 "type" : "linear"
315 },
316 "showPoints" : "auto",
317 "spanNulls" : false,
318 "stacking" : {
319 "group" : "A",
320 "mode" : "normal"
321 },
322 "thresholdsStyle" : {
323 "mode" : "off"
324 }
325 },
326 "mappings" : [],
327 "min" : 0,
328 "thresholds" : {
329 "mode" : "absolute",
330 "steps" : [
331 {
332 "color" : "green",
333 "value" : null
334 },
335 {
336 "color" : "red",
337 "value" : 80
338 }
339 ]
340 },
341 "unit" : "none"
342 },
343 "overrides" : []
344 },
345 "gridPos" : {
346 "h" : 8,
347 "w" : 12,
348 "x" : 0,
349 "y" : 10
350 },
351 "id" : 13,
352 "options" : {
353 "legend" : {
354 "calcs" : [],
355 "displayMode" : "list",
356 "placement" : "bottom",
357 "showLegend" : true
358 },
359 "tooltip" : {
360 "mode" : "single",
361 "sort" : "none"
362 }
363 },
364 "targets" : [
365 {
366 "exemplar" : true,
367 "expr" : "prosody_mod_c2s__connections{type=\"c2s\"}",
368 "interval" : "",
369 "legendFormat" : "{{ip_family}} {{type}}",
370 "refId" : "c2s"
371 }
372 ],
373 "title" : "Client-to-Server Connections",
374 "type" : "timeseries"
375 },
376 {
377 "fieldConfig" : {
378 "defaults" : {
379 "color" : {
380 "mode" : "palette-classic"
381 },
382 "custom" : {
383 "axisBorderShow" : false,
384 "axisCenteredZero" : false,
385 "axisColorMode" : "text",
386 "axisLabel" : "",
387 "axisPlacement" : "right",
388 "barAlignment" : 0,
389 "drawStyle" : "line",
390 "fillOpacity" : 100,
391 "gradientMode" : "none",
392 "hideFrom" : {
393 "legend" : false,
394 "tooltip" : false,
395 "viz" : false
396 },
397 "insertNulls" : false,
398 "lineInterpolation" : "stepAfter",
399 "lineWidth" : 0,
400 "pointSize" : 5,
401 "scaleDistribution" : {
402 "type" : "linear"
403 },
404 "showPoints" : "auto",
405 "spanNulls" : false,
406 "stacking" : {
407 "group" : "A",
408 "mode" : "normal"
409 },
410 "thresholdsStyle" : {
411 "mode" : "off"
412 }
413 },
414 "mappings" : [],
415 "min" : 0,
416 "thresholds" : {
417 "mode" : "absolute",
418 "steps" : [
419 {
420 "color" : "green",
421 "value" : null
422 },
423 {
424 "color" : "red",
425 "value" : 80
426 }
427 ]
428 },
429 "unit" : "none"
430 },
431 "overrides" : []
432 },
433 "gridPos" : {
434 "h" : 8,
435 "w" : 12,
436 "x" : 12,
437 "y" : 10
438 },
439 "id" : 12,
440 "options" : {
441 "legend" : {
442 "calcs" : [],
443 "displayMode" : "list",
444 "placement" : "bottom",
445 "showLegend" : true
446 },
447 "tooltip" : {
448 "mode" : "single",
449 "sort" : "none"
450 }
451 },
452 "targets" : [
453 {
454 "exemplar" : true,
455 "expr" : "sum(prosody_mod_s2s__connections_inbound{type=\"s2sin\"}) by (ip_family)",
456 "interval" : "",
457 "legendFormat" : "{{ip_family}} s2sin",
458 "refId" : "s2sin"
459 },
460 {
461 "exemplar" : true,
462 "expr" : "sum(prosody_mod_s2s__connections_outbound{type=\"s2sout\"}) by (ip_family)",
463 "hide" : false,
464 "interval" : "",
465 "legendFormat" : "{{ip_family}} s2sout",
466 "refId" : "s2sout"
467 }
468 ],
469 "title" : "Server-to-Server Connections",
470 "type" : "timeseries"
471 },
472 {
473 "fieldConfig" : {
474 "defaults" : {
475 "custom" : {
476 "hideFrom" : {
477 "legend" : false,
478 "tooltip" : false,
479 "viz" : false
480 },
481 "scaleDistribution" : {
482 "type" : "linear"
483 }
484 }
485 },
486 "overrides" : []
487 },
488 "gridPos" : {
489 "h" : 8,
490 "w" : 12,
491 "x" : 0,
492 "y" : 18
493 },
494 "id" : 29,
495 "options" : {
496 "calculate" : false,
497 "cellGap" : 1,
498 "color" : {
499 "exponent" : 0.5,
500 "fill" : "dark-orange",
501 "mode" : "scheme",
502 "reverse" : false,
503 "scale" : "exponential",
504 "scheme" : "Spectral",
505 "steps" : 64
506 },
507 "exemplars" : {
508 "color" : "rgba(255,0,255,0.7)"
509 },
510 "filterValues" : {
511 "le" : 1e-09
512 },
513 "legend" : {
514 "show" : true
515 },
516 "rowsFrame" : {
517 "layout" : "auto"
518 },
519 "tooltip" : {
520 "show" : true,
521 "yHistogram" : false
522 },
523 "yAxis" : {
524 "axisPlacement" : "left",
525 "reverse" : false
526 }
527 },
528 "pluginVersion" : "10.2.2",
529 "targets" : [
530 {
531 "disableTextWrap" : false,
532 "editorMode" : "builder",
533 "exemplar" : false,
534 "expr" : "changes(prosody_mod_c2s__encrypted_total[$__interval])",
535 "fullMetaSearch" : false,
536 "includeNullMetadata" : true,
537 "interval" : "10m",
538 "legendFormat" : "{{protocol}} {{cipher}}",
539 "range" : true,
540 "refId" : "c2s",
541 "useBackend" : false
542 }
543 ],
544 "title" : "Client-to-Server Connections Encrypted",
545 "type" : "heatmap"
546 },
547 {
548 "fieldConfig" : {
549 "defaults" : {
550 "custom" : {
551 "hideFrom" : {
552 "legend" : false,
553 "tooltip" : false,
554 "viz" : false
555 },
556 "scaleDistribution" : {
557 "type" : "linear"
558 }
559 }
560 },
561 "overrides" : []
562 },
563 "gridPos" : {
564 "h" : 8,
565 "w" : 12,
566 "x" : 12,
567 "y" : 18
568 },
569 "id" : 30,
570 "options" : {
571 "calculate" : false,
572 "cellGap" : 1,
573 "color" : {
574 "exponent" : 0.5,
575 "fill" : "dark-orange",
576 "mode" : "scheme",
577 "reverse" : false,
578 "scale" : "exponential",
579 "scheme" : "Spectral",
580 "steps" : 64
581 },
582 "exemplars" : {
583 "color" : "rgba(255,0,255,0.7)"
584 },
585 "filterValues" : {
586 "le" : 1e-09
587 },
588 "legend" : {
589 "show" : true
590 },
591 "rowsFrame" : {
592 "layout" : "auto"
593 },
594 "tooltip" : {
595 "show" : true,
596 "yHistogram" : false
597 },
598 "yAxis" : {
599 "axisPlacement" : "left",
600 "reverse" : false
601 }
602 },
603 "pluginVersion" : "10.2.2",
604 "targets" : [
605 {
606 "disableTextWrap" : false,
607 "editorMode" : "builder",
608 "exemplar" : false,
609 "expr" : "changes(prosody_mod_s2s__encrypted_total[$__interval])",
610 "format" : "time_series",
611 "fullMetaSearch" : false,
612 "includeNullMetadata" : true,
613 "instant" : false,
614 "interval" : "10m",
615 "legendFormat" : "{{protocol}} {{cipher}}",
616 "range" : true,
617 "refId" : "s2sin",
618 "useBackend" : false
619 }
620 ],
621 "title" : "Server-to-Server Connections Encrypted",
622 "type" : "heatmap"
623 },
624 {
625 "collapsed" : false,
626 "gridPos" : {
627 "h" : 1,
628 "w" : 24,
629 "x" : 0,
630 "y" : 26
631 },
632 "id" : 24,
633 "panels" : [],
634 "title" : "Stream Management",
635 "type" : "row"
636 },
637 {
638 "cards" : {},
639 "color" : {
640 "cardColor" : "#b4ff00",
641 "colorScale" : "sqrt",
642 "colorScheme" : "interpolateRdYlGn",
643 "exponent" : 0.5,
644 "mode" : "spectrum"
645 },
646 "dataFormat" : "tsbuckets",
647 "description" : "How long a session has been hibernating when a client resumes it",
648 "fieldConfig" : {
649 "defaults" : {
650 "custom" : {
651 "hideFrom" : {
652 "legend" : false,
653 "tooltip" : false,
654 "viz" : false
655 },
656 "scaleDistribution" : {
657 "type" : "linear"
658 }
659 }
660 },
661 "overrides" : []
662 },
663 "gridPos" : {
664 "h" : 8,
665 "w" : 12,
666 "x" : 0,
667 "y" : 27
668 },
669 "heatmap" : {},
670 "hideZeroBuckets" : true,
671 "highlightCards" : true,
672 "id" : 14,
673 "legend" : {
674 "show" : true
675 },
676 "options" : {
677 "calculate" : false,
678 "calculation" : {},
679 "cellGap" : 2,
680 "cellValues" : {},
681 "color" : {
682 "exponent" : 0.5,
683 "fill" : "#b4ff00",
684 "mode" : "scheme",
685 "reverse" : false,
686 "scale" : "exponential",
687 "scheme" : "RdYlGn",
688 "steps" : 128
689 },
690 "exemplars" : {
691 "color" : "rgba(255,0,255,0.7)"
692 },
693 "filterValues" : {
694 "le" : 1e-09
695 },
696 "legend" : {
697 "show" : true
698 },
699 "rowsFrame" : {
700 "layout" : "ge"
701 },
702 "showValue" : "never",
703 "tooltip" : {
704 "show" : true,
705 "yHistogram" : false
706 },
707 "yAxis" : {
708 "axisPlacement" : "left",
709 "decimals" : 0,
710 "reverse" : false,
711 "unit" : "clocks"
712 }
713 },
714 "pluginVersion" : "10.2.2",
715 "reverseYBuckets" : false,
716 "targets" : [
717 {
718 "disableTextWrap" : false,
719 "editorMode" : "builder",
720 "exemplar" : true,
721 "expr" : "sum by(le) (changes(prosody_mod_smacks__resumption_age_seconds_bucket{host=\"$virtualhost\"}[$__interval]))",
722 "format" : "heatmap",
723 "fullMetaSearch" : false,
724 "includeNullMetadata" : true,
725 "interval" : "600",
726 "legendFormat" : "{{le}}",
727 "range" : true,
728 "refId" : "A",
729 "useBackend" : false
730 }
731 ],
732 "title" : "Resumption Age",
733 "tooltip" : {
734 "show" : true,
735 "showHistogram" : false
736 },
737 "type" : "heatmap",
738 "xAxis" : {
739 "show" : true
740 },
741 "yAxis" : {
742 "format" : "clocks",
743 "logBase" : 1,
744 "show" : true
745 },
746 "yBucketBound" : "upper"
747 },
748 {
749 "fieldConfig" : {
750 "defaults" : {
751 "color" : {
752 "mode" : "palette-classic"
753 },
754 "custom" : {
755 "axisBorderShow" : false,
756 "axisCenteredZero" : false,
757 "axisColorMode" : "text",
758 "axisLabel" : "",
759 "axisPlacement" : "auto",
760 "barAlignment" : 0,
761 "drawStyle" : "line",
762 "fillOpacity" : 0,
763 "gradientMode" : "none",
764 "hideFrom" : {
765 "legend" : false,
766 "tooltip" : false,
767 "viz" : false
768 },
769 "insertNulls" : false,
770 "lineInterpolation" : "linear",
771 "lineWidth" : 1,
772 "pointSize" : 5,
773 "scaleDistribution" : {
774 "type" : "linear"
775 },
776 "showPoints" : "auto",
777 "spanNulls" : false,
778 "stacking" : {
779 "group" : "A",
780 "mode" : "none"
781 },
782 "thresholdsStyle" : {
783 "mode" : "off"
784 }
785 },
786 "mappings" : [],
787 "thresholds" : {
788 "mode" : "absolute",
789 "steps" : [
790 {
791 "color" : "green",
792 "value" : null
793 },
794 {
795 "color" : "red",
796 "value" : 80
797 }
798 ]
799 },
800 "unit" : "pps"
801 },
802 "overrides" : []
803 },
804 "gridPos" : {
805 "h" : 8,
806 "w" : 12,
807 "x" : 12,
808 "y" : 27
809 },
810 "id" : 16,
811 "options" : {
812 "legend" : {
813 "calcs" : [],
814 "displayMode" : "list",
815 "placement" : "bottom",
816 "showLegend" : true
817 },
818 "tooltip" : {
819 "mode" : "single",
820 "sort" : "none"
821 }
822 },
823 "targets" : [
824 {
825 "editorMode" : "code",
826 "exemplar" : true,
827 "expr" : "rate(prosody_mod_smacks__tx_queued_stanzas_total{host=\"$virtualhost\"}[$__interval])",
828 "interval" : "600",
829 "legendFormat" : "queued on {{host}}",
830 "range" : true,
831 "refId" : "A"
832 },
833 {
834 "editorMode" : "builder",
835 "exemplar" : true,
836 "expr" : "rate(prosody_mod_smacks__tx_acked_stanzas_count{host=\"$virtualhost\"}[$__interval])",
837 "hide" : false,
838 "interval" : "600",
839 "legendFormat" : "acked on {{host}}",
840 "range" : true,
841 "refId" : "B"
842 }
843 ],
844 "title" : "Stanzas",
845 "type" : "timeseries"
846 },
847 {
848 "collapsed" : false,
849 "gridPos" : {
850 "h" : 1,
851 "w" : 24,
852 "x" : 0,
853 "y" : 35
854 },
855 "id" : 28,
856 "panels" : [],
857 "title" : "Mobile optimizations",
858 "type" : "row"
859 },
860 {
861 "fieldConfig" : {
862 "defaults" : {
863 "color" : {
864 "mode" : "palette-classic"
865 },
866 "custom" : {
867 "axisBorderShow" : false,
868 "axisCenteredZero" : false,
869 "axisColorMode" : "text",
870 "axisLabel" : "",
871 "axisPlacement" : "auto",
872 "barAlignment" : 0,
873 "drawStyle" : "points",
874 "fillOpacity" : 0,
875 "gradientMode" : "none",
876 "hideFrom" : {
877 "legend" : false,
878 "tooltip" : false,
879 "viz" : false
880 },
881 "insertNulls" : false,
882 "lineInterpolation" : "linear",
883 "lineWidth" : 1,
884 "pointSize" : 5,
885 "scaleDistribution" : {
886 "type" : "linear"
887 },
888 "showPoints" : "auto",
889 "spanNulls" : false,
890 "stacking" : {
891 "group" : "A",
892 "mode" : "none"
893 },
894 "thresholdsStyle" : {
895 "mode" : "off"
896 }
897 },
898 "mappings" : [],
899 "thresholds" : {
900 "mode" : "absolute",
901 "steps" : [
902 {
903 "color" : "green"
904 },
905 {
906 "color" : "red",
907 "value" : 80
908 }
909 ]
910 },
911 "unit" : "s"
912 },
913 "overrides" : []
914 },
915 "gridPos" : {
916 "h" : 8,
917 "w" : 12,
918 "x" : 0,
919 "y" : 36
920 },
921 "id" : 18,
922 "options" : {
923 "legend" : {
924 "calcs" : [],
925 "displayMode" : "list",
926 "placement" : "bottom",
927 "showLegend" : true
928 },
929 "tooltip" : {
930 "mode" : "single",
931 "sort" : "none"
932 }
933 },
934 "targets" : [
935 {
936 "editorMode" : "builder",
937 "exemplar" : false,
938 "expr" : "histogram_quantile(0.95, sum by(le) (rate(prosody_mod_csi_simple__buffer_hold_seconds_bucket{host=\"$virtualhost\"}[$__rate_interval])))",
939 "format" : "time_series",
940 "instant" : false,
941 "interval" : "",
942 "legendFormat" : "CSI hold seconds",
943 "range" : true,
944 "refId" : "A"
945 }
946 ],
947 "title" : "Hold time",
948 "type" : "timeseries"
949 },
950 {
951 "fieldConfig" : {
952 "defaults" : {
953 "color" : {
954 "mode" : "palette-classic"
955 },
956 "custom" : {
957 "axisBorderShow" : false,
958 "axisCenteredZero" : false,
959 "axisColorMode" : "text",
960 "axisLabel" : "",
961 "axisPlacement" : "auto",
962 "barAlignment" : 0,
963 "drawStyle" : "points",
964 "fillOpacity" : 0,
965 "gradientMode" : "none",
966 "hideFrom" : {
967 "legend" : false,
968 "tooltip" : false,
969 "viz" : false
970 },
971 "insertNulls" : false,
972 "lineInterpolation" : "linear",
973 "lineWidth" : 1,
974 "pointSize" : 5,
975 "scaleDistribution" : {
976 "type" : "linear"
977 },
978 "showPoints" : "auto",
979 "spanNulls" : false,
980 "stacking" : {
981 "group" : "A",
982 "mode" : "none"
983 },
984 "thresholdsStyle" : {
985 "mode" : "off"
986 }
987 },
988 "mappings" : [],
989 "thresholds" : {
990 "mode" : "absolute",
991 "steps" : [
992 {
993 "color" : "green"
994 },
995 {
996 "color" : "red",
997 "value" : 80
998 }
999 ]
1000 },
1001 "unit" : "none"
1002 },
1003 "overrides" : []
1004 },
1005 "gridPos" : {
1006 "h" : 8,
1007 "w" : 12,
1008 "x" : 12,
1009 "y" : 36
1010 },
1011 "id" : 20,
1012 "options" : {
1013 "legend" : {
1014 "calcs" : [],
1015 "displayMode" : "list",
1016 "placement" : "bottom",
1017 "showLegend" : true
1018 },
1019 "tooltip" : {
1020 "mode" : "single",
1021 "sort" : "none"
1022 }
1023 },
1024 "targets" : [
1025 {
1026 "editorMode" : "builder",
1027 "expr" : "histogram_quantile(0.95, sum by(le) (rate(prosody_mod_csi_simple__flush_stanza_count_bucket{host=\"$virtualhost\"}[$__rate_interval])))",
1028 "format" : "time_series",
1029 "legendFormat" : "Stanzas flushed",
1030 "range" : true,
1031 "refId" : "A"
1032 }
1033 ],
1034 "title" : "Flush sizes",
1035 "type" : "timeseries"
1036 },
1037 {
1038 "collapsed" : false,
1039 "gridPos" : {
1040 "h" : 1,
1041 "w" : 24,
1042 "x" : 0,
1043 "y" : 44
1044 },
1045 "id" : 22,
1046 "panels" : [],
1047 "title" : "HTTP Upload",
1048 "type" : "row"
1049 },
1050 {
1051 "cards" : {},
1052 "color" : {
1053 "cardColor" : "#b4ff00",
1054 "colorScale" : "sqrt",
1055 "colorScheme" : "interpolateRdYlGn",
1056 "exponent" : 0.5,
1057 "max" : 5,
1058 "min" : 0,
1059 "mode" : "opacity"
1060 },
1061 "dataFormat" : "tsbuckets",
1062 "fieldConfig" : {
1063 "defaults" : {
1064 "custom" : {
1065 "hideFrom" : {
1066 "legend" : false,
1067 "tooltip" : false,
1068 "viz" : false
1069 },
1070 "scaleDistribution" : {
1071 "type" : "linear"
1072 }
1073 }
1074 },
1075 "overrides" : []
1076 },
1077 "gridPos" : {
1078 "h" : 8,
1079 "w" : 18,
1080 "x" : 0,
1081 "y" : 45
1082 },
1083 "heatmap" : {},
1084 "hideZeroBuckets" : false,
1085 "highlightCards" : true,
1086 "id" : 8,
1087 "legend" : {
1088 "show" : false
1089 },
1090 "options" : {
1091 "calculate" : false,
1092 "calculation" : {},
1093 "cellGap" : 2,
1094 "cellValues" : {},
1095 "color" : {
1096 "exponent" : 0.5,
1097 "fill" : "#b4ff00",
1098 "max" : 5,
1099 "min" : 0,
1100 "mode" : "opacity",
1101 "reverse" : false,
1102 "scale" : "exponential",
1103 "scheme" : "Oranges",
1104 "steps" : 128
1105 },
1106 "exemplars" : {
1107 "color" : "rgba(255,0,255,0.7)"
1108 },
1109 "filterValues" : {
1110 "le" : 1e-09
1111 },
1112 "legend" : {
1113 "show" : false
1114 },
1115 "rowsFrame" : {
1116 "layout" : "ge"
1117 },
1118 "showValue" : "never",
1119 "tooltip" : {
1120 "show" : true,
1121 "yHistogram" : false
1122 },
1123 "yAxis" : {
1124 "axisPlacement" : "left",
1125 "reverse" : false,
1126 "unit" : "bytes"
1127 }
1128 },
1129 "pluginVersion" : "10.2.0",
1130 "reverseYBuckets" : false,
1131 "targets" : [
1132 {
1133 "disableTextWrap" : false,
1134 "editorMode" : "builder",
1135 "exemplar" : true,
1136 "expr" : "sum by(le) (changes(prosody_mod_http_file_share__upload_bytes_bucket{host=\"$virtualhost\"}[$__interval]))",
1137 "format" : "heatmap",
1138 "fullMetaSearch" : false,
1139 "includeNullMetadata" : true,
1140 "interval" : "3600s",
1141 "intervalFactor" : 1,
1142 "legendFormat" : "{{le}}",
1143 "range" : true,
1144 "refId" : "A",
1145 "useBackend" : false
1146 }
1147 ],
1148 "title" : "Upload sizes",
1149 "tooltip" : {
1150 "show" : true,
1151 "showHistogram" : false
1152 },
1153 "type" : "heatmap",
1154 "xAxis" : {
1155 "show" : true
1156 },
1157 "yAxis" : {
1158 "format" : "bytes",
1159 "logBase" : 1,
1160 "show" : true
1161 },
1162 "yBucketBound" : "upper"
1163 },
1164 {
1165 "fieldConfig" : {
1166 "defaults" : {
1167 "color" : {
1168 "mode" : "continuous-GrYlRd"
1169 },
1170 "mappings" : [],
1171 "max" : 10737418240,
1172 "min" : 0,
1173 "thresholds" : {
1174 "mode" : "absolute",
1175 "steps" : [
1176 {
1177 "color" : "green"
1178 }
1179 ]
1180 },
1181 "unit" : "bytes"
1182 },
1183 "overrides" : []
1184 },
1185 "gridPos" : {
1186 "h" : 8,
1187 "w" : 6,
1188 "x" : 18,
1189 "y" : 45
1190 },
1191 "id" : 10,
1192 "options" : {
1193 "minVizHeight" : 75,
1194 "minVizWidth" : 75,
1195 "orientation" : "auto",
1196 "reduceOptions" : {
1197 "calcs" : [
1198 "lastNotNull"
1199 ],
1200 "fields" : "",
1201 "values" : false
1202 },
1203 "showThresholdLabels" : false,
1204 "showThresholdMarkers" : false,
1205 "text" : {}
1206 },
1207 "pluginVersion" : "10.2.0",
1208 "targets" : [
1209 {
1210 "editorMode" : "builder",
1211 "exemplar" : true,
1212 "expr" : "prosody_mod_http_file_share__total_storage_bytes{host=\"$virtualhost\"}",
1213 "instant" : false,
1214 "interval" : "",
1215 "legendFormat" : "",
1216 "refId" : "A"
1217 }
1218 ],
1219 "title" : "Total uploads",
1220 "type" : "gauge"
1221 }
1222 ],
1223 "refresh" : "5m",
1224 "schemaVersion" : 38,
1225 "tags" : [
1226 "prosody",
1227 "xmpp"
1228 ],
1229 "templating" : {
1230 "list" : [
1231 {
1232 "definition" : "label_values(host)",
1233 "hide" : 0,
1234 "includeAll" : false,
1235 "label" : "VirtualHost",
1236 "multi" : false,
1237 "name" : "virtualhost",
1238 "options" : [],
1239 "query" : {
1240 "query" : "label_values(host)",
1241 "refId" : "PrometheusVariableQueryEditor-VariableQuery"
1242 },
1243 "refresh" : 1,
1244 "regex" : "",
1245 "skipUrlSync" : false,
1246 "sort" : 0,
1247 "type" : "query"
1248 }
1249 ]
1250 },
1251 "time" : {
1252 "from" : "now-2d",
1253 "to" : "now"
1254 },
1255 "timepicker" : {},
1256 "timezone" : "",
1257 "title" : "Prosody",
1258 "uid" : "y1Onovt7z",
1259 "version" : 91,
1260 "weekStart" : ""
1261 }