-
Global information
- Generated on Thu Apr 30 06:06:22 2026
- Log file: /var/log/postgresql/postgresql-2026-03-25_000000.csv, ..., /var/log/postgresql/postgresql-2026-04-30_000000.csv
- Parsed 281,096 log entries in 6m21s
- Log start from 2026-04-16 00:00:01 to 2026-04-16 23:59:03
-
Overview
Global Stats
- 50 Number of unique normalized queries
- 24,600 Number of queries
- 6h12m30s Total query duration
- 2026-04-16 00:00:02 First query
- 2026-04-16 23:59:02 Last query
- 18 queries/s at 2026-04-16 17:19:01 Query peak
- 6h12m30s Total query duration
- 0ms Prepare/parse total duration
- 0ms Bind total duration
- 6h12m30s Execute total duration
- 8 Number of events
- 4 Number of unique normalized events
- 3 Max number of times the same event was reported
- 0 Number of cancellation
- 73 Total number of automatic vacuums
- 147 Total number of automatic analyzes
- 10 Number temporary file
- 58.98 MiB Max size of temporary file
- 51.58 MiB Average size of temporary file
- 25,710 Total number of sessions
- 10 sessions at 2026-04-16 21:47:11 Session peak
- 1h18m4s Total duration of sessions
- 182ms Average duration of sessions
- 0 Average queries per session
- 869ms Average queries duration per session
- 0ms Average idle time per session
- 25,710 Total number of connections
- 45 connections/s at 2026-04-16 10:57:30 Connection peak
- 2 Total number of databases
SQL Traffic
Key values
- 18 queries/s Query Peak
- 2026-04-16 17:19:01 Date
SELECT Traffic
Key values
- 2 queries/s Query Peak
- 2026-04-16 12:25:14 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 17 queries/s Query Peak
- 2026-04-16 05:58:01 Date
Queries duration
Key values
- 6h12m30s 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 16 00 1,020 0ms 0ms 0ms 0ms 0ms 0ms 01 1,021 0ms 883ms 427ms 15s27ms 15s27ms 15s27ms 02 1,020 883ms 883ms 883ms 15s27ms 15s27ms 15s27ms 03 1,020 883ms 883ms 883ms 15s27ms 15s27ms 15s27ms 04 1,020 883ms 883ms 883ms 15s27ms 15s27ms 15s27ms 05 1,020 883ms 883ms 883ms 15s27ms 15s27ms 15s27ms 06 1,033 548ms 1s323ms 711ms 15s27ms 21s609ms 23s68ms 07 1,041 551ms 2s647ms 781ms 19s552ms 28s975ms 48s881ms 08 1,023 667ms 1s637ms 1s363ms 27s829ms 27s829ms 29s231ms 09 1,032 667ms 1s731ms 730ms 15s500ms 16s413ms 19s16ms 10 1,033 666ms 3s686ms 863ms 19s206ms 20s633ms 1m6s 11 1,036 667ms 3s649ms 2s346ms 1m2s 1m2s 1m3s 12 1,030 672ms 3s591ms 686ms 11s657ms 13s27ms 18s821ms 13 1,021 996ms 3s572ms 1s254ms 1m 1m 1m1s 14 1,020 996ms 996ms 996ms 16s948ms 16s948ms 16s948ms 15 1,030 561ms 996ms 890ms 16s948ms 18s349ms 18s791ms 16 1,030 667ms 1s393ms 756ms 15s21ms 15s21ms 17s213ms 17 1,024 665ms 741ms 676ms 11s699ms 11s699ms 14s43ms 18 1,021 665ms 1s 740ms 17s9ms 17s9ms 17s9ms 19 1,020 1s 1s 1s 17s9ms 17s9ms 17s9ms 20 1,020 1s 1s 1s 17s9ms 17s9ms 17s9ms 21 1,020 1s 1s 1s 17s9ms 17s9ms 17s9ms 22 1,020 1s 1s 1s 17s9ms 17s9ms 17s9ms 23 1,025 545ms 2s135ms 1s26ms 17s9ms 23s223ms 23s605ms Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 16 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 13 0 814ms 0ms 772ms 1s684ms 07 19 0 938ms 0ms 1s150ms 3s874ms 08 2 0 700ms 0ms 0ms 0ms 09 10 0 762ms 0ms 0ms 1s531ms 10 11 0 746ms 0ms 0ms 1s426ms 11 14 0 705ms 0ms 0ms 2s811ms 12 10 0 1s287ms 0ms 0ms 2s889ms 13 1 0 996ms 0ms 0ms 0ms 14 0 0 0ms 0ms 0ms 0ms 15 9 0 791ms 0ms 0ms 1s948ms 16 10 0 784ms 0ms 0ms 2s192ms 17 4 0 706ms 0ms 0ms 1s395ms 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 0 0 0ms 0ms 0ms 0ms 23 0 5 1s319ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 16 00 0 0 0 0 0ms 0ms 0ms 0ms 01 0 1 0 0 883ms 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 16 00 0 0 0.00 0.00% 01 0 0 0.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 0 0.00 0.00% 10 0 2 2.00 0.00% 11 0 0 0.00 0.00% 12 0 0 0.00 0.00% 13 0 0 0.00 0.00% 14 0 0 0.00 0.00% 15 0 0 0.00 0.00% 16 0 0 0.00 0.00% 17 0 0 0.00 0.00% 18 0 0 0.00 0.00% 19 0 0 0.00 0.00% 20 0 0 0.00 0.00% 21 0 0 0.00 0.00% 22 0 0 0.00 0.00% 23 0 0 0.00 0.00% Day Hour Count Average / Second Apr 16 00 569 0.16/s 01 547 0.15/s 02 548 0.15/s 03 547 0.15/s 04 544 0.15/s 05 598 0.17/s 06 1,241 0.34/s 07 1,927 0.54/s 08 1,486 0.41/s 09 1,818 0.51/s 10 1,548 0.43/s 11 1,370 0.38/s 12 1,533 0.43/s 13 1,252 0.35/s 14 1,060 0.29/s 15 951 0.26/s 16 1,211 0.34/s 17 1,541 0.43/s 18 965 0.27/s 19 949 0.26/s 20 966 0.27/s 21 1,253 0.35/s 22 736 0.20/s 23 550 0.15/s Day Hour Count Average Duration Average idle time Apr 16 00 569 219ms 219ms 01 547 227ms 0ms 02 548 224ms 0ms 03 547 221ms 0ms 04 544 222ms 0ms 05 598 207ms 0ms 06 1,241 207ms 0ms 07 1,927 188ms 0ms 08 1,486 171ms 0ms 09 1,818 201ms 0ms 10 1,548 164ms 0ms 11 1,370 197ms 0ms 12 1,533 158ms 0ms 13 1,252 162ms 0ms 14 1,060 164ms 0ms 15 951 188ms 0ms 16 1,211 165ms 0ms 17 1,541 141ms 0ms 18 965 175ms 0ms 19 949 171ms 0ms 20 966 172ms 0ms 21 1,253 148ms 0ms 22 736 187ms 0ms 23 550 250ms 0ms -
Connections
Established Connections
Key values
- 45 connections Connection Peak
- 2026-04-16 10:57:30 Date
Connections per database
Key values
- zemm_monitoring Main Database
- 25,710 connections Total
Connections per user
Key values
- labanimal Main User
- 25,710 connections Total
-
Sessions
Simultaneous sessions
Key values
- 10 sessions Session Peak
- 2026-04-16 21:47:11 Date
Histogram of session times
Key values
- 23,534 0-500ms duration
Sessions per database
Key values
- zemm_monitoring Main Database
- 25,710 sessions Total
Sessions per user
Key values
- labanimal Main User
- 25,710 sessions Total
Sessions per host
Key values
- ::1 Main Host
- 25,710 sessions Total
Sessions per application
Key values
- Main Application
- 25,710 sessions Total
Application Count Total Duration Average Duration 20,488 1h5m28s 191ms _backend_wean_api.php_litter_id_10131814_zemm_produktiv_8_local 7 984ms 140ms _backend_wean_api.php_litter_id_10131815_zemm_produktiv_8_local 14 1s967ms 140ms _backend_wean_api.php_litter_id_10131816_zemm_produktiv_8_local 14 1s962ms 140ms _backend_wean_api.php_litter_id_10131833_zemm_produktiv_8_local 12 1s697ms 141ms _backend_wean_api.php_litter_id_10131834_zemm_produktiv_8_local 12 1s677ms 139ms _backend_wean_api.php_litter_id_10131860_zemm_produktiv_8_local 1 141ms 141ms _backend_wean_api.php_litter_id_10131887_zemm_produktiv_8_local 12 1s692ms 141ms _backend_wean_api.php_litter_id_10131888_zemm_produktiv_8_local 12 1s678ms 139ms _backend_wean_api.php_litter_id_10131911_zemm_produktiv_8_local 8 1s140ms 142ms _backend_wean_api.php_litter_id_10131912_zemm_produktiv_8_local 13 1s815ms 139ms _backend_wean_api.php_litter_id_10131914_zemm_produktiv_8_local 12 1s678ms 139ms _backend_wean_api.php_litter_id_10131916_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10131917_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10131918_zemm_produktiv_8_local 2 276ms 138ms _backend_wean_api.php_litter_id_10131919_zemm_produktiv_8_local 2 278ms 139ms _backend_wean_api.php_litter_id_10131920_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10131943_zemm_produktiv_8_local 2 281ms 140ms _backend_wean_api.php_litter_id_10131944_zemm_produktiv_8_local 2 285ms 142ms _backend_wean_api.php_litter_id_10131947_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10131956_zemm_produktiv_8_local 5 709ms 141ms _backend_wean_api.php_litter_id_10132012_zemm_produktiv_8_local 2 284ms 142ms _backend_wean_api.php_litter_id_10132220_zemm_produktiv_8_local 2 282ms 141ms _backend_wean_api.php_litter_id_10132221_zemm_produktiv_8_local 2 284ms 142ms _backend_wean_api.php_zemm_produktiv_8_localhost_5432 1 1s409ms 1s409ms _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da 1 1s475ms 1s475ms _desktop__zemm_produktiv_8_localhost_5432 5 295ms 59ms _desktop_index.php_animal_name_69_animal_id_2025_2F002_2F8237_s 1 44ms 44ms _desktop_index.php_cages_empty__25_val4_cages_search_command_ta 1 46ms 46ms _desktop_index.php_cages_name_53-221_cages_empty__25_val4_cages 1 71ms 71ms _desktop_index.php_cages_name_A15.415.1_2A_cages_empty__25_val4 1 591ms 591ms _desktop_index.php_cages_name__2Aa.415_2A_cages_empty__25_val4_ 2 118ms 59ms _desktop_index.php_command_animals_edit_subcommand_init_id_1027 1 97ms 97ms _desktop_index.php_command_animals_edit_subcommand_init_id_1029 1 113ms 113ms _desktop_index.php_command_animals_edit_subcommand_init_id_1030 2 176ms 88ms _desktop_index.php_command_animals_subcommand_found_val1_101000 1 46ms 46ms _desktop_index.php_command_animals_subcommand_found_val1_439_va 1 44ms 44ms _desktop_index.php_command_animals_subcommand_init_zemm_produkt 22 995ms 45ms _desktop_index.php_command_cages_edit_subcommand_init_id_101018 4 282ms 70ms _desktop_index.php_command_cages_subcommand_init_zemm_produktiv 2 74ms 37ms _desktop_index.php_command_facility_subcommand_edit_id_10100003 3 156ms 52ms _desktop_index.php_command_facility_subcommand_edit_id_10100006 1 54ms 54ms _desktop_index.php_command_facility_subcommand_edit_id_10100007 1 54ms 54ms _desktop_index.php_command_login_subcommand_init_zemm_produktiv 1,661 49s782ms 29ms _desktop_index.php_command_profile_subcommand_authority_meldung 1 47ms 47ms _desktop_index.php_command_profile_subcommand_init_id_10100196_ 1 161ms 161ms _desktop_index.php_command_reports_subcommand_animals_per_room_ 2 266ms 133ms _desktop_index.php_command_reports_subcommand_animals_per_user_ 20 2s120ms 106ms _desktop_index.php_command_reports_subcommand_annual_reports_ze 1 45ms 45ms _desktop_index.php_command_reports_subcommand_authority_meldung 3 136ms 45ms _desktop_index.php_command_reports_subcommand_init_zemm_produkt 1 122ms 122ms _desktop_index.php_command_reports_subcommand_task_status_zemm_ 3 341ms 113ms _desktop_index.php_command_tasks_subcommand_create_task_id_37_z 1 58ms 58ms _desktop_index.php_command_tasks_subcommand_create_task_id_47_z 2 107ms 53ms _desktop_index.php_command_tasks_subcommand_create_zemm_produkt 2 104ms 52ms _desktop_index.php_command_tasks_subcommand_edit_id_10140625_ze 1 80ms 80ms _desktop_index.php_command_tasks_subcommand_edit_id_10141453_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10141610_ze 1 78ms 78ms _desktop_index.php_command_tasks_subcommand_edit_id_10141802_ze 2 164ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10141946_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10141965_ze 1 78ms 78ms _desktop_index.php_command_tasks_subcommand_edit_id_10142066_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10142199_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_edit_id_10142249_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10142272_ze 1 86ms 86ms _desktop_index.php_command_tasks_subcommand_edit_id_10142277_ze 1 76ms 76ms _desktop_index.php_command_tasks_subcommand_edit_id_10142288_ze 1 84ms 84ms _desktop_index.php_command_tasks_subcommand_edit_id_10142294_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10142295_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_edit_id_10142301_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10142318_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_edit_id_10142319_ze 1 84ms 84ms _desktop_index.php_command_tasks_subcommand_edit_id_10142322_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10142329_ze 1 77ms 77ms _desktop_index.php_command_tasks_subcommand_init_template_zemm_ 5 222ms 44ms _desktop_index.php_command_tasks_subcommand_init_zemm_produktiv 3 254ms 84ms _desktop_index.php_command_tasks_subcommand_open_zemm_produktiv 77 5s934ms 77ms _desktop_index.php_command_tasks_subcommand_search_zemm_produkt 2 86ms 43ms _desktop_index.php_m_action_animals_3Am_delete_val4_animals_lis 2 140ms 70ms _desktop_index.php_m_action_animals_litters_edit_3Am_init_val4_ 1 46ms 46ms _desktop_index.php_name_Genotypisierungsproben_20genommen_instr 13 890ms 68ms _desktop_index.php_name_Nova_20Tarefa_add_link_animals_task_sta 1 50ms 50ms _desktop_index.php_name_Tierabgabe_20in_20den_20Laborbereich_20 2 188ms 94ms _desktop_index.php_name_Tiertransport_20durch_20das_20ZEMM_20-_ 2 91ms 45ms _desktop_index.php_name_Tiertransport_20durch_20das_20ZEMM_inst 5 239ms 47ms _desktop_index.php_name_Tiertransport_20innerhalb_20W_C3_BCrzbu 1 63ms 63ms _desktop_index.php_name_Transfer_20in_20Laborbereich_20des_20ZE 1 68ms 68ms _desktop_index.php_name_Verpaarung_20trennen_instructions_Bitte 2 175ms 87ms _desktop_index.php_name_Verpaarungen_20Emx1_2FriboGcamp8_instru 1 46ms 46ms _desktop_index.php_name_Verpaarungen_20von_20_E2_80_A6_20bis_20 3 129ms 43ms _desktop_index.php_name_Verpaarungen_20zur_20Zucht_instructions 2 129ms 64ms _desktop_index.php_sire_name_6_dam_name_8_sire_id_2025_2F002_2F 1 142ms 142ms _desktop_index.php_view_animal_name_on_view_animal_id_on_animal 5 718ms 143ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b 39 20s861ms 534ms _desktop_index.php_zemm_produktiv_8_localhost_5432 3,024 10m18s 204ms backend:zemm_produktiv_7@localhost 6 289ms 48ms backend:zemm_produktiv_8@localhost 58 3s159ms 54ms expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 907ms 907ms pg_dump 1 13s497ms 13s497ms psql 2 27ms 13ms taskscron:zemm_produktiv_7@zemm.fbiscience.eu 24 584ms 24ms taskscron:zemm_produktiv_8@h2940066.stratoserver.net:5432 24 7s103ms 295ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 88,294 buffers Checkpoint Peak
- 2026-04-16 18:52:31 Date
- 269.935 seconds Highest write time
- 0.033 seconds Sync time
Checkpoints Wal files
Key values
- 28 files Wal files usage Peak
- 2026-04-16 18:52:31 Date
Checkpoints distance
Key values
- 902.46 Mo Distance Peak
- 2026-04-16 18:52:31 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Apr 16 00 2,649 265.685s 0.099s 265.841s 01 21,374 532.335s 0.098s 532.488s 02 2,540 254.744s 0.09s 254.89s 03 2,450 245.736s 0.093s 245.877s 04 3,716 372.539s 0.101s 372.688s 05 2,582 258.972s 0.095s 259.124s 06 4,396 440.386s 0.185s 440.625s 07 87,606 1,680.051s 0.232s 1,680.344s 08 4,413 442.498s 0.186s 442.734s 09 18,545 848.183s 0.197s 848.432s 10 10,270 900.093s 0.172s 900.319s 11 31,806 863.643s 0.189s 863.885s 12 7,969 690.583s 0.173s 690.809s 13 17,362 676.56s 0.187s 676.802s 14 3,675 368.375s 0.153s 368.587s 15 29,424 780.743s 0.148s 780.946s 16 3,890 389.82s 0.178s 390.049s 17 4,020 403.104s 0.204s 403.363s 18 91,942 634.985s 0.143s 635.201s 19 5,815 582.265s 0.088s 582.414s 20 6,030 603.618s 0.098s 603.772s 21 5,896 590.2s 0.102s 590.362s 22 3,732 374.135s 0.099s 374.294s 23 2,968 297.65s 0.085s 297.793s Day Hour Added Removed Recycled Synced files Longest sync Average sync Apr 16 00 0 0 1 440 0.002s 0.012s 01 0 0 7 417 0.002s 0.011s 02 0 0 0 426 0.002s 0.012s 03 0 0 1 425 0.001s 0.012s 04 0 0 1 428 0.002s 0.012s 05 0 0 1 458 0.002s 0.012s 06 0 0 1 958 0.002s 0.012s 07 0 0 16 1,242 0.004s 0.011s 08 0 0 1 1,058 0.002s 0.012s 09 0 0 5 1,111 0.002s 0.011s 10 0 0 6 973 0.002s 0.011s 11 0 0 6 1,049 0.002s 0.012s 12 0 0 2 976 0.002s 0.012s 13 0 0 5 1,080 0.002s 0.012s 14 0 0 1 790 0.002s 0.012s 15 0 0 9 816 0.002s 0.01s 16 0 0 1 940 0.002s 0.012s 17 0 0 1 1,067 0.004s 0.012s 18 0 0 29 785 0.002s 0.012s 19 0 0 2 439 0.002s 0.012s 20 0 0 1 465 0.002s 0.012s 21 0 0 1 522 0.002s 0.012s 22 0 0 1 530 0.002s 0.012s 23 0 0 1 448 0.002s 0.012s Day Hour Count Avg time (sec) Apr 16 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 16 00 1,179.17 kB 1,327.83 kB 01 10,172.55 kB 37,512.45 kB 02 1,159.17 kB 35,596.08 kB 03 1,129.58 kB 10,867.92 kB 04 1,306.33 kB 4,000.25 kB 05 1,167.75 kB 1,964.00 kB 06 1,813.25 kB 2,238.33 kB 07 23,011.64 kB 43,397.82 kB 08 1,810.33 kB 30,767.92 kB 09 7,779.45 kB 15,394.82 kB 10 7,617.45 kB 38,846.36 kB 11 9,028.50 kB 51,645.58 kB 12 2,467.42 kB 16,367.25 kB 13 6,372.42 kB 34,233.00 kB 14 1,568.67 kB 12,026.67 kB 15 14,884.70 kB 40,503.80 kB 16 1,492.08 kB 28,745.75 kB 17 1,586.75 kB 9,241.08 kB 18 39,880.58 kB 107,365.17 kB 19 1,744.33 kB 202,455.75 kB 20 1,750.83 kB 58,339.00 kB 21 1,845.00 kB 17,854.67 kB 22 1,453.50 kB 6,181.67 kB 23 1,252.92 kB 2,669.58 kB -
Temporary Files
Size of temporary files
Key values
- 258.53 MiB Temp Files size Peak
- 2026-04-16 10:57:33 Date
Number of temporary files
Key values
- 5 per second Temp Files Peak
- 2026-04-16 10:58:20 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Apr 16 00 0 0 0 01 0 0 0 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 0 0 0 10 10 515.80 MiB 51.58 MiB 11 0 0 0 12 0 0 0 13 0 0 0 14 0 0 0 15 0 0 0 16 0 0 0 17 0 0 0 18 0 0 0 19 0 0 0 20 0 0 0 21 0 0 0 22 0 0 0 23 0 0 0 Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 8 399.26 MiB 46.40 MiB 52.16 MiB 49.91 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 ('prod') AND collected_at <= '2026-04-16 04:57:30+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-16 04:57:30+02' AND '2026-04-16 10:57:30+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-16 04:57:30+02' AND '2026-04-16 10:57:30+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-16 10:57:33 Duration: 3s686ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-16_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-15 22:58:16+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-15 22:58:16+02' AND '2026-04-16 10:58:16+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-15 22:58:16+02' AND '2026-04-16 10:58:16+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-16 10:58:20 Duration: 3s649ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Queries generating the largest temporary files
Rank Size Query 1 52.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-16 10:57:33 - Queryid: 712170 ]
2 52.01 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-16 10:58:20 - Queryid: 712487 ]
3 51.73 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-16 10:57:33 - Queryid: 712170 ]
4 50.69 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-16 10:57:33 - Queryid: 712170 ]
5 49.94 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-16 10:58:20 - Queryid: 712487 ]
6 49.42 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-16 10:58:20 - Queryid: 712487 ]
7 46.92 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-16 10:58:20 - Queryid: 712487 ]
8 46.40 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-16 10:57:33 - Queryid: 712170 ]
-
Vacuums
Vacuums / Analyzes Distribution
Key values
- 9.51 sec Highest CPU-cost vacuum
Table observability.db_top_queries
Database zemm_monitoring - 2026-04-16 18:46:42 Date
- 0 sec Highest CPU-cost analyze
Table
Database zemm_monitoring - Date
Average Autovacuum Duration
Key values
- 9.51 sec Highest CPU-cost vacuum
Table observability.db_top_queries
Database zemm_monitoring - 2026-04-16 18:46:42 Date
Analyzes per table
Key values
- pg_catalog.pg_type (40) Main table analyzed (database zemm_produktiv_8)
- 147 analyzes Total
Table Number of analyzes zemm_produktiv_8.pg_catalog.pg_type 40 zemm_produktiv_8.pg_catalog.pg_attribute 30 zemm_produktiv_8.pg_catalog.pg_class 21 zemm_produktiv_8.pg_catalog.pg_depend 19 zemm_produktiv_8.public.breedingssires 9 zemm_produktiv_8.public.breedingsdams 9 zemm_produktiv_8.public.cages_search_mview 2 zemm_produktiv_8.public.tmptasks 2 zemm_monitoring.observability.metrics_timeseries 2 zemm_monitoring.observability.system_metrics 1 zemm_produktiv_8.public.tasks 1 zemm_produktiv_8.public.users 1 fbi_unibi.pg_catalog.pg_shdepend 1 template0.pg_catalog.pg_shdepend 1 zemm_produktiv_8.pg_catalog.pg_shdepend 1 template1.pg_catalog.pg_shdepend 1 fbi_ci_db.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.cost_history 1 zemm_monitoring.pg_catalog.pg_shdepend 1 invdb.pg_catalog.pg_shdepend 1 zemm_monitoring.observability.uptime_checks 1 zemm_monitoring.observability.nginx_counters 1 Total 147 Vacuums per table
Key values
- pg_catalog.pg_type (13) Main table vacuumed on database zemm_produktiv_8
- 73 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 13 13 0 0 0 0 0 678 170 152,840 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 10 10 0 0 0 0 0 1,385 480 307,460 0 0 zemm_produktiv_8.public.breedingssires 9 0 0 0 0 0 0 1,332 36 84,528 0 0 zemm_produktiv_8.public.breedingsdams 9 0 0 0 0 0 0 1,782 36 111,078 0 0 zemm_produktiv_8.pg_catalog.pg_class 6 6 0 0 0 0 0 595 203 239,674 2 2 zemm_monitoring.pg_toast.pg_toast_67431 5 0 0 0 0 0 0 4,410 1,477 3,356,169 1,458 8,748 zemm_produktiv_8.pg_catalog.pg_depend 5 5 0 0 0 0 0 660 228 262,448 0 0 fbi_unire.pg_catalog.pg_shdepend 3 3 0 0 0 0 0 264 81 144,371 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 3 3 0 0 0 0 0 639 158 849,723 43 127 zemm_monitoring.observability.system_metrics 1 0 0 0 0 0 0 1,250 1,250 2,038,535 0 0 zemm_monitoring.pg_catalog.pg_statistic 1 1 0 0 0 0 0 110 30 87,792 18 41 zemm_produktiv_8.public.cages_search_mview 1 1 0 0 0 0 0 615 324 1,088,235 27 300 zemm_monitoring.observability.db_top_queries 1 0 0 0 0 0 0 54,109 38,040 128,711,210 8,008 70,213 zemm_produktiv_8.public.tasks 1 1 0 0 0 0 0 47,318 34 3,486,485 1 2 zemm_produktiv_8.public.users 1 1 0 0 0 0 0 172 77 188,050 48 115 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 0 0 0 0 0 205 71 232,780 46 145 zemm_monitoring.observability.phpfpm_counters 1 0 0 0 0 0 0 965 965 908,118 0 0 zemm_produktiv_8.public.user_ui_prefs 1 1 0 0 0 0 0 197 78 133,953 10 70 zemm_monitoring.observability.app_events 1 0 0 0 0 0 0 8,487 8,488 11,907,232 0 0 Total 73 46 0 0 0 0 0 125,173 52,226 154,290,681 9,661 79,763 Vacuum throughput per table
Key values
- observability.db_top_queries (9.51) Max CPU elapsed for vacuum on database zemm_monitoring
- observability.db_top_queries (6.208 ms) Max I/O read time for vacuum on database zemm_monitoring
- public.breedingssires (0.26 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 0 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 0 0 0.1 zemm_produktiv_8.public.breedingssires 0 0.26 0 zemm_produktiv_8.public.breedingsdams 0 0.126 0 zemm_produktiv_8.pg_catalog.pg_class 0 0 0.01 zemm_monitoring.pg_toast.pg_toast_67431 0 0 0.35 zemm_produktiv_8.pg_catalog.pg_depend 0.075 0 0.05 fbi_unire.pg_catalog.pg_shdepend 0 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 0.119 0 0.03 zemm_monitoring.observability.system_metrics 0.732 0 0.3 zemm_monitoring.pg_catalog.pg_statistic 1.161 0 0 zemm_produktiv_8.public.cages_search_mview 0 0 0.08 zemm_monitoring.observability.db_top_queries 6.208 0.087 9.51 zemm_produktiv_8.public.tasks 0 0 0.61 zemm_produktiv_8.public.users 0.446 0 0.02 zemm_produktiv_8.pg_catalog.pg_statistic 0.417 0 0.02 zemm_monitoring.observability.phpfpm_counters 0.721 0 0.22 zemm_produktiv_8.public.user_ui_prefs 4.793 0 0.03 zemm_monitoring.observability.app_events 0.594 0.038 1.96 Total 15.266 0.511 13.29 Tuples removed per table
Key values
- public.tasks (53821) Main table with removed tuples on database zemm_produktiv_8
- 74440 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain zemm_produktiv_8.public.tasks 1 1 53,821 56,889 0 0 16,753 zemm_produktiv_8.pg_catalog.pg_attribute 10 10 10,319 56,278 0 0 1,840 zemm_produktiv_8.pg_catalog.pg_depend 5 5 4,318 20,855 0 0 275 zemm_produktiv_8.pg_catalog.pg_type 13 13 2,600 10,803 0 0 403 fbi_unire.pg_catalog.pg_shdepend 3 3 1,257 11,652 0 0 114 zemm_produktiv_8.pg_catalog.pg_class 6 6 903 5,364 0 0 252 zemm_produktiv_8.pg_toast.pg_toast_2619 3 3 354 879 0 0 318 zemm_produktiv_8.public.cages_search_mview 1 1 299 13,829 0 0 234 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 285 1,272 0 0 144 zemm_produktiv_8.public.users 1 1 176 756 0 0 108 zemm_monitoring.pg_catalog.pg_statistic 1 1 108 463 0 0 45 zemm_monitoring.observability.system_metrics 1 0 0 46,315 0 0 6,054 zemm_monitoring.observability.db_top_queries 1 0 0 10,451,975 0 0 1,143,659 zemm_produktiv_8.public.breedingssires 9 0 0 202,875 0 0 1,296 zemm_monitoring.observability.phpfpm_counters 1 0 0 72,395 0 0 4,582 zemm_produktiv_8.public.user_ui_prefs 1 1 0 744 0 0 116 zemm_monitoring.pg_toast.pg_toast_67431 5 0 0 1,969,682 0 0 331,412 zemm_produktiv_8.public.breedingsdams 9 0 0 274,077 0 0 1,746 zemm_monitoring.observability.app_events 1 0 0 1,601,229 0 0 165,095 Total 73 46 74,440 14,798,332 0 0 1,674,446 Pages removed per table
Key values
- unknown (0) Main table with removed pages on database unknown
- 0 pages Total removed
Pages removed per tables
NO DATASET
Table Number of vacuums Index scans Tuples removed Pages removed zemm_monitoring.observability.system_metrics 1 0 0 0 zemm_monitoring.pg_catalog.pg_statistic 1 1 108 0 zemm_produktiv_8.public.cages_search_mview 1 1 299 0 zemm_monitoring.observability.db_top_queries 1 0 0 0 zemm_produktiv_8.public.tasks 1 1 53821 0 zemm_produktiv_8.public.breedingssires 9 0 0 0 zemm_produktiv_8.public.users 1 1 176 0 zemm_produktiv_8.pg_catalog.pg_type 13 13 2600 0 zemm_produktiv_8.pg_catalog.pg_class 6 6 903 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 285 0 fbi_unire.pg_catalog.pg_shdepend 3 3 1257 0 zemm_monitoring.observability.phpfpm_counters 1 0 0 0 zemm_produktiv_8.public.user_ui_prefs 1 1 0 0 zemm_monitoring.pg_toast.pg_toast_67431 5 0 0 0 zemm_produktiv_8.public.breedingsdams 9 0 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 3 3 354 0 zemm_monitoring.observability.app_events 1 0 0 0 zemm_produktiv_8.pg_catalog.pg_depend 5 5 4318 0 zemm_produktiv_8.pg_catalog.pg_attribute 10 10 10319 0 Total 73 46 74,440 0 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Apr 16 00 0 0 01 3 1 02 0 0 03 0 0 04 1 0 05 0 0 06 2 3 07 13 17 08 2 9 09 11 18 10 4 11 11 5 10 12 3 11 13 6 12 14 4 12 15 7 12 16 4 8 17 4 12 18 2 7 19 0 0 20 0 0 21 2 2 22 0 2 23 0 0 - 9.51 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- ShareLock Main Lock Type
- 2 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query 1 1 1s 1s 1s 1s create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 10:58:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 11:23:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 13:05:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
2 1 1s 1s 1s 1s create index if not exists idx_db_top_queries_tenant on observability.db_top_queries (tenant_key, collected_at desc);-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-16 10:58:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Queries that waited the most
Rank Wait time Query 1 1s CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-04-16 07:48:02 - Database: zemm_monitoring - User: labanimal ]
2 1s CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-04-16 18:46:02 - Database: zemm_monitoring - User: labanimal ]
-
Queries
Queries by type
Key values
- 103 Total read queries
- 24,495 Total write queries
Queries by database
Key values
- zemm_monitoring Main database
- 24,484 Requests
- 6h10m44s (zemm_monitoring)
- Main time consuming database
Queries by user
Key values
- labanimal Main user
- 524,332 Requests
User Request type Count Duration deploy Total 58 14m47s cte 4 1m18s ddl 30 4m31s others 9 22s849ms select 9 6m3s labanimal Total 524,332 13d14h17m23s copy from 8 18s286ms copy to 96 4m30s cte 2,481 2h42m14s ddl 519,725 13d10h51m57s others 179 2m6s select 1,801 35m30s tcl 3 1s733ms update 25 26s933ms postgres Total 134 2m59s copy to 134 2m59s Duration by user
Key values
- 13d14h17m23s (labanimal) Main time consuming user
User Request type Count Duration deploy Total 58 14m47s cte 4 1m18s ddl 30 4m31s others 9 22s849ms select 9 6m3s labanimal Total 524,332 13d14h17m23s copy from 8 18s286ms copy to 96 4m30s cte 2,481 2h42m14s ddl 519,725 13d10h51m57s others 179 2m6s select 1,801 35m30s tcl 3 1s733ms update 25 26s933ms postgres Total 134 2m59s copy to 134 2m59s Queries by host
Key values
- unknown Main host
- 524,304 Requests
- 13d14h13m53s (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 26 3m23s select 1 2m56s update 25 26s933ms [local] Total 192 17m46s copy to 134 2m59s cte 4 1m18s ddl 30 4m31s others 9 22s849ms select 9 6m3s unknown Total 524,304 13d14h13m53s copy from 8 18s286ms copy to 96 4m30s cte 2,481 2h42m14s ddl 519,723 13d10h51m51s others 179 2m6s select 1,800 32m33s tcl 3 1s733ms Queries by application
Key values
- unknown Main application
- 24,484 Requests
- 6h10m44s (unknown)
- Main time consuming application
Application Request type Count Duration _backend_wean_api.php_zemm_produktiv_8_localhost_5432 Total 1 772ms select 1 772ms _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da Total 2 1s426ms select 2 1s426ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b Total 12 8s444ms select 12 8s444ms _desktop_index.php_zemm_produktiv_8_localhost_5432 Total 95 1m27s cte 7 11s268ms select 88 1m16s expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 Total 1 883ms update 1 883ms pg_dump Total 5 6s596ms copy to 5 6s596ms unknown Total 24,484 6h10m44s cte 2 7s335ms ddl 24,480 6h10m34s Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-04-16 08:25:48 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 93 500-1000ms duration
Slowest individual queries
Rank Duration Query 1 3s686ms 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-16 04:57:30+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-16 04:57:30+02' AND '2026-04-16 10:57:30+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-16 04:57:30+02' AND '2026-04-16 10:57:30+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-16 10:57:33 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
2 3s686ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
3 3s686ms 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-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
4 3s686ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
5 3s686ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
6 3s686ms 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-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
7 3s686ms CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
8 3s686ms CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
9 3s686ms 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-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
10 3s686ms CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
11 3s686ms 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-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
12 3s686ms 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-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
13 3s686ms 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-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
14 3s686ms 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-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
15 3s686ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
16 3s686ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
17 3s686ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
18 3s686ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);[ Date: 2026-04-16 10:58:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
19 3s649ms 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-15 22:58:16+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-15 22:58:16+02' AND '2026-04-16 10:58:16+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-15 22:58:16+02' AND '2026-04-16 10:58:16+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-16 10:58:20 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
20 3s649ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-04-16 10:59:01 - 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 21m48s 1,440 548ms 3s686ms 908ms 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 #1
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
2 21m48s 1,440 548ms 3s686ms 908ms 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 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
3 21m48s 1,440 548ms 3s686ms 908ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
4 21m48s 1,440 548ms 3s686ms 908ms 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 #4
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
5 21m48s 1,440 548ms 3s686ms 908ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
6 21m48s 1,440 548ms 3s686ms 908ms 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 #6
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
7 21m48s 1,440 548ms 3s686ms 908ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
8 21m48s 1,440 548ms 3s686ms 908ms 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 #8
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
9 21m47s 1,440 548ms 3s686ms 908ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
10 21m47s 1,440 548ms 3s686ms 908ms 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 #10
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
11 21m47s 1,440 548ms 3s686ms 908ms 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 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
12 21m47s 1,440 548ms 3s686ms 908ms create schema if not exists observability;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
13 21m47s 1,440 548ms 3s686ms 908ms 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 #13
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
14 21m47s 1,440 548ms 3s686ms 908ms 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 #14
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
15 21m47s 1,440 548ms 3s686ms 908ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
16 21m47s 1,440 548ms 3s686ms 908ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
17 21m47s 1,440 548ms 3s686ms 908ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
18 22s978ms 31 729ms 781ms 741ms 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 #18
Day Hour Count Duration Avg duration Apr 16 08 3 2s240ms 746ms 09 1 733ms 733ms 10 4 2s985ms 746ms 11 5 3s701ms 740ms 12 7 5s171ms 738ms 13 4 2s984ms 746ms 16 1 733ms 733ms 17 4 2s955ms 738ms 18 2 1s472ms 736ms [ User: labanimal - Total duration: 22s978ms - Times executed: 31 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 17s822ms - Times executed: 24 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 4s414ms - Times executed: 6 ]
[ Application: _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da - Total duration: 741ms - 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, 452) AS is_owner, user_is_tgm (animals_search_mview.editor, 452) AS is_editor, user_is_tgm (animals_search_mview.tourist, 452) 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-16 09:37:41 Duration: 781ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_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, 423) AS is_owner, user_is_tgm (animals_search_mview.editor, 423) AS is_editor, user_is_tgm (animals_search_mview.tourist, 423) 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-16 07:48:27 Duration: 761ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_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, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 12:25:14 Duration: 757ms 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-16_000000.csv
19 20s992ms 31 665ms 749ms 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 #19
Day Hour Count Duration Avg duration Apr 16 08 3 2s29ms 676ms 09 1 667ms 667ms 10 4 2s760ms 690ms 11 5 3s382ms 676ms 12 7 4s708ms 672ms 13 4 2s721ms 680ms 16 1 667ms 667ms 17 4 2s700ms 675ms 18 2 1s353ms 676ms [ User: labanimal - Total duration: 20s992ms - Times executed: 31 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 16s277ms - Times executed: 24 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 4s30ms - Times executed: 6 ]
[ Application: _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da - Total duration: 685ms - 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, 452) AS is_owner, user_is_tgm (animals_search_mview.editor, 452) AS is_editor, user_is_tgm (animals_search_mview.tourist, 452) 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-16 09:37:42 Duration: 749ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 12:25:11 Duration: 690ms 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-16_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 17:19:02 Duration: 688ms 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-16_000000.csv
20 10s280ms 6 1s637ms 1s766ms 1s713ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and cagess."cageName" like (?) and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 16 08 1 1s710ms 1s710ms 09 1 1s637ms 1s637ms 10 2 3s422ms 1s711ms 12 2 3s510ms 1s755ms [ User: labanimal - Total duration: 10s280ms - Times executed: 6 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 10s280ms - Times executed: 6 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 28) THEN TRUE WHEN user_is_tgm (dam.editor, 28) THEN TRUE WHEN user_is_tgm (dam.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 28) THEN TRUE WHEN user_is_tgm (sire.editor, 28) THEN TRUE WHEN user_is_tgm (sire.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('71%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 11:23:37 Duration: 1s766ms 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-16_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 28) THEN TRUE WHEN user_is_tgm (dam.editor, 28) THEN TRUE WHEN user_is_tgm (dam.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 28) THEN TRUE WHEN user_is_tgm (sire.editor, 28) THEN TRUE WHEN user_is_tgm (sire.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('71%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 11:40:47 Duration: 1s743ms 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-16_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 477) THEN TRUE WHEN user_is_tgm (dam.editor, 477) THEN TRUE WHEN user_is_tgm (dam.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 477) THEN TRUE WHEN user_is_tgm (sire.editor, 477) THEN TRUE WHEN user_is_tgm (sire.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('53-063') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 09:49:36 Duration: 1s731ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 1,440 21m48s 548ms 3s686ms 908ms 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 #1
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
2 1,440 21m48s 548ms 3s686ms 908ms 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 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
3 1,440 21m48s 548ms 3s686ms 908ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
4 1,440 21m48s 548ms 3s686ms 908ms 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 #4
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
5 1,440 21m48s 548ms 3s686ms 908ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
6 1,440 21m48s 548ms 3s686ms 908ms 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 #6
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
7 1,440 21m48s 548ms 3s686ms 908ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
8 1,440 21m48s 548ms 3s686ms 908ms 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 #8
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
9 1,440 21m47s 548ms 3s686ms 908ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
10 1,440 21m47s 548ms 3s686ms 908ms 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 #10
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
11 1,440 21m47s 548ms 3s686ms 908ms 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 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
12 1,440 21m47s 548ms 3s686ms 908ms create schema if not exists observability;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
13 1,440 21m47s 548ms 3s686ms 908ms 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 #13
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
14 1,440 21m47s 548ms 3s686ms 908ms 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 #14
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
15 1,440 21m47s 548ms 3s686ms 908ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
16 1,440 21m47s 548ms 3s686ms 908ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
17 1,440 21m47s 548ms 3s686ms 908ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
18 31 22s978ms 729ms 781ms 741ms 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 #18
Day Hour Count Duration Avg duration Apr 16 08 3 2s240ms 746ms 09 1 733ms 733ms 10 4 2s985ms 746ms 11 5 3s701ms 740ms 12 7 5s171ms 738ms 13 4 2s984ms 746ms 16 1 733ms 733ms 17 4 2s955ms 738ms 18 2 1s472ms 736ms [ User: labanimal - Total duration: 22s978ms - Times executed: 31 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 17s822ms - Times executed: 24 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 4s414ms - Times executed: 6 ]
[ Application: _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da - Total duration: 741ms - 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, 452) AS is_owner, user_is_tgm (animals_search_mview.editor, 452) AS is_editor, user_is_tgm (animals_search_mview.tourist, 452) 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-16 09:37:41 Duration: 781ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_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, 423) AS is_owner, user_is_tgm (animals_search_mview.editor, 423) AS is_editor, user_is_tgm (animals_search_mview.tourist, 423) 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-16 07:48:27 Duration: 761ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_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, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 12:25:14 Duration: 757ms 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-16_000000.csv
19 31 20s992ms 665ms 749ms 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 #19
Day Hour Count Duration Avg duration Apr 16 08 3 2s29ms 676ms 09 1 667ms 667ms 10 4 2s760ms 690ms 11 5 3s382ms 676ms 12 7 4s708ms 672ms 13 4 2s721ms 680ms 16 1 667ms 667ms 17 4 2s700ms 675ms 18 2 1s353ms 676ms [ User: labanimal - Total duration: 20s992ms - Times executed: 31 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 16s277ms - Times executed: 24 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 4s30ms - Times executed: 6 ]
[ Application: _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da - Total duration: 685ms - 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, 452) AS is_owner, user_is_tgm (animals_search_mview.editor, 452) AS is_editor, user_is_tgm (animals_search_mview.tourist, 452) 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-16 09:37:42 Duration: 749ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 12:25:11 Duration: 690ms 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-16_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 17:19:02 Duration: 688ms 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-16_000000.csv
20 6 10s280ms 1s637ms 1s766ms 1s713ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and cagess."cageName" like (?) and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 16 08 1 1s710ms 1s710ms 09 1 1s637ms 1s637ms 10 2 3s422ms 1s711ms 12 2 3s510ms 1s755ms [ User: labanimal - Total duration: 10s280ms - Times executed: 6 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 10s280ms - Times executed: 6 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 28) THEN TRUE WHEN user_is_tgm (dam.editor, 28) THEN TRUE WHEN user_is_tgm (dam.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 28) THEN TRUE WHEN user_is_tgm (sire.editor, 28) THEN TRUE WHEN user_is_tgm (sire.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('71%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 11:23:37 Duration: 1s766ms 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-16_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 28) THEN TRUE WHEN user_is_tgm (dam.editor, 28) THEN TRUE WHEN user_is_tgm (dam.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 28) THEN TRUE WHEN user_is_tgm (sire.editor, 28) THEN TRUE WHEN user_is_tgm (sire.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('71%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 11:40:47 Duration: 1s743ms 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-16_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 477) THEN TRUE WHEN user_is_tgm (dam.editor, 477) THEN TRUE WHEN user_is_tgm (dam.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 477) THEN TRUE WHEN user_is_tgm (sire.editor, 477) THEN TRUE WHEN user_is_tgm (sire.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('53-063') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 09:49:36 Duration: 1s731ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 1s637ms 1s766ms 1s713ms 6 10s280ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and cagess."cageName" like (?) and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Apr 16 08 1 1s710ms 1s710ms 09 1 1s637ms 1s637ms 10 2 3s422ms 1s711ms 12 2 3s510ms 1s755ms [ User: labanimal - Total duration: 10s280ms - Times executed: 6 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 10s280ms - Times executed: 6 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 28) THEN TRUE WHEN user_is_tgm (dam.editor, 28) THEN TRUE WHEN user_is_tgm (dam.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 28) THEN TRUE WHEN user_is_tgm (sire.editor, 28) THEN TRUE WHEN user_is_tgm (sire.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('71%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 11:23:37 Duration: 1s766ms 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-16_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 28) THEN TRUE WHEN user_is_tgm (dam.editor, 28) THEN TRUE WHEN user_is_tgm (dam.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 28) THEN TRUE WHEN user_is_tgm (sire.editor, 28) THEN TRUE WHEN user_is_tgm (sire.tourist, 28) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('71%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 11:40:47 Duration: 1s743ms 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-16_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 477) THEN TRUE WHEN user_is_tgm (dam.editor, 477) THEN TRUE WHEN user_is_tgm (dam.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 477) THEN TRUE WHEN user_is_tgm (sire.editor, 477) THEN TRUE WHEN user_is_tgm (sire.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('53-063') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-16 09:49:36 Duration: 1s731ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
2 548ms 3s686ms 908ms 1,440 21m48s 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 #2
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
3 548ms 3s686ms 908ms 1,440 21m48s create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
4 548ms 3s686ms 908ms 1,440 21m48s create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
5 548ms 3s686ms 908ms 1,440 21m48s 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 #5
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
6 548ms 3s686ms 908ms 1,440 21m48s alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
7 548ms 3s686ms 908ms 1,440 21m48s 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 #7
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
8 548ms 3s686ms 908ms 1,440 21m48s alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
9 548ms 3s686ms 908ms 1,440 21m48s 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 #9
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s606ms 743ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m48s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
10 548ms 3s686ms 908ms 1,440 21m47s create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
11 548ms 3s686ms 908ms 1,440 21m47s 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 #11
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
12 548ms 3s686ms 908ms 1,440 21m47s 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 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s677ms 777ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
13 548ms 3s686ms 908ms 1,440 21m47s create schema if not exists observability;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
14 548ms 3s686ms 908ms 1,440 21m47s 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 #14
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
15 548ms 3s686ms 908ms 1,440 21m47s 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 #15
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
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-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_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-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
16 548ms 3s686ms 908ms 1,440 21m47s create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
17 548ms 3s686ms 908ms 1,440 21m47s create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
18 548ms 3s686ms 908ms 1,440 21m47s create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Apr 16 01 60 0ms 0ms 02 60 25s635ms 427ms 03 60 53s38ms 883ms 04 60 53s38ms 883ms 05 60 53s38ms 883ms 06 60 53s38ms 883ms 07 60 42s639ms 710ms 08 60 46s540ms 775ms 09 60 1m21s 1s364ms 10 60 43s708ms 728ms 11 60 51s572ms 859ms 12 60 2m22s 2s370ms 13 60 40s843ms 680ms 14 60 1m15s 1s254ms 15 60 59s817ms 996ms 16 60 53s506ms 891ms 17 60 45s393ms 756ms 18 60 40s610ms 676ms 19 60 44s270ms 737ms 20 60 1m 1s 21 60 1m 1s 22 60 1m 1s 23 60 1m 1s 00 60 1m1s 1s24ms [ User: labanimal - Total duration: 21m47s - Times executed: 1349 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 10:58:01 Duration: 3s686ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 11:23:01 Duration: 3s649ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-16 13:05:01 Duration: 3s572ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
19 729ms 781ms 741ms 31 22s978ms 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 16 08 3 2s240ms 746ms 09 1 733ms 733ms 10 4 2s985ms 746ms 11 5 3s701ms 740ms 12 7 5s171ms 738ms 13 4 2s984ms 746ms 16 1 733ms 733ms 17 4 2s955ms 738ms 18 2 1s472ms 736ms [ User: labanimal - Total duration: 22s978ms - Times executed: 31 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 17s822ms - Times executed: 24 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 4s414ms - Times executed: 6 ]
[ Application: _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da - Total duration: 741ms - 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, 452) AS is_owner, user_is_tgm (animals_search_mview.editor, 452) AS is_editor, user_is_tgm (animals_search_mview.tourist, 452) 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-16 09:37:41 Duration: 781ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_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, 423) AS is_owner, user_is_tgm (animals_search_mview.editor, 423) AS is_editor, user_is_tgm (animals_search_mview.tourist, 423) 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-16 07:48:27 Duration: 761ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_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, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 12:25:14 Duration: 757ms 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-16_000000.csv
20 665ms 749ms 677ms 31 20s992ms 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 16 08 3 2s29ms 676ms 09 1 667ms 667ms 10 4 2s760ms 690ms 11 5 3s382ms 676ms 12 7 4s708ms 672ms 13 4 2s721ms 680ms 16 1 667ms 667ms 17 4 2s700ms 675ms 18 2 1s353ms 676ms [ User: labanimal - Total duration: 20s992ms - Times executed: 31 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 16s277ms - Times executed: 24 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 4s30ms - Times executed: 6 ]
[ Application: _desktop__sire_name__dam_name__sire_id__dam_id__sire_strain__da - Total duration: 685ms - 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, 452) AS is_owner, user_is_tgm (animals_search_mview.editor, 452) AS is_editor, user_is_tgm (animals_search_mview.tourist, 452) 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-16 09:37:42 Duration: 749ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 12:25:11 Duration: 690ms 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-16_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) 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-16 17:19:02 Duration: 688ms 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-16_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
- 128,244 Event entries
- (EVENTLOG entries are formaly LOG level entries that are not queries)
Events distribution (except queries)
Key values
- 0 PANIC entries
- 0 FATAL entries
- 0 ERROR entries
- 0 WARNING entries
- 8 EVENTLOG entries
Most Frequent Errors/Events
Key values
- 3 Max number of times the same event was reported
- 8 Total events found
Rank Times reported Error 1 3 ERROR: invalid input syntax for type boolean: ...
Times Reported Most Frequent Error / Event #1
Day Hour Count Apr 16 22 3 - ERROR: invalid input syntax for type boolean: ""
- ERROR: invalid input syntax for type boolean: ""
- ERROR: invalid input syntax for type boolean: ""
Statement: SELECT a.id AS animal_id, COALESCE(a."animalID", a.identification, '') AS animal_identifier, a.fate, COALESCE(a."fateComment", '') AS fate_comment, a."deathDate" AS death_date, a."outgoingDate" AS outgoing_date, a."birthDate" AS birth_date, COALESCE(a.sex, '') AS sex, COALESCE(a.transgen, 0) AS transgen, COALESCE(a."geneStatus", '') AS gene_status, COALESCE(a."geneFlanking", '') AS gene_flanking, COALESCE(a."geneDeleted", '') AS gene_deleted, COALESCE(a.genecomment, '') AS gene_comment, COALESCE(a.project, '') AS project_id, COALESCE(a."plannedUseFor", '') AS planned_use_for, COALESCE(l.id, 0) AS license_id, COALESCE(l.application_id, '') AS application_id, COALESCE(l.az, '') AS az, COALESCE(l.title, '') AS license_title, COALESCE(l.category, 0) AS license_category, COALESCE(l.permission, '') AS permission, COALESCE(g.name, '') AS workgroup, COALESCE(s.line_abnormality, '') AS line_abnormality, COALESCE(s.cancel_criteria, '') AS cancel_criteria, COALESCE(s.severityid, 0) AS strain_severityid, COALESCE(stress.max_score, 0)::numeric AS stress_hint_score FROM animals a LEFT JOIN licenses l ON (a.project ~ '^[0-9]+$' AND l.id = CAST(a.project AS BIGINT)) LEFT JOIN groups g ON g.id = l.workgroup LEFT JOIN strains s ON s.id = a.strain LEFT JOIN ( SELECT sd.animals_id AS animal_id, MAX(sl."maxvalue") AS max_score FROM scoresheet_diary sd INNER JOIN stresslevel_response slr ON slr.scoresheet_response_id = sd.scoresheet_response_id INNER JOIN stress_levels sl ON sl.id = slr.stresslevel_id GROUP BY sd.animals_id ) stress ON stress.animal_id = a.id INNER JOIN "groupMembers" gm ON gm."group" = g.id AND gm."user" = 441 WHERE NOT(a.deleted) AND ( (a."deathDate" IS NOT NULL AND a."deathDate" >= '2026-01-01'::DATE AND a."deathDate" <= '2026-12-31'::DATE) OR (a."outgoingDate" IS NOT NULL AND a."outgoingDate" >= '2026-01-01'::DATE AND a."outgoingDate" <= '2026-12-31'::DATE) OR (a.fate IN (1, 10, 11, 13, 14, 15, 9, 4) AND a."deathDate" IS NULL AND a."outgoingDate" IS NULL) ) ORDER BY g.name, l.application_id, a.id
Date: 2026-04-16 21:29:24 Database: zemm_produktiv_8 Application: _desktop_index.php_command_reports_subcommand_authority_meldung User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Statement: SELECT a.id AS animal_id, COALESCE(a."animalID", a.identification, '') AS animal_identifier, a.fate, COALESCE(a."fateComment", '') AS fate_comment, a."deathDate" AS death_date, a."outgoingDate" AS outgoing_date, a."birthDate" AS birth_date, COALESCE(a.sex, '') AS sex, COALESCE(a.transgen, 0) AS transgen, COALESCE(a."geneStatus", '') AS gene_status, COALESCE(a."geneFlanking", '') AS gene_flanking, COALESCE(a."geneDeleted", '') AS gene_deleted, COALESCE(a.genecomment, '') AS gene_comment, COALESCE(a.project, '') AS project_id, COALESCE(a."plannedUseFor", '') AS planned_use_for, COALESCE(l.id, 0) AS license_id, COALESCE(l.application_id, '') AS application_id, COALESCE(l.az, '') AS az, COALESCE(l.title, '') AS license_title, COALESCE(l.category, 0) AS license_category, COALESCE(l.permission, '') AS permission, COALESCE(g.name, '') AS workgroup, COALESCE(s.line_abnormality, '') AS line_abnormality, COALESCE(s.cancel_criteria, '') AS cancel_criteria, COALESCE(s.severityid, 0) AS strain_severityid, COALESCE(stress.max_score, 0)::numeric AS stress_hint_score FROM animals a LEFT JOIN licenses l ON (a.project ~ '^[0-9]+$' AND l.id = CAST(a.project AS BIGINT)) LEFT JOIN groups g ON g.id = l.workgroup LEFT JOIN strains s ON s.id = a.strain LEFT JOIN ( SELECT sd.animals_id AS animal_id, MAX(sl."maxvalue") AS max_score FROM scoresheet_diary sd INNER JOIN stresslevel_response slr ON slr.scoresheet_response_id = sd.scoresheet_response_id INNER JOIN stress_levels sl ON sl.id = slr.stresslevel_id GROUP BY sd.animals_id ) stress ON stress.animal_id = a.id INNER JOIN "groupMembers" gm ON gm."group" = g.id AND gm."user" = 441 WHERE NOT(a.deleted) AND ( (a."deathDate" IS NOT NULL AND a."deathDate" >= '2026-01-01'::DATE AND a."deathDate" <= '2026-12-31'::DATE) OR (a."outgoingDate" IS NOT NULL AND a."outgoingDate" >= '2026-01-01'::DATE AND a."outgoingDate" <= '2026-12-31'::DATE) OR (a.fate IN (1, 10, 11, 13, 14, 15, 9, 4) AND a."deathDate" IS NULL AND a."outgoingDate" IS NULL) ) ORDER BY g.name, l.application_id, a.id
Date: 2026-04-16 21:29:30 Database: zemm_produktiv_8 Application: _desktop_index.php_command_reports_subcommand_authority_meldung User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Statement: SELECT a.id AS animal_id, COALESCE(a."animalID", a.identification, '') AS animal_identifier, a.fate, COALESCE(a."fateComment", '') AS fate_comment, a."deathDate" AS death_date, a."outgoingDate" AS outgoing_date, a."birthDate" AS birth_date, COALESCE(a.sex, '') AS sex, COALESCE(a.transgen, 0) AS transgen, COALESCE(a."geneStatus", '') AS gene_status, COALESCE(a."geneFlanking", '') AS gene_flanking, COALESCE(a."geneDeleted", '') AS gene_deleted, COALESCE(a.genecomment, '') AS gene_comment, COALESCE(a.project, '') AS project_id, COALESCE(a."plannedUseFor", '') AS planned_use_for, COALESCE(l.id, 0) AS license_id, COALESCE(l.application_id, '') AS application_id, COALESCE(l.az, '') AS az, COALESCE(l.title, '') AS license_title, COALESCE(l.category, 0) AS license_category, COALESCE(l.permission, '') AS permission, COALESCE(g.name, '') AS workgroup, COALESCE(s.line_abnormality, '') AS line_abnormality, COALESCE(s.cancel_criteria, '') AS cancel_criteria, COALESCE(s.severityid, 0) AS strain_severityid, COALESCE(stress.max_score, 0)::numeric AS stress_hint_score FROM animals a LEFT JOIN licenses l ON (a.project ~ '^[0-9]+$' AND l.id = CAST(a.project AS BIGINT)) LEFT JOIN groups g ON g.id = l.workgroup LEFT JOIN strains s ON s.id = a.strain LEFT JOIN ( SELECT sd.animals_id AS animal_id, MAX(sl."maxvalue") AS max_score FROM scoresheet_diary sd INNER JOIN stresslevel_response slr ON slr.scoresheet_response_id = sd.scoresheet_response_id INNER JOIN stress_levels sl ON sl.id = slr.stresslevel_id GROUP BY sd.animals_id ) stress ON stress.animal_id = a.id INNER JOIN "groupMembers" gm ON gm."group" = g.id AND gm."user" = 441 WHERE NOT(a.deleted) AND ( (a."deathDate" IS NOT NULL AND a."deathDate" >= '2026-01-01'::DATE AND a."deathDate" <= '2026-12-31'::DATE) OR (a."outgoingDate" IS NOT NULL AND a."outgoingDate" >= '2026-01-01'::DATE AND a."outgoingDate" <= '2026-12-31'::DATE) OR (a.fate IN (1, 10, 11, 13, 14, 15, 9, 4) AND a."deathDate" IS NULL AND a."outgoingDate" IS NULL) ) ORDER BY g.name, l.application_id, a.id
Date: 2026-04-16 21:32:10 Database: zemm_produktiv_8 Application: _desktop_index.php_command_reports_subcommand_authority_meldung User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
2 2 LOG: process ... still waiting for ShareLock on relation ... of database ... after ... ms
Times Reported Most Frequent Error / Event #2
Day Hour Count Apr 16 08 1 19 1 - LOG: process 643072 still waiting for ShareLock on relation 67411 of database 51653 after 1000.063 ms
- LOG: process 852439 still waiting for ShareLock on relation 67431 of database 51653 after 1000.062 ms
Detail: Process holding the lock: 642959. Wait queue: 643072.
Statement: CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC)Date: 2026-04-16 07:48:02 Database: zemm_monitoring Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Detail: Process holding the lock: 852320. Wait queue: 852439.
Statement: CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC)Date: 2026-04-16 18:46:02 Database: zemm_monitoring Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
3 2 ERROR: canceling autovacuum task
Times Reported Most Frequent Error / Event #3
Day Hour Count Apr 16 08 1 19 1 - ERROR: canceling autovacuum task
- ERROR: canceling autovacuum task
Context: while scanning block 156610 of relation "observability.app_events" automatic vacuum of table "zemm_monitoring.observability.app_events"
Date: 2026-04-16 07:48:02 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
Context: while scanning block 1105578 of relation "observability.db_top_queries" automatic vacuum of table "zemm_monitoring.observability.db_top_queries"
Date: 2026-04-16 18:46:02 Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv
4 1 ERROR: syntax error at end of input
Times Reported Most Frequent Error / Event #4
Day Hour Count Apr 16 22 1 - ERROR: syntax error at end of input
Statement: SELECT u.id, u."fullName", u.title, u.name, u.pass, u.disablemail, u.darkmode, u.theme, u."eMail", u.language, u."ILVnum", u."FEMnum", u."costCentre", u."internInstructionNR", u."mailHost", u."mailMethod", u."mailSSL", u."mailPort", u."mailUser", u."mailPass", u.role, u."group", u.affiliation, u.screens, u.actions, u.available FROM users u WHERE u.id =
Date: 2026-04-16 21:34:52 Database: zemm_produktiv_8 Application: _desktop_index.php_command_profile_subcommand_authority_meldung User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-16_000000.csv