-
Global information
- Generated on Thu Apr 30 06:05:57 2026
- Log file: /var/log/postgresql/postgresql-2026-03-25_000000.csv, ..., /var/log/postgresql/postgresql-2026-04-30_000000.csv
- Parsed 401,022 log entries in 5m56s
- Log start from 2026-04-09 00:00:01 to 2026-04-09 23:59:42
-
Overview
Global Stats
- 69 Number of unique normalized queries
- 24,933 Number of queries
- 14h26m18s Total query duration
- 2026-04-09 00:00:01 First query
- 2026-04-09 23:59:01 Last query
- 18 queries/s at 2026-04-09 20:11:01 Query peak
- 14h26m18s Total query duration
- 0ms Prepare/parse total duration
- 0ms Bind total duration
- 14h26m18s Execute total duration
- 45 Number of events
- 15 Number of unique normalized events
- 13 Max number of times the same event was reported
- 0 Number of cancellation
- 91 Total number of automatic vacuums
- 201 Total number of automatic analyzes
- 529 Number temporary file
- 171.07 MiB Max size of temporary file
- 45.89 MiB Average size of temporary file
- 40,407 Total number of sessions
- 8 sessions at 2026-04-09 09:19:38 Session peak
- 2h2m Total duration of sessions
- 181ms Average duration of sessions
- 0 Average queries per session
- 1s286ms Average queries duration per session
- 0ms Average idle time per session
- 40,407 Total number of connections
- 53 connections/s at 2026-04-09 09:09:39 Connection peak
- 3 Total number of databases
SQL Traffic
Key values
- 18 queries/s Query Peak
- 2026-04-09 20:11:01 Date
SELECT Traffic
Key values
- 2 queries/s Query Peak
- 2026-04-09 09:54:08 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 18 queries/s Query Peak
- 2026-04-09 20:11:01 Date
Queries duration
Key values
- 14h26m18s Total query duration
Prepared queries ratio
Key values
- 0.00 Ratio of bind vs prepare
- 0.00 % Ratio between prepared and "usual" statements
General Activity
↑ Back to the top of the General Activity tableDay Hour Count Min duration Max duration Avg duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 09 00 1,031 0ms 2s993ms 2s530ms 52s561ms 53s392ms 53s801ms 01 1,028 954ms 3s11ms 1s944ms 51s195ms 53s415ms 54s158ms 02 1,020 954ms 954ms 954ms 16s234ms 16s234ms 16s234ms 03 1,020 954ms 954ms 954ms 16s234ms 16s234ms 16s234ms 04 1,020 954ms 954ms 954ms 16s234ms 16s234ms 16s234ms 05 1,020 954ms 954ms 954ms 16s234ms 16s234ms 16s234ms 06 1,037 527ms 1s845ms 883ms 18s267ms 22s380ms 24s197ms 07 1,024 776ms 1s891ms 1s445ms 29s724ms 31s857ms 33s819ms 08 1,026 679ms 1s748ms 1s29ms 29s724ms 29s724ms 31s663ms 09 1,076 565ms 4s368ms 2s339ms 1m2s 1m11s 1m12s 10 1,065 665ms 3s453ms 2s879ms 57s929ms 58s717ms 1m1s 11 1,044 2s959ms 3s173ms 3s84ms 56s635ms 56s918ms 57s116ms 12 1,065 524ms 3s279ms 2s670ms 56s800ms 57s303ms 58s671ms 13 1,055 670ms 3s211ms 2s876ms 56s483ms 56s821ms 57s713ms 14 1,033 671ms 1s263ms 747ms 21s477ms 21s477ms 25s716ms 15 1,043 603ms 3s795ms 2s94ms 55s201ms 57s954ms 1m6s 16 1,037 668ms 3s17ms 1s267ms 51s298ms 51s298ms 54s127ms 17 1,033 679ms 4s33ms 2s712ms 1m7s 1m8s 1m11s 18 1,035 2s923ms 3s738ms 3s102ms 1m3s 1m3s 1m6s 19 1,042 897ms 3s570ms 2s877ms 57s963ms 1m1s 1m1s 20 1,038 2s931ms 3s280ms 3s111ms 59s411ms 1m 1m2s 21 1,040 834ms 3s901ms 3s54ms 1m1s 1m6s 1m7s 22 1,044 569ms 3s267ms 2s714ms 57s716ms 1m1s 1m1s 23 1,057 569ms 7s393ms 2s665ms 1m 1m5s 2m11s Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 09 00 0 0 0ms 0ms 0ms 0ms 01 0 0 0ms 0ms 0ms 0ms 02 0 0 0ms 0ms 0ms 0ms 03 0 0 0ms 0ms 0ms 0ms 04 0 0 0ms 0ms 0ms 0ms 05 0 0 0ms 0ms 0ms 0ms 06 17 0 911ms 0ms 1s603ms 2s611ms 07 0 0 0ms 0ms 0ms 0ms 08 6 0 860ms 0ms 0ms 1s784ms 09 28 0 1s160ms 0ms 2s31ms 7s384ms 10 17 0 723ms 0ms 0ms 4s198ms 11 0 0 0ms 0ms 0ms 0ms 12 19 0 924ms 0ms 1s615ms 2s99ms 13 12 0 714ms 0ms 0ms 2s848ms 14 13 0 750ms 0ms 0ms 2s850ms 15 4 0 720ms 0ms 0ms 0ms 16 16 0 723ms 0ms 0ms 2s872ms 17 0 0 0ms 0ms 0ms 0ms 18 0 0 0ms 0ms 0ms 0ms 19 0 0 0ms 0ms 0ms 0ms 20 0 0 0ms 0ms 0ms 0ms 21 0 0 0ms 0ms 0ms 0ms 22 4 0 1s311ms 0ms 0ms 1s794ms 23 1 7 1s184ms 0ms 0ms 798ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 09 00 0 0 0 0 0ms 0ms 0ms 0ms 01 0 1 0 0 954ms 0ms 0ms 0ms 02 0 0 0 0 0ms 0ms 0ms 0ms 03 0 0 0 0 0ms 0ms 0ms 0ms 04 0 0 0 0 0ms 0ms 0ms 0ms 05 0 0 0 0 0ms 0ms 0ms 0ms 06 0 0 0 0 0ms 0ms 0ms 0ms 07 0 0 0 0 0ms 0ms 0ms 0ms 08 0 0 0 0 0ms 0ms 0ms 0ms 09 0 0 0 0 0ms 0ms 0ms 0ms 10 0 0 0 0 0ms 0ms 0ms 0ms 11 0 0 0 0 0ms 0ms 0ms 0ms 12 0 0 0 0 0ms 0ms 0ms 0ms 13 0 0 0 0 0ms 0ms 0ms 0ms 14 0 0 0 0 0ms 0ms 0ms 0ms 15 0 0 0 0 0ms 0ms 0ms 0ms 16 0 0 0 0 0ms 0ms 0ms 0ms 17 0 0 0 0 0ms 0ms 0ms 0ms 18 0 0 0 0 0ms 0ms 0ms 0ms 19 0 0 0 0 0ms 0ms 0ms 0ms 20 0 0 0 0 0ms 0ms 0ms 0ms 21 0 0 0 0 0ms 0ms 0ms 0ms 22 0 0 0 0 0ms 0ms 0ms 0ms 23 0 0 0 0 0ms 0ms 0ms 0ms Day Hour Prepare Bind Bind/Prepare Percentage of prepare Apr 09 00 0 11 11.00 0.00% 01 0 6 6.00 0.00% 02 0 0 0.00 0.00% 03 0 0 0.00 0.00% 04 0 0 0.00 0.00% 05 0 0 0.00 0.00% 06 0 0 0.00 0.00% 07 0 0 0.00 0.00% 08 0 0 0.00 0.00% 09 0 18 18.00 0.00% 10 0 23 23.00 0.00% 11 0 24 24.00 0.00% 12 0 24 24.00 0.00% 13 0 23 23.00 0.00% 14 0 0 0.00 0.00% 15 0 17 17.00 0.00% 16 0 1 1.00 0.00% 17 0 11 11.00 0.00% 18 0 15 15.00 0.00% 19 0 20 20.00 0.00% 20 0 18 18.00 0.00% 21 0 18 18.00 0.00% 22 0 18 18.00 0.00% 23 0 22 22.00 0.00% Day Hour Count Average / Second Apr 09 00 857 0.24/s 01 898 0.25/s 02 544 0.15/s 03 544 0.15/s 04 544 0.15/s 05 561 0.16/s 06 1,531 0.43/s 07 1,462 0.41/s 08 1,164 0.32/s 09 3,740 1.04/s 10 4,229 1.17/s 11 2,274 0.63/s 12 3,836 1.07/s 13 2,788 0.77/s 14 1,729 0.48/s 15 1,895 0.53/s 16 1,121 0.31/s 17 1,254 0.35/s 18 1,155 0.32/s 19 1,780 0.49/s 20 1,368 0.38/s 21 1,719 0.48/s 22 1,510 0.42/s 23 1,904 0.53/s Day Hour Count Average Duration Average idle time Apr 09 00 857 203ms 0ms 01 898 206ms 0ms 02 544 231ms 0ms 03 544 231ms 0ms 04 544 233ms 0ms 05 561 228ms 0ms 06 1,531 201ms 0ms 07 1,461 170ms 0ms 08 1,165 203ms 0ms 09 3,740 189ms 0ms 10 4,229 170ms 0ms 11 2,274 166ms 0ms 12 3,836 151ms 0ms 13 2,788 147ms 0ms 14 1,729 144ms 0ms 15 1,895 176ms 0ms 16 1,121 204ms 0ms 17 1,254 194ms 0ms 18 1,155 194ms 0ms 19 1,780 184ms 0ms 20 1,368 188ms 0ms 21 1,719 184ms 0ms 22 1,510 194ms 0ms 23 1,904 198ms 0ms -
Connections
Established Connections
Key values
- 53 connections Connection Peak
- 2026-04-09 09:09:39 Date
Connections per database
Key values
- zemm_monitoring Main Database
- 40,407 connections Total
Connections per user
Key values
- labanimal Main User
- 40,407 connections Total
-
Sessions
Simultaneous sessions
Key values
- 8 sessions Session Peak
- 2026-04-09 09:19:38 Date
Histogram of session times
Key values
- 37,632 0-500ms duration
Sessions per database
Key values
- zemm_monitoring Main Database
- 40,407 sessions Total
Sessions per user
Key values
- labanimal Main User
- 40,407 sessions Total
Sessions per host
Key values
- ::1 Main Host
- 40,407 sessions Total
Sessions per application
Key values
- Main Application
- 40,407 sessions Total
Application Count Total Duration Average Duration 33,764 1h44m8s 185ms _backend_cage_autocomplete_api.php_q_2025_limit_12_zemm_produkt 19 509ms 26ms _backend_cage_autocomplete_api.php_q_55-065_limit_12_zemm_produ 19 609ms 32ms _backend_wean_api.php_litter_id_10130227_zemm_produktiv_7_local 95 14s167ms 149ms _backend_wean_api.php_litter_id_10130236_zemm_produktiv_7_local 95 14s522ms 152ms _backend_wean_api.php_litter_id_10130257_zemm_produktiv_7_local 114 17s482ms 153ms _backend_wean_api.php_litter_id_10131491_zemm_produktiv_8_local 2 293ms 146ms _backend_wean_api.php_litter_id_10131673_zemm_produktiv_8_local 2 286ms 143ms _backend_wean_api.php_litter_id_10131675_zemm_produktiv_8_local 3 433ms 144ms _backend_wean_api.php_litter_id_10131735_zemm_produktiv_8_local 2 292ms 146ms _backend_wean_api.php_litter_id_10131736_zemm_produktiv_8_local 2 296ms 148ms _backend_wean_api.php_litter_id_10131737_zemm_produktiv_8_local 2 289ms 144ms _backend_wean_api.php_litter_id_10131739_zemm_produktiv_8_local 2 276ms 138ms _backend_wean_api.php_litter_id_10131740_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10131741_zemm_produktiv_8_local 2 284ms 142ms _backend_wean_api.php_litter_id_10131742_zemm_produktiv_8_local 2 306ms 153ms _backend_wean_api.php_litter_id_10131743_zemm_produktiv_8_local 2 286ms 143ms _backend_wean_api.php_litter_id_10131792_zemm_produktiv_8_local 6 855ms 142ms _backend_wean_api.php_litter_id_10131804_zemm_produktiv_8_local 2 291ms 145ms _backend_wean_api.php_litter_id_10131808_zemm_produktiv_8_local 2 286ms 143ms _backend_wean_api.php_litter_id_10131814_zemm_produktiv_8_local 2 281ms 140ms _backend_wean_api.php_litter_id_10131815_zemm_produktiv_8_local 2 288ms 144ms _backend_wean_api.php_litter_id_10131816_zemm_produktiv_8_local 2 286ms 143ms _backend_wean_api.php_litter_id_10131847_zemm_produktiv_8_local 2 279ms 139ms _backend_wean_api.php_litter_id_10131848_zemm_produktiv_8_local 2 284ms 142ms _backend_wean_api.php_litter_id_10131849_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10131850_zemm_produktiv_8_local 2 281ms 140ms _backend_wean_api.php_litter_id_10131851_zemm_produktiv_8_local 2 283ms 141ms _backend_wean_api.php_litter_id_10131855_zemm_produktiv_8_local 2 285ms 142ms _backend_wean_api.php_litter_id_10131889_zemm_produktiv_8_local 2 285ms 142ms _backend_wean_api.php_litter_id_10131948_zemm_produktiv_8_local 3 423ms 141ms _backend_wean_api.php_litter_id_10131984_zemm_produktiv_8_local 2 278ms 139ms _backend_wean_api.php_litter_id_10132004_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10132099_zemm_produktiv_8_local 2 285ms 142ms _backend_wean_api.php_litter_id_10132127_zemm_produktiv_8_local 1 146ms 146ms _backend_wean_api.php_litter_id_10132130_zemm_produktiv_8_local 3 422ms 140ms _backend_wean_api.php_zemm_produktiv_8_localhost_5432 1 405ms 405ms _desktop__zemm_produktiv_7_localhost_5432 21 1s439ms 68ms _desktop__zemm_produktiv_8_localhost_5432 9 566ms 62ms _desktop_index.php_command_animals_breedings_subcommand_select_ 20 1s145ms 57ms _desktop_index.php_command_animals_create_subcommand_init_zemm_ 20 1s617ms 80ms _desktop_index.php_command_animals_edit_subcommand_init_id_1027 1 100ms 100ms _desktop_index.php_command_animals_edit_subcommand_init_id_1029 1 102ms 102ms _desktop_index.php_command_animals_edit_subcommand_link_init_va 19 2s244ms 118ms _desktop_index.php_command_animals_edit_subcommand_m_init_scree 19 2s467ms 129ms _desktop_index.php_command_animals_litters_edit_subcommand_init 19 2s143ms 112ms _desktop_index.php_command_animals_litters_edit_subcommand_m_in 19 6s303ms 331ms _desktop_index.php_command_animals_litters_subcommand_found_val 3 136ms 45ms _desktop_index.php_command_animals_litters_subcommand_init_zemm 1 47ms 47ms _desktop_index.php_command_animals_litters_subcommand_select_ze 20 1s21ms 51ms _desktop_index.php_command_animals_subcommand_init_zemm_produkt 28 1s269ms 45ms _desktop_index.php_command_animals_subcommand_select_zemm_produ 20 1s374ms 68ms _desktop_index.php_command_documents_subcommand_init_zemm_produ 1 47ms 47ms _desktop_index.php_command_home_subcommand_init_zemm_produktiv_ 1 122ms 122ms _desktop_index.php_command_import_dashboard_subcommand_conflict 6 416ms 69ms _desktop_index.php_command_import_dashboard_subcommand_init_zem 2 106ms 53ms _desktop_index.php_command_import_dashboard_subcommand_resolve_ 2 160ms 80ms _desktop_index.php_command_login_subcommand_init_zemm_produktiv 1,748 54s445ms 31ms _desktop_index.php_command_reports_subcommand_animals_per_user_ 6 739ms 123ms _desktop_index.php_command_reports_subcommand_annual_reports_ze 1 40ms 40ms _desktop_index.php_command_reports_subcommand_fates_zemm_produk 19 2s498ms 131ms _desktop_index.php_command_reports_subcommand_init_zemm_produkt 39 11s774ms 301ms _desktop_index.php_command_reports_subcommand_task_status_zemm_ 2 250ms 125ms _desktop_index.php_command_tasks_subcommand_edit_id_10134267_ze 19 1s762ms 92ms _desktop_index.php_command_tasks_subcommand_edit_id_10139979_ze 1 91ms 91ms _desktop_index.php_command_tasks_subcommand_edit_id_10140114_ze 1 92ms 92ms _desktop_index.php_command_tasks_subcommand_edit_id_10140458_ze 1 89ms 89ms _desktop_index.php_command_tasks_subcommand_edit_id_10141070_ze 1 89ms 89ms _desktop_index.php_command_tasks_subcommand_edit_id_10141898_ze 3 259ms 86ms _desktop_index.php_command_tasks_subcommand_edit_id_10142097_ze 2 181ms 90ms _desktop_index.php_command_tasks_subcommand_edit_id_10142124_ze 1 89ms 89ms _desktop_index.php_command_tasks_subcommand_edit_id_10142131_ze 1 95ms 95ms _desktop_index.php_command_tasks_subcommand_edit_id_10142133_ze 2 182ms 91ms _desktop_index.php_command_tasks_subcommand_edit_id_10142135_ze 5 471ms 94ms _desktop_index.php_command_tasks_subcommand_edit_id_10142136_ze 1 87ms 87ms _desktop_index.php_command_tasks_subcommand_found_val1_332_val2 2 83ms 41ms _desktop_index.php_command_tasks_subcommand_init_search_zemm_pr 19 968ms 50ms _desktop_index.php_command_tasks_subcommand_open_zemm_produktiv 57 4s228ms 74ms _desktop_index.php_command_tasks_subcommand_search_zemm_produkt 24 1s126ms 46ms _desktop_index.php_m_action_animals_edit_3Alink_init_row_animal 1 47ms 47ms _desktop_index.php_name_Genotypisierungsproben_20genommen_instr 2 193ms 96ms _desktop_index.php_name_Tiertransport_20durch_20das_20ZEMM_inst 1 82ms 82ms _desktop_index.php_name_Transfer_20in_20Laborbereich_20des_20ZE 2 133ms 66ms _desktop_index.php_search_status_2_no_subtasks_true_command_tas 1 41ms 41ms _desktop_index.php_search_status_5_no_subtasks_true_command_tas 3 522ms 174ms _desktop_index.php_search_status__25_issued_from_2026-01-01_iss 11 1s165ms 105ms _desktop_index.php_unweaned_only__25_val4_animals_litters_searc 1 83ms 83ms _desktop_index.php_unweaned_only_true_val4_animals_litters_sear 1 73ms 73ms _desktop_index.php_view_animal_name_on_view_animal_id_on_animal 3 774ms 258ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b 19 9s161ms 482ms _desktop_index.php_zemm_produktiv_7_localhost_5432 389 1m43s 265ms _desktop_index.php_zemm_produktiv_8_localhost_5432 3,355 12m28s 223ms backend:zemm_produktiv_8@localhost 31 7s803ms 251ms expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 979ms 979ms pg_dump 1 13s951ms 13s951ms psql 177 16s197ms 91ms taskscron:zemm_produktiv_7@zemm.fbiscience.eu 24 656ms 27ms taskscron:zemm_produktiv_8@h2940066.stratoserver.net:5432 24 8s681ms 361ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 28,262 buffers Checkpoint Peak
- 2026-04-09 10:18:00 Date
- 269.874 seconds Highest write time
- 0.387 seconds Sync time
Checkpoints Wal files
Key values
- 5 files Wal files usage Peak
- 2026-04-09 09:43:00 Date
Checkpoints distance
Key values
- 183.15 Mo Distance Peak
- 2026-04-09 01:37:55 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Apr 09 00 3,459 346.794s 0.088s 346.943s 01 21,855 585.178s 0.097s 585.336s 02 2,714 272.184s 0.086s 272.318s 03 2,524 253.146s 0.083s 253.289s 04 2,568 257.546s 0.082s 257.681s 05 2,978 298.632s 0.09s 298.769s 06 8,699 870.351s 0.229s 870.639s 07 3,803 381.101s 0.157s 381.31s 08 19,721 913.297s 0.191s 913.544s 09 40,966 1,260.308s 0.306s 1,260.676s 10 49,248 1,258.012s 0.669s 1,258.792s 11 4,714 474.541s 0.176s 474.77s 12 34,626 1,243.216s 0.304s 1,243.582s 13 5,553 558.749s 0.196s 558.997s 14 5,160 517.211s 0.21s 517.473s 15 5,956 596.251s 0.166s 596.474s 16 5,346 535.484s 0.153s 535.69s 17 5,414 542.311s 0.145s 542.504s 18 3,805 381.453s 0.1s 381.605s 19 4,170 417.938s 0.113s 418.101s 20 3,441 345.009s 0.105s 345.166s 21 5,571 558.146s 0.13s 558.328s 22 3,756 376.334s 0.098s 376.489s 23 4,766 477.399s 0.144s 477.599s Day Hour Added Removed Recycled Synced files Longest sync Average sync Apr 09 00 0 0 1 448 0.002s 0.012s 01 0 0 7 502 0.003s 0.012s 02 0 0 1 455 0.001s 0.012s 03 0 0 1 433 0.002s 0.012s 04 0 0 0 426 0.001s 0.012s 05 0 0 1 464 0.002s 0.012s 06 0 0 3 1,245 0.005s 0.012s 07 0 0 1 802 0.004s 0.012s 08 0 0 7 1,081 0.002s 0.012s 09 0 0 13 1,431 0.027s 0.011s 10 0 0 8 1,709 0.120s 0.016s 11 0 0 2 893 0.002s 0.012s 12 0 0 9 1,571 0.014s 0.012s 13 0 0 2 1,046 0.003s 0.012s 14 0 0 1 1,116 0.003s 0.012s 15 0 0 2 870 0.004s 0.012s 16 0 0 2 771 0.003s 0.012s 17 0 0 1 671 0.003s 0.012s 18 0 0 1 436 0.002s 0.012s 19 0 0 1 513 0.002s 0.012s 20 0 0 1 447 0.003s 0.012s 21 0 0 2 582 0.005s 0.012s 22 0 0 1 510 0.002s 0.012s 23 0 0 1 682 0.004s 0.012s Day Hour Count Avg time (sec) Apr 09 00 0 0s 01 0 0s 02 0 0s 03 0 0s 04 0 0s 05 0 0s 06 0 0s 07 0 0s 08 0 0s 09 0 0s 10 0 0s 11 0 0s 12 0 0s 13 0 0s 14 0 0s 15 0 0s 16 0 0s 17 0 0s 18 0 0s 19 0 0s 20 0 0s 21 0 0s 22 0 0s 23 0 0s Day Hour Mean distance Mean estimate Apr 09 00 1,357.17 kB 1,802.75 kB 01 9,168.17 kB 38,230.00 kB 02 1,215.42 kB 30,651.00 kB 03 1,152.08 kB 9,514.17 kB 04 1,175.25 kB 3,527.83 kB 05 1,254.08 kB 1,880.33 kB 06 3,307.58 kB 4,779.67 kB 07 1,573.67 kB 4,116.75 kB 08 9,339.00 kB 40,912.92 kB 09 19,237.45 kB 44,774.64 kB 10 10,798.31 kB 41,515.85 kB 11 1,755.17 kB 13,055.33 kB 12 12,918.92 kB 41,933.67 kB 13 2,097.08 kB 19,504.00 kB 14 1,982.25 kB 7,072.67 kB 15 2,086.25 kB 4,815.67 kB 16 2,814.75 kB 7,211.58 kB 17 1,935.75 kB 8,187.75 kB 18 1,426.42 kB 3,441.50 kB 19 1,718.92 kB 2,877.58 kB 20 1,358.08 kB 1,990.17 kB 21 1,976.50 kB 2,682.08 kB 22 1,537.67 kB 2,886.00 kB 23 1,894.67 kB 2,956.08 kB -
Temporary Files
Size of temporary files
Key values
- 184.66 MiB Temp Files size Peak
- 2026-04-09 09:09:43 Date
Number of temporary files
Key values
- 4 per second Temp Files Peak
- 2026-04-09 15:25:44 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Apr 09 00 11 504.12 MiB 45.83 MiB 01 6 275.20 MiB 45.87 MiB 02 0 0 0 03 0 0 0 04 0 0 0 05 0 0 0 06 0 0 0 07 0 0 0 08 0 0 0 09 36 1.61 GiB 45.81 MiB 10 38 1.70 GiB 45.88 MiB 11 44 1.96 GiB 45.61 MiB 12 49 2.18 GiB 45.63 MiB 13 45 2.00 GiB 45.59 MiB 14 0 0 0 15 27 1.20 GiB 45.65 MiB 16 1 45.52 MiB 45.52 MiB 17 31 1.38 GiB 45.55 MiB 18 28 1.25 GiB 45.57 MiB 19 48 2.14 GiB 45.59 MiB 20 39 1.73 GiB 45.53 MiB 21 41 1.83 GiB 45.58 MiB 22 38 1.69 GiB 45.62 MiB 23 47 2.22 GiB 48.43 MiB Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 260 11.58 GiB 45.48 MiB 46.34 MiB 45.59 MiB with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at <= '2026-04-09 17:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 23:56:33 Duration: 7s393ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s368ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s192ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Queries generating the largest temporary files
Rank Size Query 1 46.34 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 13:19:40 - Queryid: 2612315 ]
2 46.30 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 09:09:43 - Queryid: 2448396 ]
3 46.27 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 13:17:40 - Queryid: 2611606 ]
4 46.17 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 23:57:05 - Queryid: 2893914 ]
5 46.17 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 09:59:39 - Queryid: 2481837 ]
6 46.16 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 10:09:39 - Queryid: 2498727 ]
7 46.15 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 21:36:05 - Queryid: 2814233 ]
8 46.15 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 09:59:39 - Queryid: 2481837 ]
9 46.15 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 21:36:05 - Queryid: 2814233 ]
10 46.14 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 17:28:00 - Queryid: 2700827 ]
11 46.11 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 23:55:46 - Queryid: 2893152 ]
12 46.09 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 09:19:39 - Queryid: 2451975 ]
13 46.07 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 21:41:05 - Queryid: 2823614 ]
14 46.05 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 10:54:40 - Queryid: 2542913 ]
15 46.05 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 12:32:39 - Queryid: 2578788 ]
16 46.05 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 12:29:40 - Queryid: 2577721 ]
17 46.04 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 10:37:38 - Queryid: 2523459 ]
18 46.04 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 23:57:05 - Queryid: 2893914 ]
19 46.03 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 09:57:36 - Queryid: 2481031 ]
20 46.02 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-09 21:41:35 - Queryid: 2823853 ]
-
Vacuums
Vacuums / Analyzes Distribution
Key values
- 6.54 sec Highest CPU-cost vacuum
Table observability.app_events
Database zemm_monitoring - 2026-04-09 10:12:19 Date
- 0 sec Highest CPU-cost analyze
Table
Database zemm_monitoring - Date
Average Autovacuum Duration
Key values
- 6.54 sec Highest CPU-cost vacuum
Table observability.app_events
Database zemm_monitoring - 2026-04-09 10:12:19 Date
Analyzes per table
Key values
- pg_catalog.pg_type (49) Main table analyzed (database zemm_produktiv_8)
- 201 analyzes Total
Table Number of analyzes zemm_produktiv_8.pg_catalog.pg_type 49 zemm_produktiv_8.pg_catalog.pg_attribute 37 zemm_produktiv_8.pg_catalog.pg_class 27 zemm_produktiv_8.pg_catalog.pg_depend 24 zemm_produktiv_8.public.breedingssires 9 zemm_produktiv_8.public.breedingsdams 9 zemm_monitoring.observability.uptime_checks 8 zemm_produktiv_8.public.cages_search_mview 3 zemm_monitoring.observability.metrics_timeseries 3 zemm_produktiv_7.pg_catalog.pg_type 3 zemm_produktiv_7.pg_catalog.pg_shdepend 2 zemm_produktiv_7.pg_catalog.pg_class 2 zemm_produktiv_7.public.import_validation_issues 2 fbi_unibi.pg_catalog.pg_shdepend 2 zemm_test_3.pg_catalog.pg_shdepend 2 zemm_produktiv_7.pg_catalog.pg_attribute 2 zemm_produktiv_8.public.users 2 zemm_produktiv_8.public.tmptasks 2 fbi_unire.pg_catalog.pg_shdepend 1 zemm_monitoring.observability.phpfpm_counters 1 zemm_produktiv_7.public.users 1 zemm_monitoring.observability.app_events 1 zemm_produktiv_8.public.login_tracker 1 zemm_monitoring.observability.db_top_queries 1 zemm_produktiv_7.public.cages_search_mview 1 zemm_produktiv_8.pg_catalog.pg_shdepend 1 zemm_produktiv_7.pg_catalog.pg_depend 1 zemm_produktiv_8.public.monitoring_session_activity 1 zemm_produktiv_7.public.import_column_mappings 1 postgres.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.tasks 1 Total 201 Vacuums per table
Key values
- pg_catalog.pg_type (18) Main table vacuumed on database zemm_produktiv_8
- 91 vacuums Total
Index Buffer usage Skipped WAL usage Frozen Table Vacuums scans hits misses dirtied pins frozen records full page bytes pages tuples zemm_produktiv_8.pg_catalog.pg_type 18 18 0 0 0 0 0 944 200 216,610 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 12 12 0 0 0 0 0 1,561 524 346,504 0 0 zemm_produktiv_8.pg_catalog.pg_class 9 9 0 0 0 0 0 885 275 320,094 3 3 zemm_produktiv_8.public.breedingssires 9 0 0 0 0 0 0 1,334 183 589,008 0 0 zemm_produktiv_8.public.breedingsdams 9 0 0 0 0 0 0 1,782 231 784,942 0 0 zemm_produktiv_8.pg_catalog.pg_depend 6 6 0 0 0 0 0 746 212 262,990 0 0 zemm_monitoring.pg_toast.pg_toast_67431 6 0 0 0 0 0 0 4,890 1,638 3,723,078 1,616 9,696 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 0 0 0 0 0 728 178 974,851 43 146 fbi_ci_db.pg_catalog.pg_shdepend 4 4 0 0 0 0 0 356 106 212,733 0 0 zemm_monitoring.observability.uptime_checks 2 0 0 0 0 0 0 257 234 359,128 11 220 zemm_monitoring.pg_toast.pg_toast_2619 1 1 0 0 0 0 0 125 30 186,383 9 21 zemm_monitoring.pg_toast.pg_toast_67411 1 0 0 0 0 0 0 5,218 1,592 8,026,049 1,588 7,598 zemm_produktiv_8.public.users 1 1 0 0 0 0 0 154 77 185,378 46 116 zemm_produktiv_7.public.import_validation_issues 1 1 0 0 0 0 0 10 5 3,662 0 0 zemm_produktiv_8.public.tasks 1 1 0 0 0 0 0 44,806 62 3,346,824 0 0 zemm_produktiv_8.public.cages_search_mview 1 1 0 0 0 0 0 603 320 1,078,603 33 214 zemm_monitoring.observability.system_metrics 1 0 0 0 0 0 0 1,022 1,021 1,732,596 0 0 zemm_produktiv_7.pg_catalog.pg_attribute 1 1 0 0 0 0 0 179 87 110,289 1 42 zemm_monitoring.observability.app_events 1 0 0 0 0 0 0 27,704 27,258 38,045,016 0 0 zemm_produktiv_7.pg_catalog.pg_class 1 1 0 0 0 0 0 91 32 45,700 3 13 zemm_produktiv_7.pg_catalog.pg_type 1 1 0 0 0 0 0 41 12 12,735 1 11 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 0 0 0 0 0 211 55 175,126 30 90 Total 91 62 0 0 0 0 0 93,647 34,332 60,738,299 3,384 18,170 Vacuum throughput per table
Key values
- observability.app_events (6.54) Max CPU elapsed for vacuum on database zemm_monitoring
- observability.app_events (14.121 ms) Max I/O read time for vacuum on database zemm_monitoring
- pg_toast.pg_toast_67411 (3.235 ms) Max I/O write time for vacuum on database zemm_monitoring
I/O timing (ms) CPU (s) Table read write elapsed zemm_produktiv_8.pg_catalog.pg_type 1.679 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 2.234 0 0.12 zemm_produktiv_8.pg_catalog.pg_class 1.623 0 0.04 zemm_produktiv_8.public.breedingssires 0 0.226 0 zemm_produktiv_8.public.breedingsdams 0 0.158 0 zemm_produktiv_8.pg_catalog.pg_depend 1.086 0 0.07 zemm_monitoring.pg_toast.pg_toast_67431 2.39 0 0.42 zemm_produktiv_8.pg_toast.pg_toast_2619 0.833 0 0.04 fbi_ci_db.pg_catalog.pg_shdepend 1.079 0 0.02 zemm_monitoring.observability.uptime_checks 0.064 0 0.05 zemm_monitoring.pg_toast.pg_toast_2619 0.429 0 0.01 zemm_monitoring.pg_toast.pg_toast_67411 0.95 3.235 0.43 zemm_produktiv_8.public.users 1.284 0 0.02 zemm_produktiv_7.public.import_validation_issues 0.295 0 0 zemm_produktiv_8.public.tasks 0.211 0 0.61 zemm_produktiv_8.public.cages_search_mview 0.33 0 0.08 zemm_monitoring.observability.system_metrics 1.243 0 0.25 zemm_produktiv_7.pg_catalog.pg_attribute 2.184 0 0.02 zemm_monitoring.observability.app_events 14.121 0 6.54 zemm_produktiv_7.pg_catalog.pg_class 1.706 0 0.01 zemm_produktiv_7.pg_catalog.pg_type 3.238 0 0 zemm_produktiv_8.pg_catalog.pg_statistic 0.301 0 0.01 Total 37.28 3.619 8.74 Tuples removed per table
Key values
- public.tasks (53678) Main table with removed tuples on database zemm_produktiv_8
- 79575 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain zemm_produktiv_8.public.tasks 1 1 53,678 56,731 0 0 16,689 zemm_produktiv_8.pg_catalog.pg_attribute 12 12 11,885 68,680 0 0 2,208 zemm_produktiv_8.pg_catalog.pg_depend 6 6 5,270 25,026 0 0 330 zemm_produktiv_8.pg_catalog.pg_type 18 18 3,634 14,958 0 0 558 fbi_ci_db.pg_catalog.pg_shdepend 4 4 1,678 15,536 0 0 152 zemm_produktiv_8.pg_catalog.pg_class 9 9 1,390 8,052 6 0 378 zemm_produktiv_7.pg_catalog.pg_attribute 1 1 479 7,642 0 0 190 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 401 1,161 0 0 424 zemm_produktiv_8.public.cages_search_mview 1 1 343 13,829 0 0 234 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 277 1,272 0 0 144 zemm_produktiv_8.public.users 1 1 179 756 0 0 108 zemm_produktiv_7.pg_catalog.pg_class 1 1 148 985 0 0 39 zemm_produktiv_7.pg_catalog.pg_type 1 1 138 861 0 0 27 zemm_monitoring.pg_toast.pg_toast_2619 1 1 71 79 0 3 35 zemm_produktiv_7.public.import_validation_issues 1 1 4 8 0 0 1 zemm_monitoring.pg_toast.pg_toast_67411 1 0 0 95,530 0 0 22,428 zemm_produktiv_8.public.breedingssires 9 0 0 202,622 0 0 1,296 zemm_monitoring.observability.system_metrics 1 0 0 37,466 0 0 4,807 zemm_monitoring.observability.uptime_checks 2 0 0 19,040 0 0 987 zemm_produktiv_8.public.breedingsdams 9 0 0 273,766 0 0 1,746 zemm_monitoring.observability.app_events 1 0 0 982,720 0 0 90,702 zemm_monitoring.pg_toast.pg_toast_67431 6 0 0 2,014,891 0 0 337,390 Total 91 62 79,575 3,841,611 6 3 480,873 Pages removed per table
Key values
- pg_toast.pg_toast_2619 (3) Main table with removed pages on database zemm_monitoring
- 3 pages Total removed
Table Number of vacuums Index scans Tuples removed Pages removed zemm_monitoring.pg_toast.pg_toast_2619 1 1 71 3 zemm_produktiv_8.pg_catalog.pg_class 9 9 1390 0 zemm_monitoring.pg_toast.pg_toast_67411 1 0 0 0 zemm_produktiv_8.public.users 1 1 179 0 zemm_produktiv_8.pg_catalog.pg_type 18 18 3634 0 zemm_produktiv_7.public.import_validation_issues 1 1 4 0 zemm_produktiv_8.public.tasks 1 1 53678 0 zemm_produktiv_8.public.cages_search_mview 1 1 343 0 zemm_produktiv_8.public.breedingssires 9 0 0 0 zemm_monitoring.observability.system_metrics 1 0 0 0 zemm_monitoring.observability.uptime_checks 2 0 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 12 12 11885 0 zemm_produktiv_7.pg_catalog.pg_attribute 1 1 479 0 zemm_produktiv_8.public.breedingsdams 9 0 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 401 0 zemm_produktiv_8.pg_catalog.pg_depend 6 6 5270 0 zemm_monitoring.observability.app_events 1 0 0 0 zemm_produktiv_7.pg_catalog.pg_class 1 1 148 0 fbi_ci_db.pg_catalog.pg_shdepend 4 4 1678 0 zemm_monitoring.pg_toast.pg_toast_67431 6 0 0 0 zemm_produktiv_7.pg_catalog.pg_type 1 1 138 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 277 0 Total 91 62 79,575 3 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Apr 09 00 1 1 01 3 2 02 0 2 03 0 0 04 0 0 05 1 1 06 5 10 07 0 4 08 9 19 09 17 29 10 11 26 11 5 11 12 13 34 13 6 19 14 9 18 15 1 6 16 4 8 17 2 2 18 1 0 19 0 2 20 0 1 21 1 4 22 0 1 23 2 1 - 6.54 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- unknown Main Lock Type
- 0 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query NO DATASET
Queries that waited the most
Rank Wait time Query NO DATASET
-
Queries
Queries by type
Key values
- 137 Total read queries
- 24,793 Total write queries
Queries by database
Key values
- zemm_monitoring Main database
- 24,758 Requests
- 14h23m23s (zemm_monitoring)
- Main time consuming database
Queries by user
Key values
- labanimal Main user
- 351,952 Requests
User Request type Count Duration deploy Total 57 14m43s cte 4 1m18s ddl 30 4m31s others 8 19s381ms select 9 6m3s labanimal Total 351,952 10d10h55m41s copy from 8 18s286ms copy to 96 4m30s cte 2,045 2h20m5s ddl 348,390 10d8h4m29s others 174 1m49s select 1,207 23m52s tcl 3 1s733ms update 18 19s539ms postgres Total 96 2m6s copy to 96 2m6s Duration by user
Key values
- 10d10h55m41s (labanimal) Main time consuming user
User Request type Count Duration deploy Total 57 14m43s cte 4 1m18s ddl 30 4m31s others 8 19s381ms select 9 6m3s labanimal Total 351,952 10d10h55m41s copy from 8 18s286ms copy to 96 4m30s cte 2,045 2h20m5s ddl 348,390 10d8h4m29s others 174 1m49s select 1,207 23m52s tcl 3 1s733ms update 18 19s539ms postgres Total 96 2m6s copy to 96 2m6s Queries by host
Key values
- unknown Main host
- 351,931 Requests
- 10d10h52m18s (unknown)
- Main time consuming host
Host Request type Count Duration 127.0.0.1 Total 2 6s311ms ddl 2 6s311ms 81.169.238.237 Total 19 3m16s select 1 2m56s update 18 19s539ms [local] Total 153 16m50s copy to 96 2m6s cte 4 1m18s ddl 30 4m31s others 8 19s381ms select 9 6m3s unknown Total 351,931 10d10h52m18s copy from 8 18s286ms copy to 96 4m30s cte 2,045 2h20m5s ddl 348,388 10d8h4m23s others 174 1m49s select 1,206 20m55s tcl 3 1s733ms Queries by application
Key values
- unknown Main application
- 24,750 Requests
- 14h23m14s (unknown)
- Main time consuming application
Application Request type Count Duration _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b Total 2 1s398ms select 2 1s398ms _desktop_index.php_zemm_produktiv_7_localhost_5432 Total 20 20s162ms cte 20 20s162ms _desktop_index.php_zemm_produktiv_8_localhost_5432 Total 143 2m18s cte 13 23s787ms select 130 1m54s expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 Total 1 954ms update 1 954ms pg_dump Total 7 8s677ms copy to 7 8s677ms psql Total 10 14s517ms ddl 2 6s311ms others 3 2s162ms select 5 6s43ms unknown Total 24,750 14h23m14s cte 269 14m14s ddl 24,480 14h9m tcl 1 603ms Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-04-09 00:37:01 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 323 1000-10000ms duration
Slowest individual queries
Rank Duration Query 1 7s393ms WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at <= '2026-04-09 17:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';[ Date: 2026-04-09 23:56:33 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
2 7s393ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
3 7s393ms CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
4 7s393ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
5 7s393ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
6 7s393ms CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
7 7s393ms CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
8 7s393ms CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
9 7s393ms CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
10 7s393ms CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
11 7s393ms CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
12 7s393ms CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
13 7s393ms CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
14 7s393ms CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
15 7s393ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
16 7s393ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
17 7s393ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
18 7s393ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);[ Date: 2026-04-09 23:57:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
19 4s368ms WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';[ Date: 2026-04-09 09:09:43 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
20 4s192ms WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';[ Date: 2026-04-09 09:09:43 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
Time consuming queries (N)
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 49m56s 1,440 524ms 7s393ms 2s80ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
2 49m56s 1,440 524ms 7s393ms 2s80ms create index if not exists idx_db_top_queries_tenant on observability.db_top_queries (tenant_key, collected_at desc);Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
3 49m56s 1,440 524ms 7s393ms 2s80ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
4 49m56s 1,440 524ms 7s393ms 2s80ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
5 49m56s 1,440 524ms 7s393ms 2s80ms create table if not exists observability.app_events ( id bigserial primary key, tenant_key text not null, event_type text not null, severity text not null, message text not null, payload jsonb, occurred_at timestamptz not null default now(), created_at timestamptz not null default now() );Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
6 49m56s 1,440 524ms 7s393ms 2s80ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
7 49m56s 1,440 524ms 7s393ms 2s80ms create table if not exists observability.metrics_timeseries ( id bigserial primary key, tenant_key text not null, metric_name text not null, bucket_start timestamptz not null, bucket_width_seconds integer not null default ?, sum_value double precision not null default ?, count_value bigint not null default ?, histogram jsonb, created_at timestamptz not null default now(), updated_at timestamptz not null default now(), unique (tenant_key, metric_name, bucket_start, bucket_width_seconds) );Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
8 49m56s 1,440 524ms 7s393ms 2s80ms create table if not exists observability.nginx_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
9 49m56s 1,440 524ms 7s393ms 2s80ms create schema if not exists observability;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
10 49m56s 1,440 524ms 7s393ms 2s80ms create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
11 49m56s 1,440 524ms 7s393ms 2s80ms create table if not exists observability.db_top_queries ( id bigserial primary key, tenant_key text not null, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz not null default now() );Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
12 49m56s 1,440 524ms 7s393ms 2s80ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
13 49m56s 1,440 524ms 7s393ms 2s80ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
14 49m56s 1,440 524ms 7s393ms 2s80ms create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
15 49m56s 1,440 524ms 7s393ms 2s80ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
16 49m56s 1,440 524ms 7s393ms 2s80ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
17 49m56s 1,440 524ms 7s393ms 2s80ms create table if not exists observability.system_metrics ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
18 14m14s 269 2s855ms 7s393ms 3s175ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Apr 09 01 11 32s157ms 2s923ms 02 6 17s757ms 2s959ms 10 18 59s853ms 3s325ms 11 23 1m12s 3s147ms 12 24 1m14s 3s83ms 13 24 1m15s 3s132ms 14 23 1m11s 3s96ms 16 17 53s795ms 3s164ms 17 1 3s17ms 3s17ms 18 11 40s452ms 3s677ms 19 15 45s495ms 3s33ms 20 20 1m3s 3s154ms 21 18 56s343ms 3s130ms 22 18 57s732ms 3s207ms 23 18 56s767ms 3s153ms 00 22 1m14s 3s406ms [ User: labanimal - Total duration: 14m14s - Times executed: 269 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at <= '2026-04-09 17:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 23:56:33 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s368ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
19 29s734ms 40 721ms 792ms 743ms select count(distinct animal_id) AS "count" from ( select animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join animals a on a."animalID" = animals_search_mview.animal_id left join breedings b on b.id = animals_search_mview.last_mating) data where fate = ? and alive = ? and deleted = ? and (is_owner or is_editor or is_tourist);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Apr 09 09 1 762ms 762ms 10 8 5s919ms 739ms 11 8 5s898ms 737ms 13 2 1s501ms 750ms 14 6 4s503ms 750ms 15 6 4s430ms 738ms 16 2 1s515ms 757ms 17 7 5s202ms 743ms [ User: labanimal - Total duration: 29s734ms - Times executed: 40 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 29s6ms - Times executed: 39 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 727ms - Times executed: 1 ]
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100050) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100050) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100050) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 10:51:17 Duration: 792ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100086) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100086) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100086) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 15:41:31 Duration: 786ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 540) AS is_owner, user_is_tgm (animals_search_mview.editor, 540) AS is_editor, user_is_tgm (animals_search_mview.tourist, 540) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 12:29:04 Duration: 768ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
20 27s108ms 40 665ms 714ms 677ms select distinct * from ( select animals_search_mview.*, b.unbreeding_date, fates.loc as fate_name, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, string_agg(l."application_id" || ? || l."title" || ? || date(lh."timestamp")::varchar, ?) as licensehistory, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview inner join fates on fates.id = animals_search_mview.fate left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join licenses l on l.id = lh.licid left join breedings b on b.id = animals_search_mview.last_mating group by animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data where data.fate = ? and data.alive = ? and data.deleted = ? and (is_owner or is_editor or is_tourist) and (data.straindeleted = ? or data.straindeleted is null) order by data.cage_name, data.animal_id, data.name;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 09 09 1 679ms 679ms 10 8 5s408ms 676ms 11 8 5s419ms 677ms 13 2 1s358ms 679ms 14 6 4s75ms 679ms 15 6 4s67ms 677ms 16 2 1s367ms 683ms 17 7 4s731ms 675ms [ User: labanimal - Total duration: 27s108ms - Times executed: 40 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 26s438ms - Times executed: 39 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 670ms - Times executed: 1 ]
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100050) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100050) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100050) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 10:51:17 Duration: 714ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100157) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100157) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100157) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 13:55:23 Duration: 698ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100086) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100086) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100086) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 15:41:32 Duration: 697ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 1,440 49m56s 524ms 7s393ms 2s80ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
2 1,440 49m56s 524ms 7s393ms 2s80ms create index if not exists idx_db_top_queries_tenant on observability.db_top_queries (tenant_key, collected_at desc);Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
3 1,440 49m56s 524ms 7s393ms 2s80ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
4 1,440 49m56s 524ms 7s393ms 2s80ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
5 1,440 49m56s 524ms 7s393ms 2s80ms create table if not exists observability.app_events ( id bigserial primary key, tenant_key text not null, event_type text not null, severity text not null, message text not null, payload jsonb, occurred_at timestamptz not null default now(), created_at timestamptz not null default now() );Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
6 1,440 49m56s 524ms 7s393ms 2s80ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
7 1,440 49m56s 524ms 7s393ms 2s80ms create table if not exists observability.metrics_timeseries ( id bigserial primary key, tenant_key text not null, metric_name text not null, bucket_start timestamptz not null, bucket_width_seconds integer not null default ?, sum_value double precision not null default ?, count_value bigint not null default ?, histogram jsonb, created_at timestamptz not null default now(), updated_at timestamptz not null default now(), unique (tenant_key, metric_name, bucket_start, bucket_width_seconds) );Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
8 1,440 49m56s 524ms 7s393ms 2s80ms create table if not exists observability.nginx_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
9 1,440 49m56s 524ms 7s393ms 2s80ms create schema if not exists observability;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
10 1,440 49m56s 524ms 7s393ms 2s80ms create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
11 1,440 49m56s 524ms 7s393ms 2s80ms create table if not exists observability.db_top_queries ( id bigserial primary key, tenant_key text not null, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz not null default now() );Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
12 1,440 49m56s 524ms 7s393ms 2s80ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
13 1,440 49m56s 524ms 7s393ms 2s80ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
14 1,440 49m56s 524ms 7s393ms 2s80ms create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
15 1,440 49m56s 524ms 7s393ms 2s80ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
16 1,440 49m56s 524ms 7s393ms 2s80ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
17 1,440 49m56s 524ms 7s393ms 2s80ms create table if not exists observability.system_metrics ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
18 269 14m14s 2s855ms 7s393ms 3s175ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Apr 09 01 11 32s157ms 2s923ms 02 6 17s757ms 2s959ms 10 18 59s853ms 3s325ms 11 23 1m12s 3s147ms 12 24 1m14s 3s83ms 13 24 1m15s 3s132ms 14 23 1m11s 3s96ms 16 17 53s795ms 3s164ms 17 1 3s17ms 3s17ms 18 11 40s452ms 3s677ms 19 15 45s495ms 3s33ms 20 20 1m3s 3s154ms 21 18 56s343ms 3s130ms 22 18 57s732ms 3s207ms 23 18 56s767ms 3s153ms 00 22 1m14s 3s406ms [ User: labanimal - Total duration: 14m14s - Times executed: 269 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at <= '2026-04-09 17:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 23:56:33 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s368ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
19 40 29s734ms 721ms 792ms 743ms select count(distinct animal_id) AS "count" from ( select animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join animals a on a."animalID" = animals_search_mview.animal_id left join breedings b on b.id = animals_search_mview.last_mating) data where fate = ? and alive = ? and deleted = ? and (is_owner or is_editor or is_tourist);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Apr 09 09 1 762ms 762ms 10 8 5s919ms 739ms 11 8 5s898ms 737ms 13 2 1s501ms 750ms 14 6 4s503ms 750ms 15 6 4s430ms 738ms 16 2 1s515ms 757ms 17 7 5s202ms 743ms [ User: labanimal - Total duration: 29s734ms - Times executed: 40 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 29s6ms - Times executed: 39 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 727ms - Times executed: 1 ]
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100050) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100050) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100050) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 10:51:17 Duration: 792ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100086) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100086) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100086) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 15:41:31 Duration: 786ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 540) AS is_owner, user_is_tgm (animals_search_mview.editor, 540) AS is_editor, user_is_tgm (animals_search_mview.tourist, 540) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 12:29:04 Duration: 768ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
20 40 27s108ms 665ms 714ms 677ms select distinct * from ( select animals_search_mview.*, b.unbreeding_date, fates.loc as fate_name, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, string_agg(l."application_id" || ? || l."title" || ? || date(lh."timestamp")::varchar, ?) as licensehistory, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview inner join fates on fates.id = animals_search_mview.fate left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join licenses l on l.id = lh.licid left join breedings b on b.id = animals_search_mview.last_mating group by animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data where data.fate = ? and data.alive = ? and data.deleted = ? and (is_owner or is_editor or is_tourist) and (data.straindeleted = ? or data.straindeleted is null) order by data.cage_name, data.animal_id, data.name;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 09 09 1 679ms 679ms 10 8 5s408ms 676ms 11 8 5s419ms 677ms 13 2 1s358ms 679ms 14 6 4s75ms 679ms 15 6 4s67ms 677ms 16 2 1s367ms 683ms 17 7 4s731ms 675ms [ User: labanimal - Total duration: 27s108ms - Times executed: 40 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 26s438ms - Times executed: 39 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 670ms - Times executed: 1 ]
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100050) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100050) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100050) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 10:51:17 Duration: 714ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100157) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100157) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100157) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 13:55:23 Duration: 698ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100086) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100086) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100086) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 15:41:32 Duration: 697ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 2s855ms 7s393ms 3s175ms 269 14m14s with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Apr 09 01 11 32s157ms 2s923ms 02 6 17s757ms 2s959ms 10 18 59s853ms 3s325ms 11 23 1m12s 3s147ms 12 24 1m14s 3s83ms 13 24 1m15s 3s132ms 14 23 1m11s 3s96ms 16 17 53s795ms 3s164ms 17 1 3s17ms 3s17ms 18 11 40s452ms 3s677ms 19 15 45s495ms 3s33ms 20 20 1m3s 3s154ms 21 18 56s343ms 3s130ms 22 18 57s732ms 3s207ms 23 18 56s767ms 3s153ms 00 22 1m14s 3s406ms [ User: labanimal - Total duration: 14m14s - Times executed: 269 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at <= '2026-04-09 17:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('test') AND collected_at BETWEEN '2026-04-09 17:56:26+02' AND '2026-04-09 23:56:26+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 23:56:33 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:38+02' AND '2026-04-09 09:09:38+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s368ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-09 03:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-09 03:09:39+02' AND '2026-04-09 09:09:39+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-09 09:09:43 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
2 524ms 7s393ms 2s80ms 1,440 49m56s create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
3 524ms 7s393ms 2s80ms 1,440 49m56s create index if not exists idx_db_top_queries_tenant on observability.db_top_queries (tenant_key, collected_at desc);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
4 524ms 7s393ms 2s80ms 1,440 49m56s create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
5 524ms 7s393ms 2s80ms 1,440 49m56s create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
6 524ms 7s393ms 2s80ms 1,440 49m56s create table if not exists observability.app_events ( id bigserial primary key, tenant_key text not null, event_type text not null, severity text not null, message text not null, payload jsonb, occurred_at timestamptz not null default now(), created_at timestamptz not null default now() );Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
7 524ms 7s393ms 2s80ms 1,440 49m56s create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
8 524ms 7s393ms 2s80ms 1,440 49m56s create table if not exists observability.metrics_timeseries ( id bigserial primary key, tenant_key text not null, metric_name text not null, bucket_start timestamptz not null, bucket_width_seconds integer not null default ?, sum_value double precision not null default ?, count_value bigint not null default ?, histogram jsonb, created_at timestamptz not null default now(), updated_at timestamptz not null default now(), unique (tenant_key, metric_name, bucket_start, bucket_width_seconds) );Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
9 524ms 7s393ms 2s80ms 1,440 49m56s create table if not exists observability.nginx_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
10 524ms 7s393ms 2s80ms 1,440 49m56s create schema if not exists observability;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
11 524ms 7s393ms 2s80ms 1,440 49m56s create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
12 524ms 7s393ms 2s80ms 1,440 49m56s create table if not exists observability.db_top_queries ( id bigserial primary key, tenant_key text not null, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz not null default now() );Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
13 524ms 7s393ms 2s80ms 1,440 49m56s alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
14 524ms 7s393ms 2s80ms 1,440 49m56s create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
15 524ms 7s393ms 2s80ms 1,440 49m56s create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
16 524ms 7s393ms 2s80ms 1,440 49m56s alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
17 524ms 7s393ms 2s80ms 1,440 49m56s create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
18 524ms 7s393ms 2s80ms 1,440 49m56s create table if not exists observability.system_metrics ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Apr 09 01 60 2m31s 2s525ms 02 60 1m56s 1s940ms 03 60 57s298ms 954ms 04 60 57s298ms 954ms 05 60 57s298ms 954ms 06 60 57s298ms 954ms 07 60 52s973ms 882ms 08 60 1m26s 1s444ms 09 60 1m1s 1s30ms 10 60 2m21s 2s360ms 11 60 2m55s 2s918ms 12 60 3m5s 3s84ms 13 60 2m41s 2s695ms 14 60 2m53s 2s897ms 15 60 44s836ms 747ms 16 60 2m5s 2s84ms 17 60 1m16s 1s274ms 18 60 2m42s 2s703ms 19 60 3m6s 3s103ms 20 60 2m52s 2s875ms 21 60 3m6s 3s111ms 22 60 3m3s 3s55ms 23 60 2m42s 2s716ms 00 60 2m40s 2s668ms [ User: labanimal - Total duration: 49m56s - Times executed: 1432 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 23:57:01 Duration: 7s393ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 09:13:01 Duration: 4s192ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-09 17:32:01 Duration: 3s989ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
19 721ms 792ms 743ms 40 29s734ms select count(distinct animal_id) AS "count" from ( select animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join animals a on a."animalID" = animals_search_mview.animal_id left join breedings b on b.id = animals_search_mview.last_mating) data where fate = ? and alive = ? and deleted = ? and (is_owner or is_editor or is_tourist);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Apr 09 09 1 762ms 762ms 10 8 5s919ms 739ms 11 8 5s898ms 737ms 13 2 1s501ms 750ms 14 6 4s503ms 750ms 15 6 4s430ms 738ms 16 2 1s515ms 757ms 17 7 5s202ms 743ms [ User: labanimal - Total duration: 29s734ms - Times executed: 40 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 29s6ms - Times executed: 39 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 727ms - Times executed: 1 ]
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100050) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100050) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100050) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 10:51:17 Duration: 792ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100086) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100086) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100086) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 15:41:31 Duration: 786ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 540) AS is_owner, user_is_tgm (animals_search_mview.editor, 540) AS is_editor, user_is_tgm (animals_search_mview.tourist, 540) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-04-09 12:29:04 Duration: 768ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
20 665ms 714ms 677ms 40 27s108ms select distinct * from ( select animals_search_mview.*, b.unbreeding_date, fates.loc as fate_name, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, string_agg(l."application_id" || ? || l."title" || ? || date(lh."timestamp")::varchar, ?) as licensehistory, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview inner join fates on fates.id = animals_search_mview.fate left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join licenses l on l.id = lh.licid left join breedings b on b.id = animals_search_mview.last_mating group by animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data where data.fate = ? and data.alive = ? and data.deleted = ? and (is_owner or is_editor or is_tourist) and (data.straindeleted = ? or data.straindeleted is null) order by data.cage_name, data.animal_id, data.name;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 09 09 1 679ms 679ms 10 8 5s408ms 676ms 11 8 5s419ms 677ms 13 2 1s358ms 679ms 14 6 4s75ms 679ms 15 6 4s67ms 677ms 16 2 1s367ms 683ms 17 7 4s731ms 675ms [ User: labanimal - Total duration: 27s108ms - Times executed: 40 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 26s438ms - Times executed: 39 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 670ms - Times executed: 1 ]
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100050) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100050) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100050) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 10:51:17 Duration: 714ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100157) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100157) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100157) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 13:55:23 Duration: 698ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100086) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100086) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100086) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-04-09 15:41:32 Duration: 697ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Time consuming prepare
Rank Total duration Times executed Min duration Max duration Avg duration Query NO DATASET
Time consuming bind
Rank Total duration Times executed Min duration Max duration Avg duration Query NO DATASET
-
Events
Log levels
Key values
- 188,022 Event entries
- (EVENTLOG entries are formaly LOG level entries that are not queries)
Events distribution (except queries)
Key values
- 0 PANIC entries
- 2 FATAL entries
- 28 ERROR entries
- 0 WARNING entries
- 15 EVENTLOG entries
Most Frequent Errors/Events
Key values
- 13 Max number of times the same event was reported
- 45 Total events found
Rank Times reported Error 1 13 ERROR: column "..." does not exist
Times Reported Most Frequent Error / Event #1
Day Hour Count Apr 09 16 2 21 9 22 2 - ERROR: column "run_id" does not exist
- ERROR: column "resolved_at" does not exist
- ERROR: column "entity_class" does not exist
Statement: SELECT run_id, status, created_at FROM import_runs ORDER BY created_at DESC LIMIT 5;
Date: 2026-04-09 15:57:06 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Statement: SELECT id, issue_code, severity, resolved_at, decision_choice FROM import_validation_issues WHERE import_run_id = 3 ORDER BY id LIMIT 10;
Date: 2026-04-09 15:57:51 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Statement: SELECT id, entity_class, status, created_at FROM import_runs ORDER BY id DESC LIMIT 10;
Date: 2026-04-09 20:44:20 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
2 5 ERROR: new row for relation "..." violates check constraint "..."
Times Reported Most Frequent Error / Event #2
Day Hour Count Apr 09 11 2 14 2 18 1 - ERROR: new row for relation "import_column_mappings" violates check constraint "import_column_mappings_mapping_intent_check"
- ERROR: new row for relation "import_column_mappings" violates check constraint "import_column_mappings_mapping_intent_check"
- ERROR: new row for relation "import_column_mappings" violates check constraint "import_column_mappings_mapping_intent_check"
Detail: Failing row contains (15, 2, 2, Tierart, animal.species, null, 1, 2026-04-09 10:38:02.935108+02, 2026-04-07 11:26:29.346382+02, 2026-04-09 10:38:02.935108+02, prefer_source_column).
Statement: UPDATE import_column_mappings SET mapping_intent = $1, confirmed_by = $2, confirmed_at = NOW(), updated_at = NOW() WHERE run_id = $3 AND zemm_field = $4Date: 2026-04-09 10:38:02 Database: zemm_produktiv_7 Application: _desktop_index.php_command_import_dashboard_subcommand_resolve_ User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Detail: Failing row contains (15, 2, 2, Tierart, animal.species, null, 1, 2026-04-09 10:39:35.702777+02, 2026-04-07 11:26:29.346382+02, 2026-04-09 10:39:35.702777+02, prefer_source_column).
Statement: UPDATE import_column_mappings SET mapping_intent = $1, confirmed_by = $2, confirmed_at = NOW(), updated_at = NOW() WHERE run_id = $3 AND zemm_field = $4Date: 2026-04-09 10:39:35 Database: zemm_produktiv_7 Application: _desktop_index.php_command_import_dashboard_subcommand_resolve_ User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Detail: Failing row contains (1, 1, 1, Tierart, animal.species, null, 1, 2026-04-09 13:49:03.122181+02, 2026-04-07 02:36:14.205799+02, 2026-04-09 13:49:03.122181+02, prefer_source_column).
Statement: UPDATE import_column_mappings SET mapping_intent = $1, confirmed_by = $2, confirmed_at = NOW(), updated_at = NOW() WHERE run_id = $3 AND zemm_field = $4Date: 2026-04-09 13:49:03 Database: zemm_produktiv_7 Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
3 5 FATAL: Peer authentication failed for user "..."
Times Reported Most Frequent Error / Event #3
Day Hour Count Apr 09 21 2 22 2 00 1 - FATAL: Peer authentication failed for user "zemm_rw"
- FATAL: Peer authentication failed for user "labanimal"
- FATAL: Peer authentication failed for user "postgres"
Detail: Connection matched file "/etc/postgresql/18/main/pg_hba.conf" line 18: "local all all peer"
Date: 2026-04-09 20:43:28 Database: zemmdev Application: User: zemm_rw Remote: [local] Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Detail: Connection matched file "/etc/postgresql/18/main/pg_hba.conf" line 18: "local all all peer"
Date: 2026-04-09 20:44:02 Database: zemm_produktiv_7 Application: User: labanimal Remote: [local] Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Detail: Connection matched file "/etc/postgresql/18/main/pg_hba.conf" line 16: "local all postgres peer"
Date: 2026-04-09 21:48:04 Database: zemm_dev Application: User: postgres Remote: [local] Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
4 4 ERROR: more than one function named "..."
Times Reported Most Frequent Error / Event #4
Day Hour Count Apr 09 22 4 - ERROR: more than one function named "p_update_animal"
- ERROR: more than one function named "p_update_animal"
- ERROR: more than one function named "p_update_animal"
Statement: SELECT 'p_update_animal'::pg_catalog.regproc::pg_catalog.oid
Date: 2026-04-09 21:18:21 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Statement: SELECT 'p_update_animal'::pg_catalog.regproc::pg_catalog.oid
Date: 2026-04-09 21:20:45 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Statement: SELECT 'p_update_animal'::pg_catalog.regproc::pg_catalog.oid
Date: 2026-04-09 21:20:50 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
5 4 LOG: could not receive data from client: Connection reset by peer
Times Reported Most Frequent Error / Event #5
Day Hour Count Apr 09 22 4 - LOG: could not receive data from client: Connection reset by peer
- LOG: could not receive data from client: Connection reset by peer
- LOG: could not receive data from client: Connection reset by peer
Date: 2026-04-09 21:18:32 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Date: 2026-04-09 21:20:21 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Date: 2026-04-09 21:20:27 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
6 4 ERROR: relation "..." does not exist
Times Reported Most Frequent Error / Event #6
Day Hour Count Apr 09 16 2 21 1 00 1 - ERROR: relation "import_runs" does not exist
- ERROR: relation "import_issues" does not exist
- ERROR: relation "import_definitions" does not exist
Statement: SELECT run_id, status, created_at FROM import_runs ORDER BY created_at DESC LIMIT 5;
Date: 2026-04-09 15:56:37 Database: zemm_produktiv_8 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Statement: SELECT id, issue_code, severity, resolved_at FROM import_issues WHERE import_run_id = 3 ORDER BY id LIMIT 10;
Date: 2026-04-09 15:57:38 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Statement: SELECT id, name, entity_class, status FROM import_definitions ORDER BY id DESC LIMIT 10;
Date: 2026-04-09 20:44:08 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
7 2 ERROR: value too long for type character varying(...)
Times Reported Most Frequent Error / Event #7
Day Hour Count Apr 09 11 2 - ERROR: value too long for type character varying(45)
- ERROR: value too long for type character varying(45)
Context: SQL statement "INSERT INTO tasks (id, name, "order", parent, "method", "entryValue", "returnedValue", done, deadline, loc, instructions, "comment", active, link, task_status, prio_owner, prio_editor, prio_agent, issuer, time_issued, completed_by, time_completed) VALUES (task_id, t.name, t."order", real_parent_id, t."method", t."entryValue", t."returnedValue", t.done, t.deadline, t.loc, t.instructions, t."comment", t.active, t.link, t.task_status, t.prio_owner, t.prio_editor, t.prio_agent, t.issuer, t.time_issued, t.completed_by, t.time_completed)" PL/pgSQL function p_save_task_tree(bigint,text,bigint) line 132 at SQL statement
Statement: SELECT p_save_task_tree(10100002, '', 10308050);Date: 2026-04-09 10:34:37 Database: zemm_produktiv_8 Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
Context: SQL statement "INSERT INTO tasks (id, name, "order", parent, "method", "entryValue", "returnedValue", done, deadline, loc, instructions, "comment", active, link, task_status, prio_owner, prio_editor, prio_agent, issuer, time_issued, completed_by, time_completed) VALUES (task_id, t.name, t."order", real_parent_id, t."method", t."entryValue", t."returnedValue", t.done, t.deadline, t.loc, t.instructions, t."comment", t.active, t.link, t.task_status, t.prio_owner, t.prio_editor, t.prio_agent, t.issuer, t.time_issued, t.completed_by, t.time_completed)" PL/pgSQL function p_save_task_tree(bigint,text,bigint) line 132 at SQL statement
Statement: SELECT p_save_task_tree(10100002, '', 10308051);Date: 2026-04-09 10:34:43 Database: zemm_produktiv_8 Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
8 1 ERROR: invalid input syntax for type integer: ...
Times Reported Most Frequent Error / Event #8
Day Hour Count Apr 09 21 1 - ERROR: invalid input syntax for type integer: "Ratte"
Statement: SELECT id, name, species, sex FROM animals WHERE deleted=false AND species='Ratte' LIMIT 5;
Date: 2026-04-09 20:47:04 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
9 1 ERROR: The animal's sex can be one of the following: \n\t(...)ale (...)emale (...)both (...)one
Times Reported Most Frequent Error / Event #9
Day Hour Count Apr 09 22 1 - ERROR: The animal's sex can be one of the following: \n\t(m)ale (f)emale (x)both (n)one
Context: PL/pgSQL function animal_create(character varying,integer,character varying) line 45 at RAISE PL/pgSQL function p_create_animal(integer,text,integer,character varying,boolean,date,date,date,date,integer,text,bigint,character varying,boolean,character varying,character varying,integer,character varying,character varying,integer,integer,text) line 118 at assignment
Statement: SELECT id FROM p_create_animal( $1, -- user_id_in integer $2, -- name_in text $3, -- species_in integer $4, -- sex_in varchar $5, -- sterile_in boolean $6, -- birthdate_in date $7, -- arrivaldate_in date $8, -- outgoingdate_in date $9, -- deathdate_in date $10, -- fate_in integer $11, -- comments_in text $12, -- homecage_in bigint $13, -- project_in varchar $14, -- breeding_in boolean NULL, -- parentmale_name_in varchar ($15) NULL, -- parentmale_fem_id_in varchar ($16) $15, -- parentmale_id_in integer ($17) Phase 4c: resolved sire DB id NULL, -- parentfemale_name_in varchar ($18) NULL, -- parentfemale_fem_id_in varchar ($19) $16, -- parentfemale_id_in integer ($20) Phase 4c: resolved dam DB id NULL, -- cohort_in integer ($21) NULL -- rfid_in text ($22) )Date: 2026-04-09 21:16:51 Database: zemm_produktiv_7 Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
10 1 ERROR: null value in column "..." of relation "..." violates not-null constraint
Times Reported Most Frequent Error / Event #10
Day Hour Count Apr 09 22 1 - ERROR: null value in column "sterile" of relation "animals" violates not-null constraint
Detail: Failing row contains (461818, null, null, null, 1673347, 1673346, 1673345, accept-test-update-2026-cli, null, null, null, null, 427418, 430504, null, null, null, f, F4, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, miR-212/132(tg/wt), null, null, null, null, B6.Mirneo, null, null, null, null, null, null, null, 2019/001/9838, 62306, null, null, null, null, null, null, +-, null, null, null, null, null, 34595, null, f).
Context: SQL statement "UPDATE animals SET "name" = the_animal_tick.name, "species" = the_animal_tick.species, "sex" = the_animal_tick.sex, "sterile" = the_animal_tick.sterile, "birthDate" = the_animal_tick."birthDate", "arrivalDate" = the_animal_tick."arrivalDate", "alive" = the_animal_tick."alive", "outgoingDate" = the_animal_tick."outgoingDate", "deathDate" = the_animal_tick."deathDate", "fate" = the_animal_tick.fate, "comments" = the_animal_tick.comments, "homeCage" = the_animal_tick."homeCage", "project" = the_animal_tick.project, "breeding" = the_animal_tick.breeding, "parentMale" = the_animal_tick."parentMale", "parentFemale" = the_animal_tick."parentFemale", "cohort" = the_animal_tick."cohort" WHERE id = the_animal_tick.id" PL/pgSQL function p_update_animal(bigint,bigint,text,integer,character varying,boolean,date,date,boolean,date,date,integer,text,bigint,character varying,boolean,character varying,character varying,integer,character varying,character varying,integer,integer,text) line 438 at SQL statement
Statement: SELECT p_update_animal( $1, -- user_id_in (proc param 1) $2, -- id_in (proc param 2) NULL, -- name_in (proc param 3) NULL, -- species_in (proc param 4) NULL, -- sex_in (proc param 5) NULL, -- sterile_in (proc param 6) NULL, -- birthdate_in (proc param 7) $5, -- arrivaldate_in (proc param 8) Phase 4b: NULL-preserving NULL, -- alive_in (proc param 9) NULL, -- outgoingdate_in (proc param 10) Phase 4c bugfix: was missing, caused 23-arg failure NULL, -- deathdate_in (proc param 11) NULL, -- fate_in (proc param 12) $3, -- comments_in (proc param 13) $4, -- homecage_in (proc param 14) $6, -- project_in (proc param 15) Phase 4b: NULL-preserving; see constraint note above NULL, -- breeding_in (proc param 16) NULL, -- parentmale_name_in (proc param 17) NULL, -- parentmale_fem_id_in (proc param 18) $7, -- parentmale_id_in (proc param 19) Phase 4c: effective sire DB id (preserve or update) NULL, -- parentfemale_name_in (proc param 20) NULL, -- parentfemale_fem_id_in(proc param 21) $8, -- parentfemale_id_in (proc param 22) Phase 4c: effective dam DB id (preserve or update) NULL, -- cohort_in (proc param 23) NULL -- rfid_in (proc param 24) )Date: 2026-04-09 21:16:51 Database: zemm_produktiv_7 Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
11 1 ERROR: Absetzen der Maennchen fehlgeschlagen (...).
Times Reported Most Frequent Error / Event #11
Day Hour Count Apr 09 00 1 - ERROR: Absetzen der Maennchen fehlgeschlagen (Code -99).
Context: PL/pgSQL function p_wean_litter(bigint,date,bigint,bigint,integer,integer,integer,integer,integer,text,timestamp without time zone,bigint,text) line 224 at RAISE
Statement: SELECT p_wean_litter($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,NULL,NULL,NULL)Date: 2026-04-09 23:49:22 Database: zemm_produktiv_7 Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
12 1 ERROR: trailing junk after numeric literal at or near "..."
Times Reported Most Frequent Error / Event #12
Day Hour Count Apr 09 22 1 - ERROR: trailing junk after numeric literal at or near "3628p_update_animal3628"
Statement: SELECT prosrc FROM pg_proc WHERE proname=3628p_update_animal3628
Date: 2026-04-09 21:18:26 Database: zemm_produktiv_7 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
13 1 ERROR: syntax error at or near "..."
Times Reported Most Frequent Error / Event #13
Day Hour Count Apr 09 10 1 - ERROR: syntax error at or near "CURRENT_DATE"
Statement: WITH weaning AS ( SELECT lower(COALESCE(NULLIF(users."mailUser",'') || CASE WHEN COALESCE(users."mailUser",'') <> '' AND COALESCE(users."mailHost",'') <> '' THEN '@' ELSE '' END || NULLIF(users."mailHost",''), users."eMail")) AS email, 'weaning_due' AS kind, litters.id::text AS item_id FROM litters LEFT JOIN animals ON litters.dam = animals.id LEFT JOIN species ON animals.species = species.id LEFT JOIN "targetgroupMembers" tgm ON tgm.targetgroup = animals.owner LEFT JOIN users ON tgm."user" = users.id WHERE (date CURRENT_DATE - 1, date CURRENT_DATE) overlaps (date (litters."birthDate"+species."weaningAge"::integer), date (litters."birthDate"+species."weaningAge"::integer)) AND users.id IS NOT NULL AND NOT(COALESCE(users.deleted,false)) AND NOT(COALESCE(users.disablemail,false)) ), license_expiry AS ( SELECT lower(COALESCE(NULLIF(users."mailUser",'') || CASE WHEN COALESCE(users."mailUser",'') <> '' AND COALESCE(users."mailHost",'') <> '' THEN '@' ELSE '' END || NULLIF(users."mailHost",''), users."eMail")) AS email, 'license_expiry' AS kind, licenses.id::text AS item_id FROM licenses LEFT JOIN users ON users.id = licenses.chief WHERE licenses.limitation < CURRENT_DATE AND NOT(licenses.limitation_notified) AND users.id IS NOT NULL AND NOT(COALESCE(users.deleted,false)) AND NOT(COALESCE(users.disablemail,false)) ), task_deadline AS ( SELECT lower(COALESCE(NULLIF(users."mailUser",'') || CASE WHEN COALESCE(users."mailUser",'') <> '' AND COALESCE(users."mailHost",'') <> '' THEN '@' ELSE '' END || NULLIF(users."mailHost",''), users."eMail")) AS email, 'task_deadline' AS kind, tasks.id::text AS item_id FROM tasks LEFT JOIN "targetgroupMembers" tgm ON tgm.targetgroup = tasks.owner LEFT JOIN users ON tgm."user" = users.id WHERE tasks.deadline >= NOW() - interval '7 days' AND tasks.deadline < NOW() AND NOT(COALESCE(tasks.deadline_notified,false)) AND users.id IS NOT NULL AND NOT(COALESCE(users.deleted,false)) AND NOT(COALESCE(users.disablemail,false)) ) SELECT email, kind, COUNT(*) AS items FROM ( SELECT * FROM weaning UNION ALL SELECT * FROM license_expiry UNION ALL SELECT * FROM task_deadline ) q WHERE email IN ('bundalo_m@ukw.de','rosa_a@ukw.de') GROUP BY email, kind ORDER BY email, kind;
Date: 2026-04-09 09:44:10 Database: zemm_produktiv_8 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
14 1 ERROR: Zu viele Maennchen zum Absetzen angegeben.
Times Reported Most Frequent Error / Event #14
Day Hour Count Apr 09 00 1 - ERROR: Zu viele Maennchen zum Absetzen angegeben.
Context: PL/pgSQL function p_wean_litter(bigint,date,bigint,bigint,integer,integer,integer,integer,integer,text,timestamp without time zone,bigint,text) line 141 at RAISE
Statement: SELECT p_wean_litter($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,NULL,NULL,NULL)Date: 2026-04-09 23:46:42 Database: zemm_produktiv_7 Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv
15 1 ERROR: function p_wean_males(...) does not exist
Times Reported Most Frequent Error / Event #15
Day Hour Count Apr 09 00 1 - ERROR: function p_wean_males(integer, bigint, integer, integer, unknown, character varying, character varying, text, date, character varying, character varying, character varying, character varying, character varying, character varying, character varying, character varying, character varying, character varying, character varying, text, text, bigint) does not exist
Context: PL/pgSQL function p_wean_litter(bigint,date,bigint,bigint,integer,integer,integer,integer,integer,text,timestamp without time zone,bigint,text) line 190 at FOR over SELECT rows
Hint: No function matches the given name and argument types. You might need to add explicit type casts.
Statement: SELECT p_wean_litter($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,NULL,NULL,NULL)Date: 2026-04-09 23:47:18 Database: zemm_produktiv_7 Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-09_000000.csv