-
Global information
- Generated on Mon Jun 15 06:05:53 2026
- Log file: /var/log/postgresql/postgresql-2026-05-13_000000.csv, ..., /var/log/postgresql/postgresql-2026-06-15_000000.csv
- Parsed 303,660 log entries in 5m52s
- Log start from 2026-06-10 00:00:01 to 2026-06-10 23:59:03
-
Overview
Global Stats
- 52 Number of unique normalized queries
- 24,664 Number of queries
- 2d2h21m54s Total query duration
- 2026-06-10 00:00:01 First query
- 2026-06-10 23:59:01 Last query
- 18 queries/s at 2026-06-10 10:52:01 Query peak
- 2d2h21m54s Total query duration
- 0ms Prepare/parse total duration
- 0ms Bind total duration
- 2d2h21m54s Execute total duration
- 2 Number of events
- 2 Number of unique normalized events
- 1 Max number of times the same event was reported
- 0 Number of cancellation
- 91 Total number of automatic vacuums
- 228 Total number of automatic analyzes
- 0 Number temporary file
- 0 Max size of temporary file
- 0.00 B Average size of temporary file
- 28,481 Total number of sessions
- 6 sessions at 2026-06-10 17:26:35 Session peak
- 1h38m22s Total duration of sessions
- 207ms Average duration of sessions
- 0 Average queries per session
- 6s366ms Average queries duration per session
- 0ms Average idle time per session
- 28,481 Total number of connections
- 33 connections/s at 2026-06-10 16:50:58 Connection peak
- 3 Total number of databases
SQL Traffic
Key values
- 18 queries/s Query Peak
- 2026-06-10 10:52:01 Date
SELECT Traffic
Key values
- 2 queries/s Query Peak
- 2026-06-10 11:04:58 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 17 queries/s Query Peak
- 2026-06-10 15:02:01 Date
Queries duration
Key values
- 2d2h21m54s 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) Jun 10 00 1,025 0ms 13s351ms 11s73ms 3m46s 3m58s 4m 01 1,027 502ms 13s371ms 12s848ms 3m47s 3m57s 3m58s 02 1,020 13s371ms 13s371ms 13s371ms 3m47s 3m47s 3m47s 03 1,020 13s371ms 13s371ms 13s371ms 3m47s 3m47s 3m47s 04 1,020 13s371ms 13s371ms 13s371ms 3m47s 3m47s 3m47s 05 1,020 13s371ms 13s371ms 13s371ms 3m47s 3m47s 3m47s 06 1,026 525ms 13s371ms 6s350ms 3m47s 3m47s 3m49s 07 1,041 507ms 1s362ms 702ms 13s733ms 17s824ms 25s521ms 08 1,027 596ms 891ms 700ms 13s949ms 15s162ms 15s763ms 09 1,029 507ms 8s924ms 828ms 12s181ms 14s815ms 2m31s 10 1,056 674ms 8s924ms 1s619ms 40s74ms 40s74ms 2m32s 11 1,052 677ms 800ms 694ms 14s523ms 14s732ms 16s115ms 12 1,024 687ms 761ms 697ms 11s902ms 11s902ms 14s800ms 13 1,046 522ms 13s409ms 1s540ms 26s10ms 3m47s 3m47s 14 1,030 513ms 13s415ms 12s605ms 3m48s 3m59s 4m1s 15 1,025 13s249ms 13s415ms 13s319ms 3m48s 3m59s 4m1s 16 1,021 12s146ms 13s347ms 13s186ms 3m46s 3m46s 3m59s 17 1,029 627ms 12s174ms 10s602ms 3m26s 3m38s 3m39s 18 1,020 12s160ms 12s160ms 12s160ms 3m26s 3m26s 3m26s 19 1,020 12s160ms 12s160ms 12s160ms 3m26s 3m26s 3m26s 20 1,021 0ms 12s160ms 10s951ms 3m26s 3m26s 3m26s 21 1,020 507ms 507ms 507ms 8s625ms 8s625ms 8s625ms 22 1,020 507ms 507ms 507ms 8s625ms 8s625ms 8s625ms 23 1,025 507ms 2s145ms 576ms 8s625ms 25s145ms 25s145ms Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jun 10 00 0 0 0ms 0ms 0ms 0ms 01 1 0 502ms 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 4 0 865ms 0ms 0ms 1s366ms 07 15 0 848ms 0ms 1s362ms 2s104ms 08 6 0 711ms 0ms 0ms 891ms 09 8 0 1s719ms 0ms 0ms 2s907ms 10 33 0 729ms 0ms 2s868ms 2s909ms 11 32 0 726ms 0ms 2s907ms 3s645ms 12 4 0 724ms 0ms 0ms 0ms 13 18 0 689ms 0ms 637ms 2s936ms 14 2 0 528ms 0ms 0ms 513ms 15 0 0 0ms 0ms 0ms 0ms 16 0 0 0ms 0ms 0ms 0ms 17 3 0 726ms 0ms 0ms 0ms 18 0 0 0ms 0ms 0ms 0ms 19 0 0 0ms 0ms 0ms 0ms 20 1 0 507ms 0ms 0ms 0ms 21 0 0 0ms 0ms 0ms 0ms 22 0 0 0ms 0ms 0ms 0ms 23 0 5 1s369ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jun 10 00 0 0 0 0 0ms 0ms 0ms 0ms 01 0 1 0 0 1s254ms 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 Jun 10 00 0 5 5.00 0.00% 01 0 6 6.00 0.00% 02 0 0 0.00 0.00% 03 0 0 0.00 0.00% 04 0 0 0.00 0.00% 05 0 0 0.00 0.00% 06 0 0 0.00 0.00% 07 0 0 0.00 0.00% 08 0 0 0.00 0.00% 09 0 0 0.00 0.00% 10 0 0 0.00 0.00% 11 0 0 0.00 0.00% 12 0 0 0.00 0.00% 13 0 2 2.00 0.00% 14 0 8 8.00 0.00% 15 0 5 5.00 0.00% 16 0 1 1.00 0.00% 17 0 5 5.00 0.00% 18 0 0 0.00 0.00% 19 0 0 0.00 0.00% 20 0 1 1.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 Jun 10 00 867 0.24/s 01 841 0.23/s 02 543 0.15/s 03 549 0.15/s 04 550 0.15/s 05 564 0.16/s 06 1,119 0.31/s 07 2,013 0.56/s 08 2,040 0.57/s 09 2,045 0.57/s 10 1,678 0.47/s 11 2,392 0.66/s 12 1,963 0.55/s 13 1,718 0.48/s 14 1,806 0.50/s 15 1,357 0.38/s 16 835 0.23/s 17 1,241 0.34/s 18 976 0.27/s 19 663 0.18/s 20 627 0.17/s 21 921 0.26/s 22 624 0.17/s 23 549 0.15/s Day Hour Count Average Duration Average idle time Jun 10 00 867 318ms 0ms 01 841 318ms 0ms 02 543 255ms 0ms 03 549 254ms 0ms 04 550 254ms 0ms 05 564 248ms 0ms 06 1,119 207ms 0ms 07 2,013 168ms 0ms 08 2,040 144ms 0ms 09 2,045 167ms 0ms 10 1,678 172ms 0ms 11 2,392 175ms 0ms 12 1,963 183ms 0ms 13 1,718 189ms 0ms 14 1,806 230ms 0ms 15 1,357 233ms 0ms 16 835 221ms 0ms 17 1,241 269ms 0ms 18 976 195ms 0ms 19 663 226ms 0ms 20 627 227ms 0ms 21 921 189ms 0ms 22 624 225ms 0ms 23 549 262ms 0ms -
Connections
Established Connections
Key values
- 33 connections Connection Peak
- 2026-06-10 16:50:58 Date
Connections per database
Key values
- zemm_monitoring Main Database
- 28,481 connections Total
Connections per user
Key values
- labanimal Main User
- 28,481 connections Total
-
Sessions
Simultaneous sessions
Key values
- 6 sessions Session Peak
- 2026-06-10 17:26:35 Date
Histogram of session times
Key values
- 26,070 0-500ms duration
Sessions per database
Key values
- zemm_monitoring Main Database
- 28,481 sessions Total
Sessions per user
Key values
- labanimal Main User
- 28,481 sessions Total
Sessions per host
Key values
- ::1 Main Host
- 28,481 sessions Total
Sessions per application
Key values
- Main Application
- 28,481 sessions Total
Application Count Total Duration Average Duration 22,796 1h24m15s 221ms _backend_cage_autocomplete_api.php_q_2025_limit_12_zemm_dev_loc 1 21ms 21ms _backend_cage_autocomplete_api.php_q_Kadavertruhe_limit_12_zemm 1 34ms 34ms _backend_wean_api.php_litter_id_10130227_zemm_dev_localhost_543 5 615ms 123ms _backend_wean_api.php_litter_id_10130236_zemm_dev_localhost_543 5 692ms 138ms _backend_wean_api.php_litter_id_10130257_zemm_dev_localhost_543 6 797ms 132ms _backend_wean_api.php_litter_id_10132559_zemm_produktiv_8_local 2 253ms 126ms _backend_wean_api.php_litter_id_10132579_zemm_produktiv_8_local 2 258ms 129ms _backend_wean_api.php_litter_id_10132655_zemm_produktiv_8_local 2 251ms 125ms _backend_wean_api.php_litter_id_10132690_zemm_produktiv_8_local 2 245ms 122ms _backend_wean_api.php_litter_id_10132691_zemm_produktiv_8_local 2 248ms 124ms _backend_wean_api.php_litter_id_10132692_zemm_produktiv_8_local 2 251ms 125ms _backend_wean_api.php_litter_id_10132693_zemm_produktiv_8_local 2 253ms 126ms _backend_wean_api.php_litter_id_10132704_zemm_produktiv_8_local 4 496ms 124ms _backend_wean_api.php_litter_id_10132705_zemm_produktiv_8_local 4 497ms 124ms _backend_wean_api.php_litter_id_10132709_zemm_produktiv_8_local 4 496ms 124ms _backend_wean_api.php_litter_id_10132710_zemm_produktiv_8_local 4 503ms 125ms _backend_wean_api.php_litter_id_10132726_zemm_produktiv_8_local 2 249ms 124ms _backend_wean_api.php_litter_id_10132753_zemm_produktiv_8_local 2 250ms 125ms _backend_wean_api.php_litter_id_10132780_zemm_produktiv_8_local 2 251ms 125ms _backend_wean_api.php_litter_id_10132782_zemm_produktiv_8_local 2 254ms 127ms _backend_wean_api.php_litter_id_10132783_zemm_produktiv_8_local 2 246ms 123ms _backend_wean_api.php_litter_id_10132784_zemm_produktiv_8_local 2 251ms 125ms _backend_wean_api.php_litter_id_10132787_zemm_produktiv_8_local 2 251ms 125ms _backend_wean_api.php_litter_id_10132788_zemm_produktiv_8_local 2 250ms 125ms _backend_wean_api.php_litter_id_10132799_zemm_produktiv_8_local 4 504ms 126ms _backend_wean_api.php_litter_id_10132833_zemm_produktiv_8_local 2 250ms 125ms _backend_wean_api.php_litter_id_10132881_zemm_produktiv_8_local 3 369ms 123ms _backend_wean_api.php_litter_id_10132882_zemm_produktiv_8_local 2 248ms 124ms _backend_wean_api.php_litter_id_10132885_zemm_produktiv_8_local 2 249ms 124ms _backend_wean_api.php_litter_id_10132902_zemm_produktiv_8_local 1 123ms 123ms _backend_wean_api.php_litter_id_10132905_zemm_produktiv_8_local 2 247ms 123ms _backend_wean_api.php_litter_id_10132937_zemm_produktiv_8_local 1 123ms 123ms _backend_wean_api.php_litter_id_10132961_zemm_produktiv_8_local 1 126ms 126ms _backend_wean_api.php_litter_id_10132973_zemm_produktiv_8_local 2 252ms 126ms _backend_wean_api.php_litter_id_10132974_zemm_produktiv_8_local 2 253ms 126ms _backend_wean_api.php_litter_id_10132985_zemm_produktiv_8_local 3 394ms 131ms _backend_wean_api.php_litter_id_10132987_zemm_produktiv_8_local 2 250ms 125ms _backend_wean_api.php_litter_id_10132993_zemm_produktiv_8_local 2 260ms 130ms _backend_wean_api.php_litter_id_10132994_zemm_produktiv_8_local 2 250ms 125ms _backend_wean_api.php_litter_id_10133000_zemm_produktiv_8_local 2 256ms 128ms _desktop__zemm_dev_localhost_5432 1 82ms 82ms _desktop__zemm_produktiv_8_localhost_5432 11 609ms 55ms _desktop_index.php_animal_name_2_animal_id_2026_2F000_2F0011_sp 2 88ms 44ms _desktop_index.php_cages_name_47-300_cages_empty__25_val4_cages 1 56ms 56ms _desktop_index.php_cages_name_49-2_2A_cages_empty__25_val4_cage 5 337ms 67ms _desktop_index.php_cages_name_A15.415.1_2A_cages_empty__25_val4 2 172ms 86ms _desktop_index.php_command_animals_breedings_subcommand_add_bre 1 46ms 46ms _desktop_index.php_command_animals_breedings_subcommand_select_ 1 64ms 64ms _desktop_index.php_command_animals_create_subcommand_init_zemm_ 1 61ms 61ms _desktop_index.php_command_animals_edit_subcommand_init_id_1027 1 98ms 98ms _desktop_index.php_command_animals_edit_subcommand_init_id_1029 3 281ms 93ms _desktop_index.php_command_animals_edit_subcommand_init_id_1030 7 681ms 97ms _desktop_index.php_command_animals_edit_subcommand_link_init_va 1 104ms 104ms _desktop_index.php_command_animals_edit_subcommand_m_init_scree 1 135ms 135ms _desktop_index.php_command_animals_litters_create_subcommand_se 4 733ms 183ms _desktop_index.php_command_animals_litters_edit_subcommand_init 1 118ms 118ms _desktop_index.php_command_animals_litters_edit_subcommand_m_in 1 316ms 316ms _desktop_index.php_command_animals_litters_subcommand_init_zemm 3 123ms 41ms _desktop_index.php_command_animals_litters_subcommand_select_ze 1 45ms 45ms _desktop_index.php_command_animals_subcommand_found_val1_101018 2 87ms 43ms _desktop_index.php_command_animals_subcommand_found_val1_1491_v 1 45ms 45ms _desktop_index.php_command_animals_subcommand_found_val1_1573_v 1 45ms 45ms _desktop_index.php_command_animals_subcommand_found_val1_1674_v 4 167ms 41ms _desktop_index.php_command_animals_subcommand_init_zemm_produkt 41 1s791ms 43ms _desktop_index.php_command_animals_subcommand_select_zemm_dev_l 1 68ms 68ms _desktop_index.php_command_cages_edit_subcommand_init_id_101018 1 73ms 73ms _desktop_index.php_command_cages_edit_subcommand_init_id_101022 1 74ms 74ms _desktop_index.php_command_documents_subcommand_init_zemm_produ 1 49ms 49ms _desktop_index.php_command_home_subcommand_init_zemm_produktiv_ 2 186ms 93ms _desktop_index.php_command_login_subcommand_init_zemm_dev_local 7 212ms 30ms _desktop_index.php_command_login_subcommand_init_zemm_produktiv 1,667 49s81ms 29ms _desktop_index.php_command_login_subcommand_init_zemm_test_loca 3 95ms 31ms _desktop_index.php_command_reports_subcommand_animals_per_room_ 1 116ms 116ms _desktop_index.php_command_reports_subcommand_animals_per_user_ 13 1s428ms 109ms _desktop_index.php_command_reports_subcommand_fates_zemm_dev_lo 1 113ms 113ms _desktop_index.php_command_reports_subcommand_init_zemm_dev_loc 2 1s669ms 834ms _desktop_index.php_command_reports_subcommand_init_zemm_produkt 1 120ms 120ms _desktop_index.php_command_reports_subcommand_room_utilisation_ 1 114ms 114ms _desktop_index.php_command_strains_subcommand_init_zemm_produkt 3 205ms 68ms _desktop_index.php_command_tasks_subcommand_create_task_id_50_z 1 51ms 51ms _desktop_index.php_command_tasks_subcommand_edit_id_10134267_ze 1 105ms 105ms _desktop_index.php_command_tasks_subcommand_edit_id_10142841_ze 1 84ms 84ms _desktop_index.php_command_tasks_subcommand_edit_id_10143037_ze 1 81ms 81ms _desktop_index.php_command_tasks_subcommand_edit_id_10143428_ze 2 159ms 79ms _desktop_index.php_command_tasks_subcommand_edit_id_10143432_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10143435_ze 1 81ms 81ms _desktop_index.php_command_tasks_subcommand_edit_id_10143462_ze 1 84ms 84ms _desktop_index.php_command_tasks_subcommand_edit_id_10143466_ze 1 80ms 80ms _desktop_index.php_command_tasks_subcommand_edit_id_10143474_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10143499_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_edit_id_10143507_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10143523_ze 2 164ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10143526_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_init_search_zemm_de 1 54ms 54ms _desktop_index.php_command_tasks_subcommand_init_template_zemm_ 2 70ms 35ms _desktop_index.php_command_tasks_subcommand_init_zemm_produktiv 102 8s197ms 80ms _desktop_index.php_command_tasks_subcommand_open_legacy_1_id_10 70 4s112ms 58ms _desktop_index.php_lic_filter_1_command_tasks_subcommand_init_z 3 237ms 79ms _desktop_index.php_m_action_animals_3Am_delete_val4_animals_lis 3 190ms 63ms _desktop_index.php_m_action_animals_edit_3Alink_init_row_animal 2 82ms 41ms _desktop_index.php_m_action_cages_3Am_cage_card_row_10101806_10 1 38ms 38ms _desktop_index.php_name_Genotypisierungsproben_20genommen_instr 14 811ms 57ms _desktop_index.php_name_Linienbezeichnung_20_C3_A4ndern_instruc 2 137ms 68ms _desktop_index.php_name_Tiertransport_20innerhalb_20W_C3_BCrzbu 1 107ms 107ms _desktop_index.php_name_Transfer_20von_20SPF_20in_20Offene_20_i 1 29ms 29ms _desktop_index.php_name_VP_20von_20..._20bis_20..._20Ntsr1_2FGC 1 41ms 41ms _desktop_index.php_name_Verpaarungen_20f_C3_BCr_20Versuchsvorha 1 65ms 65ms _desktop_index.php_name_Verpaarungen_20zur_20Zucht_instructions 4 233ms 58ms _desktop_index.php_search_id_10142477_search_status_2_no_subtas 1 44ms 44ms _desktop_index.php_search_status_2_no_subtasks_true_command_ani 1 47ms 47ms _desktop_index.php_search_status__25_issued_from_2024-11-01_iss 5 269ms 53ms _desktop_index.php_sire_name_1_dam_name_19_sire_id_2025_2F002_2 1 65ms 65ms _desktop_index.php_species_1_sex_m_sterile_false_alive_true_sta 1 53ms 53ms _desktop_index.php_unweaned_only_true_val4_animals_litters_sear 1 168ms 168ms _desktop_index.php_view_animal_name_on_view_animal_id_on_animal 4 1s115ms 278ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b 28 21s242ms 758ms _desktop_index.php_zemm_dev_localhost_5432 16 11s566ms 722ms _desktop_index.php_zemm_produktiv_8_localhost_5432 3,414 11m37s 204ms _desktop_index.php_zemm_test_localhost_5432 24 1s954ms 81ms backend:zemm_produktiv_8@localhost 36 1s950ms 54ms bounces:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 61ms 61ms expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 1s276ms 1s276ms pg_dump 1 11s938ms 11s938ms psql 3 9ms 3ms taskscron:zemm_produktiv_8@h2940066.stratoserver.net:5432 24 10s717ms 446ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 19,793 buffers Checkpoint Peak
- 2026-06-10 01:37:36 Date
- 269.861 seconds Highest write time
- 0.036 seconds Sync time
Checkpoints Wal files
Key values
- 7 files Wal files usage Peak
- 2026-06-10 01:37:36 Date
Checkpoints distance
Key values
- 224.22 Mo Distance Peak
- 2026-06-10 01:37:36 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Jun 10 00 9,824 983.104s 0.099s 983.262s 01 27,259 1,017.054s 0.102s 1,017.22s 02 8,364 836.757s 0.104s 836.916s 03 8,749 875.642s 0.102s 875.801s 04 9,515 952.558s 0.099s 952.714s 05 7,847 785.881s 0.097s 786.029s 06 9,981 998.661s 0.195s 998.918s 07 13,000 1,300.431s 0.258s 1,300.743s 08 9,745 974.971s 0.211s 975.234s 09 12,188 1,218.954s 0.275s 1,219.287s 10 11,285 1,129.438s 0.242s 1,129.736s 11 11,886 1,188.972s 0.232s 1,189.252s 12 14,005 1,401.1s 0.256s 1,401.414s 13 9,654 966.061s 0.192s 966.305s 14 19,177 1,440.086s 0.221s 1,440.371s 15 10,263 1,026.943s 0.162s 1,027.156s 16 11,509 1,152.009s 0.123s 1,152.183s 17 10,620 1,062.167s 0.121s 1,062.343s 18 8,505 851.123s 0.102s 851.285s 19 16,612 1,100.719s 0.098s 1,100.875s 20 10,453 876.321s 0.098s 876.568s 21 8,758 876.117s 0.1s 876.272s 22 7,340 734.854s 0.094s 734.997s 23 8,130 813.605s 0.097s 813.757s Day Hour Added Removed Recycled Synced files Longest sync Average sync Jun 10 00 0 0 2 508 0.002s 0.012s 01 0 0 9 547 0.002s 0.012s 02 0 0 1 523 0.002s 0.012s 03 0 0 2 514 0.004s 0.012s 04 0 0 2 513 0.002s 0.012s 05 0 0 2 503 0.002s 0.012s 06 0 0 2 1,065 0.005s 0.012s 07 0 0 3 1,529 0.004s 0.012s 08 0 0 2 1,232 0.002s 0.011s 09 0 0 3 1,584 0.007s 0.012s 10 0 0 2 1,389 0.002s 0.013s 11 0 0 3 1,348 0.004s 0.011s 12 0 0 3 1,495 0.004s 0.013s 13 0 0 2 1,128 0.002s 0.011s 14 0 0 4 1,290 0.003s 0.013s 15 0 0 2 887 0.003s 0.012s 16 0 0 2 670 0.002s 0.012s 17 0 0 3 652 0.002s 0.012s 18 0 0 1 535 0.003s 0.012s 19 0 0 3 513 0.001s 0.012s 20 0 0 3 535 0.002s 0.012s 21 0 0 1 535 0.002s 0.012s 22 0 0 2 487 0.003s 0.011s 23 0 0 2 511 0.002s 0.012s Day Hour Count Avg time (sec) Jun 10 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 Jun 10 00 2,727.50 kB 3,582.58 kB 01 11,751.17 kB 46,648.92 kB 02 2,433.58 kB 38,158.67 kB 03 2,509.17 kB 12,554.83 kB 04 2,713.92 kB 5,471.58 kB 05 2,328.58 kB 3,530.08 kB 06 2,883.33 kB 3,455.00 kB 07 3,810.17 kB 4,588.42 kB 08 3,196.09 kB 4,566.36 kB 09 3,720.17 kB 4,665.00 kB 10 3,054.77 kB 4,096.23 kB 11 3,650.27 kB 4,354.45 kB 12 3,868.46 kB 5,872.08 kB 13 3,058.27 kB 3,902.18 kB 14 5,118.54 kB 14,739.31 kB 15 2,813.67 kB 6,182.67 kB 16 2,982.17 kB 4,627.33 kB 17 3,464.75 kB 5,235.17 kB 18 2,425.50 kB 6,763.25 kB 19 4,181.42 kB 11,878.58 kB 20 2,566.18 kB 8,142.36 kB 21 2,460.00 kB 2,792.83 kB 22 2,323.45 kB 2,738.73 kB 23 2,274.00 kB 2,858.67 kB -
Temporary Files
Size of temporary files
Key values
- 0 Temp Files size Peak
- Date
Size of temporary files (5 minutes period)
NO DATASET
Number of temporary files
Key values
- 0 per second Temp Files Peak
- Date
Number of temporary files (5 minutes period)
NO DATASET
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Jun 10 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 0 0 0 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 -
Vacuums
Vacuums / Analyzes Distribution
Key values
- 2.43 sec Highest CPU-cost vacuum
Table observability.metrics_timeseries
Database zemm_monitoring - 2026-06-10 19:27:35 Date
- 0 sec Highest CPU-cost analyze
Table
Database zemm_monitoring - Date
Average Autovacuum Duration
Key values
- 2.43 sec Highest CPU-cost vacuum
Table observability.metrics_timeseries
Database zemm_monitoring - 2026-06-10 19:27:35 Date
Analyzes per table
Key values
- pg_catalog.pg_type (71) Main table analyzed (database zemm_produktiv_8)
- 228 analyzes Total
Table Number of analyzes zemm_produktiv_8.pg_catalog.pg_type 71 zemm_produktiv_8.pg_catalog.pg_attribute 55 zemm_produktiv_8.pg_catalog.pg_class 40 zemm_produktiv_8.pg_catalog.pg_depend 35 zemm_produktiv_8.public.cages_search_mview 4 invdb.pg_catalog.pg_shdepend 3 zemm_test.pg_catalog.pg_shdepend 3 zemm_produktiv_8.public.tmptasks 2 zemm_monitoring.observability.metrics_timeseries 2 fbi_unibi.pg_catalog.pg_shdepend 2 template1.pg_catalog.pg_shdepend 1 zemm_monitoring.observability.system_metrics 1 zemm_monitoring.observability.db_top_queries 1 labanimal.pg_catalog.pg_shdepend 1 zemm_produktiv_8.pg_catalog.pg_shdepend 1 zemm_dev.public.login_tracker 1 fbi_ci_db.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.tasks 1 zemm_produktiv_8.public.cages 1 zemm_dev.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.users 1 Total 228 Vacuums per table
Key values
- pg_catalog.pg_type (27) Main table vacuumed on database zemm_produktiv_8
- 91 vacuums Total
Index Buffer usage Skipped WAL usage Frozen Table Vacuums scans hits misses dirtied pins frozen records full page bytes pages tuples zemm_produktiv_8.pg_catalog.pg_type 27 27 0 0 0 0 0 1,363 277 304,083 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 23 23 0 0 0 0 0 2,152 633 527,993 0 0 zemm_produktiv_8.pg_catalog.pg_class 13 13 0 0 0 0 0 1,199 339 387,669 0 0 zemm_produktiv_8.pg_catalog.pg_depend 10 10 0 0 0 0 0 1,279 323 459,877 0 0 zemm_dev.pg_catalog.pg_shdepend 4 4 0 0 0 0 0 288 93 195,202 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 0 0 0 0 0 689 164 848,016 28 83 zemm_monitoring.pg_toast.pg_toast_67431 3 0 0 0 0 0 0 6,789 2,717 6,136,164 1,354 8,124 labanimal.pg_catalog.pg_shdepend 2 2 0 0 0 0 0 143 46 98,486 0 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 0 0 0 0 0 207 75 260,560 44 126 zemm_produktiv_8.public.cages_search_mview 1 1 0 0 0 0 0 728 378 1,255,704 22 105 zemm_produktiv_8.public.tasks 1 1 0 0 0 0 0 51,641 46 3,901,773 4 14 zemm_monitoring.observability.metrics_timeseries 1 1 0 0 0 0 0 17,548 8,117 20,623,726 1,703 36,783 zemm_monitoring.pg_toast.pg_toast_2619 1 1 0 0 0 0 0 89 20 118,520 4 14 Total 91 88 0 0 0 0 0 84,115 13,228 35,117,773 3,159 45,249 Vacuum throughput per table
Key values
- observability.metrics_timeseries (2.43) Max CPU elapsed for vacuum on database zemm_monitoring
- observability.metrics_timeseries (5.129 ms) Max I/O read time for vacuum on database zemm_monitoring
- observability.metrics_timeseries (2.637 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.2 zemm_produktiv_8.pg_catalog.pg_class 0 0 0.01 zemm_produktiv_8.pg_catalog.pg_depend 0 0 0.1 zemm_dev.pg_catalog.pg_shdepend 0 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 0 0 0.03 zemm_monitoring.pg_toast.pg_toast_67431 0 0 0.69 labanimal.pg_catalog.pg_shdepend 0 0 0 zemm_produktiv_8.pg_catalog.pg_statistic 0 0 0.02 zemm_produktiv_8.public.cages_search_mview 0 0 0.1 zemm_produktiv_8.public.tasks 0.167 0 0.66 zemm_monitoring.observability.metrics_timeseries 5.129 2.637 2.43 zemm_monitoring.pg_toast.pg_toast_2619 0.071 0 0 Total 5.367 2.637 4.24 Tuples removed per table
Key values
- public.tasks (55015) Main table with removed tuples on database zemm_produktiv_8
- 126537 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain zemm_produktiv_8.public.tasks 1 1 55,015 58,084 0 0 17,153 zemm_monitoring.observability.metrics_timeseries 1 1 31,950 388,890 0 0 8,322 zemm_produktiv_8.pg_catalog.pg_attribute 23 23 14,469 132,529 0 0 4,232 zemm_monitoring.pg_toast.pg_toast_67431 3 0 8,154 1,806,513 0 0 397,083 zemm_produktiv_8.pg_catalog.pg_depend 10 10 7,947 41,970 0 0 550 zemm_produktiv_8.pg_catalog.pg_type 27 27 4,452 22,437 0 0 837 zemm_produktiv_8.pg_catalog.pg_class 13 13 1,956 11,739 0 0 546 zemm_dev.pg_catalog.pg_shdepend 4 4 1,194 18,820 0 0 156 labanimal.pg_catalog.pg_shdepend 2 2 490 9,410 0 0 78 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 420 1,172 0 0 424 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 291 1,269 0 0 143 zemm_produktiv_8.public.cages_search_mview 1 1 141 13,885 0 0 234 zemm_monitoring.pg_toast.pg_toast_2619 1 1 58 80 0 0 35 Total 91 88 126,537 2,506,798 0 0 429,793 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.pg_toast.pg_toast_67431 3 0 8154 0 zemm_produktiv_8.pg_catalog.pg_attribute 23 23 14469 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 291 0 zemm_produktiv_8.pg_catalog.pg_type 27 27 4452 0 zemm_produktiv_8.public.cages_search_mview 1 1 141 0 zemm_produktiv_8.pg_catalog.pg_class 13 13 1956 0 zemm_produktiv_8.pg_catalog.pg_depend 10 10 7947 0 zemm_produktiv_8.public.tasks 1 1 55015 0 zemm_dev.pg_catalog.pg_shdepend 4 4 1194 0 zemm_monitoring.observability.metrics_timeseries 1 1 31950 0 zemm_monitoring.pg_toast.pg_toast_2619 1 1 58 0 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 420 0 labanimal.pg_catalog.pg_shdepend 2 2 490 0 Total 91 88 126,537 0 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Jun 10 00 1 0 01 1 1 02 0 1 03 0 0 04 1 1 05 0 0 06 2 5 07 14 33 08 9 23 09 13 37 10 6 17 11 12 32 12 13 31 13 2 7 14 12 26 15 3 12 16 1 0 17 0 2 18 0 0 19 1 0 20 0 0 21 0 0 22 0 0 23 0 0 - 2.43 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- unknown Main Lock Type
- 0 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query NO DATASET
Queries that waited the most
Rank Wait time Query NO DATASET
-
Queries
Queries by type
Key values
- 127 Total read queries
- 24,537 Total write queries
Queries by database
Key values
- zemm_monitoring Main database
- 24,513 Requests
- 2d2h19m40s (zemm_monitoring)
- Main time consuming database
Queries by user
Key values
- monitoring_admin Main user
- 712,736 Requests
User Request type Count Duration labanimal Total 2,391 51m54s copy to 8 22s808ms cte 396 8m36s select 1,958 42m23s update 29 31s813ms monitoring_admin Total 712,736 40d17h19m7s cte 2,032 4h53m12s ddl 709,831 40d12h13m24s delete 1 603ms select 864 12m22s postgres Total 154 3m27s copy to 154 3m27s Duration by user
Key values
- 40d17h19m7s (monitoring_admin) Main time consuming user
User Request type Count Duration labanimal Total 2,391 51m54s copy to 8 22s808ms cte 396 8m36s select 1,958 42m23s update 29 31s813ms monitoring_admin Total 712,736 40d17h19m7s cte 2,032 4h53m12s ddl 709,831 40d12h13m24s delete 1 603ms select 864 12m22s postgres Total 154 3m27s copy to 154 3m27s Queries by host
Key values
- unknown Main host
- 715,098 Requests
- 40d18h10m30s (unknown)
- Main time consuming host
Queries by application
Key values
- unknown Main application
- 24,513 Requests
- 2d2h19m40s (unknown)
- Main time consuming application
Application Request type Count Duration _desktop_index.php_command_reports_subcommand_init_zemm_dev_loc Total 2 1s551ms select 2 1s551ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b Total 18 13s41ms select 18 13s41ms _desktop_index.php_zemm_dev_localhost_5432 Total 2 7s336ms cte 1 6s709ms select 1 627ms _desktop_index.php_zemm_produktiv_8_localhost_5432 Total 123 1m44s cte 22 21s522ms select 101 1m23s expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 Total 1 1s254ms update 1 1s254ms pg_dump Total 5 6s845ms copy to 5 6s845ms unknown Total 24,513 2d2h19m40s cte 28 6m5s ddl 24,480 2d2h13m32s select 5 2s599ms Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-06-10 13:30:37 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 138 500-1000ms duration
Slowest individual queries
Rank Duration Query 1 13s415ms 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', 'live') AND collected_at >= '2026-06-08 02:52:02+02' AND collected_at <= '2026-06-10 02:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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-06-10 14:52:15 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
2 13s415ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
3 13s415ms 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-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
4 13s415ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
5 13s415ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
6 13s415ms 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-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
7 13s415ms CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
8 13s415ms CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
9 13s415ms 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-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
10 13s415ms CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
11 13s415ms 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-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
12 13s415ms 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-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
13 13s415ms 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-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
14 13s415ms 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-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
15 13s415ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
16 13s415ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
17 13s415ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
18 13s415ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);[ Date: 2026-06-10 14:53:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
19 13s415ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-06-10 14:54:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
20 13s415ms 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-06-10 14:54:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
Time consuming queries (N)
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 #1
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
2 2h57m16s 1,440 507ms 13s415ms 7s386ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
3 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 #3
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
4 2h57m16s 1,440 507ms 13s415ms 7s386ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
5 2h57m16s 1,440 507ms 13s415ms 7s386ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
6 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 #6
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
7 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 #7
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
8 2h57m16s 1,440 507ms 13s415ms 7s386ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
9 2h57m16s 1,440 507ms 13s415ms 7s386ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
10 2h57m16s 1,440 507ms 13s415ms 7s386ms create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
11 2h57m16s 1,440 507ms 13s415ms 7s386ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
12 2h57m16s 1,440 507ms 13s415ms 7s386ms create schema if not exists observability;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
13 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 #13
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
14 2h57m16s 1,440 507ms 13s415ms 7s386ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
15 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
16 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 #16
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
17 2h57m16s 1,440 507ms 13s415ms 7s386ms 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 #17
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
18 6m5s 28 12s96ms 13s415ms 13s40ms 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 >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jun 10 01 5 1m6s 13s271ms 02 5 1m6s 13s263ms 14 1 13s409ms 13s409ms 15 6 1m19s 13s277ms 16 5 1m6s 13s310ms 17 1 12s146ms 12s146ms 18 5 1m 12s139ms [ User: monitoring_admin - Total duration: 6m5s - Times executed: 28 ]
-
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', 'live') AND collected_at >= '2026-06-08 02:52:02+02' AND collected_at <= '2026-06-10 02:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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-06-10 14:52:15 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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', 'live') AND collected_at >= '2026-06-08 01:55:45+02' AND collected_at <= '2026-06-10 01:55:45+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', 'live') AND collected_at BETWEEN '2026-06-10 01:55:45+02' AND '2026-06-10 13:55:45+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', 'live') AND collected_at BETWEEN '2026-06-10 01:55:45+02' AND '2026-06-10 13:55:45+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-06-10 13:55:59 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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', 'live') AND collected_at >= '2026-06-07 13:42:16+02' AND collected_at <= '2026-06-09 13:42: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', 'live') AND collected_at BETWEEN '2026-06-09 13:42:16+02' AND '2026-06-10 01:42: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', 'live') AND collected_at BETWEEN '2026-06-09 13:42:16+02' AND '2026-06-10 01:42: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-06-10 01:42:29 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
19 34s280ms 45 747ms 800ms 761ms 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 Jun 10 08 2 1s515ms 757ms 09 1 764ms 764ms 10 2 1s522ms 761ms 11 16 12s148ms 759ms 12 16 12s182ms 761ms 13 2 1s519ms 759ms 14 6 4s627ms 771ms [ User: labanimal - Total duration: 34s280ms - Times executed: 45 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 27s446ms - Times executed: 36 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 6s833ms - Times executed: 9 ]
-
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, 10100002) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100002) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100002) 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-06-10 11:15:29 Duration: 800ms 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-06-10_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-06-10 13:45:31 Duration: 784ms 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-06-10_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, 302) AS is_owner, user_is_tgm (animals_search_mview.editor, 302) AS is_editor, user_is_tgm (animals_search_mview.tourist, 302) 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-06-10 10:58:51 Duration: 783ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
20 31s199ms 45 674ms 716ms 693ms 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 Jun 10 08 2 1s405ms 702ms 09 1 705ms 705ms 10 2 1s384ms 692ms 11 16 11s54ms 690ms 12 16 11s61ms 691ms 13 2 1s378ms 689ms 14 6 4s208ms 701ms [ User: labanimal - Total duration: 31s199ms - Times executed: 45 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 24s991ms - Times executed: 36 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 6s208ms - Times executed: 9 ]
-
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-06-10 13:45:32 Duration: 716ms 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-06-10_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100187) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100187) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100187) 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-06-10 07:51:24 Duration: 712ms 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-06-10_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-06-10 13:45:35 Duration: 709ms 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-06-10_000000.csv
Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 #1
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
2 1,440 2h57m16s 507ms 13s415ms 7s386ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
3 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 #3
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
4 1,440 2h57m16s 507ms 13s415ms 7s386ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
5 1,440 2h57m16s 507ms 13s415ms 7s386ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
6 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 #6
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
7 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 #7
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
8 1,440 2h57m16s 507ms 13s415ms 7s386ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
9 1,440 2h57m16s 507ms 13s415ms 7s386ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
10 1,440 2h57m16s 507ms 13s415ms 7s386ms create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
11 1,440 2h57m16s 507ms 13s415ms 7s386ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
12 1,440 2h57m16s 507ms 13s415ms 7s386ms create schema if not exists observability;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
13 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 #13
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
14 1,440 2h57m16s 507ms 13s415ms 7s386ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
15 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
16 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 #16
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
17 1,440 2h57m16s 507ms 13s415ms 7s386ms 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 #17
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
18 45 34s280ms 747ms 800ms 761ms 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 Jun 10 08 2 1s515ms 757ms 09 1 764ms 764ms 10 2 1s522ms 761ms 11 16 12s148ms 759ms 12 16 12s182ms 761ms 13 2 1s519ms 759ms 14 6 4s627ms 771ms [ User: labanimal - Total duration: 34s280ms - Times executed: 45 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 27s446ms - Times executed: 36 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 6s833ms - Times executed: 9 ]
-
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, 10100002) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100002) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100002) 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-06-10 11:15:29 Duration: 800ms 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-06-10_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-06-10 13:45:31 Duration: 784ms 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-06-10_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, 302) AS is_owner, user_is_tgm (animals_search_mview.editor, 302) AS is_editor, user_is_tgm (animals_search_mview.tourist, 302) 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-06-10 10:58:51 Duration: 783ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
19 45 31s199ms 674ms 716ms 693ms 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 Jun 10 08 2 1s405ms 702ms 09 1 705ms 705ms 10 2 1s384ms 692ms 11 16 11s54ms 690ms 12 16 11s61ms 691ms 13 2 1s378ms 689ms 14 6 4s208ms 701ms [ User: labanimal - Total duration: 31s199ms - Times executed: 45 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 24s991ms - Times executed: 36 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 6s208ms - Times executed: 9 ]
-
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-06-10 13:45:32 Duration: 716ms 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-06-10_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100187) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100187) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100187) 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-06-10 07:51:24 Duration: 712ms 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-06-10_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-06-10 13:45:35 Duration: 709ms 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-06-10_000000.csv
20 28 6m5s 12s96ms 13s415ms 13s40ms 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 >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jun 10 01 5 1m6s 13s271ms 02 5 1m6s 13s263ms 14 1 13s409ms 13s409ms 15 6 1m19s 13s277ms 16 5 1m6s 13s310ms 17 1 12s146ms 12s146ms 18 5 1m 12s139ms [ User: monitoring_admin - Total duration: 6m5s - Times executed: 28 ]
-
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', 'live') AND collected_at >= '2026-06-08 02:52:02+02' AND collected_at <= '2026-06-10 02:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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-06-10 14:52:15 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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', 'live') AND collected_at >= '2026-06-08 01:55:45+02' AND collected_at <= '2026-06-10 01:55:45+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', 'live') AND collected_at BETWEEN '2026-06-10 01:55:45+02' AND '2026-06-10 13:55:45+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', 'live') AND collected_at BETWEEN '2026-06-10 01:55:45+02' AND '2026-06-10 13:55:45+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-06-10 13:55:59 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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', 'live') AND collected_at >= '2026-06-07 13:42:16+02' AND collected_at <= '2026-06-09 13:42: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', 'live') AND collected_at BETWEEN '2026-06-09 13:42:16+02' AND '2026-06-10 01:42: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', 'live') AND collected_at BETWEEN '2026-06-09 13:42:16+02' AND '2026-06-10 01:42: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-06-10 01:42:29 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 12s96ms 13s415ms 13s40ms 28 6m5s 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 >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jun 10 01 5 1m6s 13s271ms 02 5 1m6s 13s263ms 14 1 13s409ms 13s409ms 15 6 1m19s 13s277ms 16 5 1m6s 13s310ms 17 1 12s146ms 12s146ms 18 5 1m 12s139ms [ User: monitoring_admin - Total duration: 6m5s - Times executed: 28 ]
-
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', 'live') AND collected_at >= '2026-06-08 02:52:02+02' AND collected_at <= '2026-06-10 02:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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', 'live') AND collected_at BETWEEN '2026-06-10 02:52:02+02' AND '2026-06-10 14:52:02+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-06-10 14:52:15 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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', 'live') AND collected_at >= '2026-06-08 01:55:45+02' AND collected_at <= '2026-06-10 01:55:45+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', 'live') AND collected_at BETWEEN '2026-06-10 01:55:45+02' AND '2026-06-10 13:55:45+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', 'live') AND collected_at BETWEEN '2026-06-10 01:55:45+02' AND '2026-06-10 13:55:45+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-06-10 13:55:59 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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', 'live') AND collected_at >= '2026-06-07 13:42:16+02' AND collected_at <= '2026-06-09 13:42: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', 'live') AND collected_at BETWEEN '2026-06-09 13:42:16+02' AND '2026-06-10 01:42: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', 'live') AND collected_at BETWEEN '2026-06-09 13:42:16+02' AND '2026-06-10 01:42: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-06-10 01:42:29 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
2 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 #2
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
3 507ms 13s415ms 7s386ms 1,440 2h57m16s alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
4 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 #4
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
5 507ms 13s415ms 7s386ms 1,440 2h57m16s create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
6 507ms 13s415ms 7s386ms 1,440 2h57m16s create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
7 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 #7
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
8 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 #8
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
9 507ms 13s415ms 7s386ms 1,440 2h57m16s create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
10 507ms 13s415ms 7s386ms 1,440 2h57m16s create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
11 507ms 13s415ms 7s386ms 1,440 2h57m16s create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
12 507ms 13s415ms 7s386ms 1,440 2h57m16s alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
13 507ms 13s415ms 7s386ms 1,440 2h57m16s create schema if not exists observability;Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
14 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
15 507ms 13s415ms 7s386ms 1,440 2h57m16s create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
16 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
17 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 #17
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
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-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_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-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
18 507ms 13s415ms 7s386ms 1,440 2h57m16s 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 #18
Day Hour Count Duration Avg duration Jun 10 01 60 11m3s 11s63ms 02 60 12m52s 12s869ms 03 60 13m22s 13s371ms 04 60 13m22s 13s371ms 05 60 13m22s 13s371ms 06 60 13m22s 13s371ms 07 60 6m22s 6s382ms 08 60 42s27ms 700ms 09 60 42s25ms 700ms 10 60 49s227ms 820ms 11 60 1m38s 1s649ms 12 60 41s626ms 693ms 13 60 41s867ms 697ms 14 60 1m32s 1s546ms 15 60 12m38s 12s649ms 16 60 13m19s 13s319ms 17 60 13m11s 13s187ms 18 60 10m37s 10s628ms 19 60 12m9s 12s160ms 20 60 12m9s 12s160ms 21 60 10m57s 10s961ms 22 60 30s442ms 507ms 23 60 30s442ms 507ms 00 60 34s329ms 572ms [ User: monitoring_admin - Total duration: 2h57m16s - Times executed: 1426 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 15:02:01 Duration: 13s415ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 14:02:01 Duration: 13s409ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-10 06:26:01 Duration: 13s371ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
19 747ms 800ms 761ms 45 34s280ms 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 Jun 10 08 2 1s515ms 757ms 09 1 764ms 764ms 10 2 1s522ms 761ms 11 16 12s148ms 759ms 12 16 12s182ms 761ms 13 2 1s519ms 759ms 14 6 4s627ms 771ms [ User: labanimal - Total duration: 34s280ms - Times executed: 45 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 27s446ms - Times executed: 36 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 6s833ms - Times executed: 9 ]
-
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, 10100002) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100002) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100002) 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-06-10 11:15:29 Duration: 800ms 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-06-10_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-06-10 13:45:31 Duration: 784ms 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-06-10_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, 302) AS is_owner, user_is_tgm (animals_search_mview.editor, 302) AS is_editor, user_is_tgm (animals_search_mview.tourist, 302) 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-06-10 10:58:51 Duration: 783ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
20 674ms 716ms 693ms 45 31s199ms 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 Jun 10 08 2 1s405ms 702ms 09 1 705ms 705ms 10 2 1s384ms 692ms 11 16 11s54ms 690ms 12 16 11s61ms 691ms 13 2 1s378ms 689ms 14 6 4s208ms 701ms [ User: labanimal - Total duration: 31s199ms - Times executed: 45 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 24s991ms - Times executed: 36 ]
[ Application: _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b - Total duration: 6s208ms - Times executed: 9 ]
-
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-06-10 13:45:32 Duration: 716ms 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-06-10_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100187) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100187) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100187) 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-06-10 07:51:24 Duration: 712ms 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-06-10_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-06-10 13:45:35 Duration: 709ms 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-06-10_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
- 139,497 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
- 1 ERROR entries
- 0 WARNING entries
- 1 EVENTLOG entries
Most Frequent Errors/Events
Key values
- 1 Max number of times the same event was reported
- 2 Total events found
Rank Times reported Error 1 1 ERROR: syntax error at or near "..."
Times Reported Most Frequent Error / Event #1
Day Hour Count Jun 10 10 1 - ERROR: syntax error at or near "AND"
Statement: BEGIN; SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; INSERT INTO cost_history (service, fromdate, todate, animal, comment, deleted, invoice, amount, license, kostenstelle_erb, drittmittel, kostenstelle_anf, finanzstelle_anf, extern_anf, form_text, mat_nr, kostenkategorie, supersedes) SELECT * FROM ( (SELECT cost_history.service, fromdate, ('2026-05-01 00:00:00'::TIMESTAMP - '1 seconds'::INTERVAL) AS todate, cost_history.animal, cost_history.comment, cost_history.deleted, cost_history.invoice, cost_history.amount, cost_history.license, cost_history.kostenstelle_erb, cost_history.drittmittel, cost_history.kostenstelle_anf, cost_history.finanzstelle_anf, cost_history.extern_anf, cost_history.form_text, cost_history.mat_nr, cost_history.kostenkategorie, cost_history.id AS supersedes FROM cost_history INNER JOIN services ON services.id = cost_history.service AND (services.cost_object = 1 OR services.cost_object = 2) INNER JOIN unit_descriptions ON unit_descriptions.id = services.serviceunit WHERE NOT(cost_history.deleted) AND cost_history.invoice IS NULL AND cost_history.fromdate < '2026-05-01 00:00:00'::TIMESTAMP AND (cost_history.fromdate, CASE WHEN cost_history.todate IS NULL THEN '2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL ELSE cost_history.todate END) OVERLAPS ('2026-05-01 00:00:00'::TIMESTAMP, '2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL) AND TRUE AND cost_history.license = 10100118 AND cost_history.kostenkategorie = AND cost_history.drittmittel = FALSE) UNION (SELECT cost_history.service, p_max(fromdate, '2026-05-01 00:00:00'::TIMESTAMP) AS fromdate, p_min(todate, '2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL) AS todate, cost_history.animal, cost_history.comment, cost_history.deleted, cost_history.invoice, cost_history.amount, cost_history.license, cost_history.kostenstelle_erb, cost_history.drittmittel, cost_history.kostenstelle_anf, cost_history.finanzstelle_anf, cost_history.extern_anf, cost_history.form_text, cost_history.mat_nr, cost_history.kostenkategorie, cost_history.id AS supersedes FROM cost_history INNER JOIN services ON services.id = cost_history.service AND (services.cost_object = 1 OR services.cost_object = 2) INNER JOIN unit_descriptions ON unit_descriptions.id = services.serviceunit WHERE NOT(cost_history.deleted) AND cost_history.invoice IS NULL AND (cost_history.fromdate, CASE WHEN cost_history.todate IS NULL THEN '2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL ELSE cost_history.todate END) OVERLAPS ('2026-05-01 00:00:00'::TIMESTAMP, '2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL) AND (cost_history.todate IS NULL OR cost_history.todate > '2026-05-01 00:00:00'::TIMESTAMP) AND TRUE AND cost_history.license = 10100118 AND cost_history.kostenkategorie = AND cost_history.drittmittel = FALSE) UNION (SELECT cost_history.service, ('2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL) AS fromdate, todate, cost_history.animal, cost_history.comment, cost_history.deleted, cost_history.invoice, cost_history.amount, cost_history.license, cost_history.kostenstelle_erb, cost_history.drittmittel, cost_history.kostenstelle_anf, cost_history.finanzstelle_anf, cost_history.extern_anf, cost_history.form_text, cost_history.mat_nr, cost_history.kostenkategorie, cost_history.id AS supersedes FROM cost_history INNER JOIN services ON services.id = cost_history.service AND (services.cost_object = 1 OR services.cost_object = 2) INNER JOIN unit_descriptions ON unit_descriptions.id = services.serviceunit WHERE NOT(cost_history.deleted) AND cost_history.invoice IS NULL AND (cost_history.fromdate, CASE WHEN cost_history.todate IS NULL THEN '2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL ELSE cost_history.todate END) OVERLAPS ('2026-05-01 00:00:00'::TIMESTAMP, '2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL) AND (cost_history.todate IS NULL OR cost_history.todate > ('2026-06-30 00:00:00'::TIMESTAMP + '1 days'::INTERVAL - '1 seconds'::INTERVAL)) AND TRUE AND cost_history.license = 10100118 AND cost_history.kostenkategorie = AND cost_history.drittmittel = FALSE)) data; UPDATE cost_history SET deleted = TRUE FROM (SELECT DISTINCT supersedes AS id FROM cost_history WHERE supersedes IS NOT NULL AND TRUE AND cost_history.license = 10100118 AND cost_history.kostenkategorie = AND cost_history.drittmittel = FALSE) superseded WHERE cost_history.id = superseded.id; COMMIT;
Date: 2026-06-10 09:03:40 Database: zemm_test Application: _desktop_index.php_zemm_test_localhost_5432 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-10_000000.csv
2 1 LOG: database system was shut down at ...
Times Reported Most Frequent Error / Event #2
Day Hour Count Jun 10 21 1 - LOG: database system was shut down at 2026-06-10 20:53:44 CEST
Date: 2026-06-10 20:53:46 Log file: /var/log/postgresql/postgresql-2026-06-10_205346.csv