-
Global information
- Generated on Thu Apr 30 06:06:45 2026
- Log file: /var/log/postgresql/postgresql-2026-03-25_000000.csv, ..., /var/log/postgresql/postgresql-2026-04-30_000000.csv
- Parsed 483,499 log entries in 6m44s
- Log start from 2026-04-22 00:00:01 to 2026-04-22 23:59:12
-
Overview
Global Stats
- 59 Number of unique normalized queries
- 24,864 Number of queries
- 22h52m50s Total query duration
- 2026-04-22 00:00:01 First query
- 2026-04-22 23:59:01 Last query
- 19 queries/s at 2026-04-22 15:09:01 Query peak
- 22h52m50s Total query duration
- 655ms Prepare/parse total duration
- 0ms Bind total duration
- 22h52m50s Execute total duration
- 19 Number of events
- 8 Number of unique normalized events
- 7 Max number of times the same event was reported
- 0 Number of cancellation
- 216 Total number of automatic vacuums
- 499 Total number of automatic analyzes
- 1,205 Number temporary file
- 78.83 MiB Max size of temporary file
- 57.41 MiB Average size of temporary file
- 50,476 Total number of sessions
- 7 sessions at 2026-04-22 11:49:22 Session peak
- 2h36m10s Total duration of sessions
- 185ms Average duration of sessions
- 0 Average queries per session
- 1s631ms Average queries duration per session
- 0ms Average idle time per session
- 50,476 Total number of connections
- 49 connections/s at 2026-04-22 12:29:31 Connection peak
- 3 Total number of databases
SQL Traffic
Key values
- 19 queries/s Query Peak
- 2026-04-22 15:09:01 Date
SELECT Traffic
Key values
- 2 queries/s Query Peak
- 2026-04-22 16:26:57 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 18 queries/s Query Peak
- 2026-04-22 05:24:01 Date
Queries duration
Key values
- 22h52m50s Total query duration
Prepared queries ratio
Key values
- 0.00 Ratio of bind vs prepare
- 0.00 % Ratio between prepared and "usual" statements
General Activity
↑ Back to the top of the General Activity tableDay Hour Count Min duration Max duration Avg duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 22 00 1,037 0ms 5s490ms 3s659ms 1m14s 1m33s 1m34s 01 1,033 1s101ms 4s129ms 3s912ms 1m13s 1m13s 1m14s 02 1,032 3s971ms 4s148ms 4s60ms 1m13s 1m13s 1m14s 03 1,032 3s937ms 4s106ms 4s32ms 1m12s 1m13s 1m13s 04 1,032 3s941ms 4s87ms 4s41ms 1m13s 1m13s 1m13s 05 1,032 4s2ms 4s167ms 4s73ms 1m13s 1m14s 1m14s 06 1,035 788ms 4s321ms 4s109ms 1m15s 1m17s 1m17s 07 1,028 507ms 4s172ms 1s272ms 1m10s 1m10s 1m11s 08 1,045 536ms 8s46ms 2s385ms 1m19s 1m19s 2m21s 09 1,055 514ms 5s294ms 3s118ms 1m17s 1m30s 1m35s 10 1,054 576ms 4s499ms 1s719ms 1m10s 1m12s 1m13s 11 1,046 566ms 4s397ms 3s30ms 1m10s 1m12s 1m15s 12 1,033 817ms 4s399ms 3s812ms 1m14s 1m15s 1m18s 13 1,028 693ms 4s104ms 1s606ms 1m9s 1m9s 1m11s 14 1,028 589ms 4s483ms 1s525ms 1m9s 1m13s 1m20s 15 1,039 500ms 4s460ms 3s421ms 1m13s 1m14s 1m15s 16 1,041 547ms 4s567ms 3s191ms 1m17s 1m17s 1m22s 17 1,032 705ms 4s135ms 3s910ms 1m12s 1m13s 1m14s 18 1,030 829ms 4s693ms 3s823ms 1m12s 1m12s 1m13s 19 1,037 815ms 4s693ms 3s364ms 1m17s 1m19s 1m21s 20 1,033 3s865ms 4s99ms 3s994ms 1m11s 1m12s 1m13s 21 1,008 0ms 16s711ms 3s912ms 1m18s 1m19s 4m48s 22 1,037 655ms 4s284ms 3s620ms 1m15s 1m16s 1m17s 23 1,057 515ms 6s709ms 3s933ms 1m14s 1m17s 2m46s Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 22 00 0 0 0ms 0ms 0ms 0ms 01 0 0 0ms 0ms 0ms 0ms 02 0 0 0ms 0ms 0ms 0ms 03 0 0 0ms 0ms 0ms 0ms 04 0 0 0ms 0ms 0ms 0ms 05 0 0 0ms 0ms 0ms 0ms 06 2 0 861ms 0ms 0ms 0ms 07 7 0 742ms 0ms 0ms 512ms 08 13 0 833ms 0ms 536ms 2s582ms 09 17 0 967ms 0ms 1s687ms 2s560ms 10 20 0 771ms 576ms 952ms 2s867ms 11 9 0 1s379ms 0ms 566ms 1s441ms 12 0 0 0ms 0ms 0ms 0ms 13 6 0 739ms 0ms 0ms 1s483ms 14 2 0 803ms 0ms 0ms 589ms 15 5 0 677ms 0ms 0ms 500ms 16 6 0 901ms 0ms 0ms 1s970ms 17 2 0 739ms 0ms 0ms 0ms 18 0 0 0ms 0ms 0ms 0ms 19 0 0 0ms 0ms 0ms 0ms 20 0 0 0ms 0ms 0ms 0ms 21 7 0 1s476ms 0ms 0ms 2s377ms 22 0 0 0ms 0ms 0ms 0ms 23 0 27 2s514ms 0ms 0ms 12s755ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Apr 22 00 0 0 0 0 0ms 0ms 0ms 0ms 01 0 1 0 0 1s101ms 0ms 0ms 0ms 02 0 0 0 0 0ms 0ms 0ms 0ms 03 0 0 0 0 0ms 0ms 0ms 0ms 04 0 0 0 0 0ms 0ms 0ms 0ms 05 0 0 0 0 0ms 0ms 0ms 0ms 06 0 0 0 0 0ms 0ms 0ms 0ms 07 0 0 0 0 0ms 0ms 0ms 0ms 08 0 0 0 0 0ms 0ms 0ms 0ms 09 0 0 0 0 0ms 0ms 0ms 0ms 10 0 0 0 0 0ms 0ms 0ms 0ms 11 0 0 0 0 0ms 0ms 0ms 0ms 12 0 0 0 0 0ms 0ms 0ms 0ms 13 0 0 0 0 0ms 0ms 0ms 0ms 14 0 0 0 0 0ms 0ms 0ms 0ms 15 0 0 0 0 0ms 0ms 0ms 0ms 16 0 0 0 0 0ms 0ms 0ms 0ms 17 0 0 0 0 0ms 0ms 0ms 0ms 18 0 0 0 0 0ms 0ms 0ms 0ms 19 0 0 0 0 0ms 0ms 0ms 0ms 20 0 0 0 0 0ms 0ms 0ms 0ms 21 0 0 0 0 0ms 0ms 0ms 0ms 22 0 0 0 0 0ms 0ms 0ms 0ms 23 0 0 0 0 0ms 0ms 0ms 0ms Day Hour Prepare Bind Bind/Prepare Percentage of prepare Apr 22 00 0 13 13.00 0.00% 01 0 12 12.00 0.00% 02 0 12 12.00 0.00% 03 0 12 12.00 0.00% 04 0 12 12.00 0.00% 05 0 12 12.00 0.00% 06 0 12 12.00 0.00% 07 0 0 0.00 0.00% 08 0 9 9.00 0.00% 09 0 13 13.00 0.00% 10 0 10 10.00 0.00% 11 0 17 17.00 0.00% 12 0 9 9.00 0.00% 13 0 1 1.00 0.00% 14 0 4 4.00 0.00% 15 0 9 9.00 0.00% 16 0 11 11.00 0.00% 17 0 10 10.00 0.00% 18 0 7 7.00 0.00% 19 0 12 12.00 0.00% 20 0 13 13.00 0.00% 21 0 19 19.00 0.00% 22 1 13 13.00 0.10% 23 0 10 10.00 0.00% Day Hour Count Average / Second Apr 22 00 2,140 0.59/s 01 1,126 0.31/s 02 1,123 0.31/s 03 1,120 0.31/s 04 1,120 0.31/s 05 1,148 0.32/s 06 1,734 0.48/s 07 2,339 0.65/s 08 2,445 0.68/s 09 3,662 1.02/s 10 3,623 1.01/s 11 3,817 1.06/s 12 3,095 0.86/s 13 3,104 0.86/s 14 2,067 0.57/s 15 1,980 0.55/s 16 2,983 0.83/s 17 1,790 0.50/s 18 1,584 0.44/s 19 2,566 0.71/s 20 1,313 0.36/s 21 1,311 0.36/s 22 2,015 0.56/s 23 1,271 0.35/s Day Hour Count Average Duration Average idle time Apr 22 00 2,140 181ms 0ms 01 1,126 221ms 0ms 02 1,123 221ms 0ms 03 1,120 221ms 0ms 04 1,120 222ms 0ms 05 1,148 218ms 0ms 06 1,734 184ms 0ms 07 2,339 221ms 0ms 08 2,445 179ms 0ms 09 3,662 170ms 0ms 10 3,623 161ms 0ms 11 3,817 154ms 0ms 12 3,095 146ms 0ms 13 3,104 161ms 0ms 14 2,067 165ms 0ms 15 1,980 176ms 0ms 16 2,983 165ms 0ms 17 1,790 176ms 0ms 18 1,584 185ms 0ms 19 2,566 165ms 0ms 20 1,313 203ms 0ms 21 1,311 230ms 0ms 22 2,015 182ms 0ms 23 1,271 427ms 0ms -
Connections
Established Connections
Key values
- 49 connections Connection Peak
- 2026-04-22 12:29:31 Date
Connections per database
Key values
- zemm_monitoring Main Database
- 50,476 connections Total
Connections per user
Key values
- labanimal Main User
- 50,476 connections Total
-
Sessions
Simultaneous sessions
Key values
- 7 sessions Session Peak
- 2026-04-22 11:49:22 Date
Histogram of session times
Key values
- 47,104 0-500ms duration
Sessions per database
Key values
- zemm_monitoring Main Database
- 50,476 sessions Total
Sessions per user
Key values
- labanimal Main User
- 50,476 sessions Total
Sessions per host
Key values
- ::1 Main Host
- 50,476 sessions Total
Sessions per application
Key values
- Main Application
- 50,476 sessions Total
Application Count Total Duration Average Duration 40,640 2h8m8s 189ms _backend_cage_autocomplete_api.php_q_2025_limit_12_zemm_produkt 38 1s144ms 30ms _backend_cage_autocomplete_api.php_q_55-065_limit_12_zemm_produ 38 1s905ms 50ms _backend_wean_api.php_litter_id_10130227_zemm_produktiv_7_local 190 27s929ms 146ms _backend_wean_api.php_litter_id_10130236_zemm_produktiv_7_local 189 28s541ms 151ms _backend_wean_api.php_litter_id_10130257_zemm_produktiv_7_local 228 33s794ms 148ms _backend_wean_api.php_litter_id_10131563_zemm_produktiv_8_local 2 296ms 148ms _backend_wean_api.php_litter_id_10131917_zemm_produktiv_7_local 6 822ms 137ms _backend_wean_api.php_litter_id_10131927_zemm_produktiv_8_local 4 591ms 147ms _backend_wean_api.php_litter_id_10131932_zemm_produktiv_8_local 2 281ms 140ms _backend_wean_api.php_litter_id_10131934_zemm_produktiv_7_local 6 830ms 138ms _backend_wean_api.php_litter_id_10131935_zemm_produktiv_7_local 6 849ms 141ms _backend_wean_api.php_litter_id_10131994_zemm_produktiv_8_local 2 290ms 145ms _backend_wean_api.php_litter_id_10131999_zemm_produktiv_8_local 2 292ms 146ms _backend_wean_api.php_litter_id_10132000_zemm_produktiv_8_local 2 288ms 144ms _backend_wean_api.php_litter_id_10132002_zemm_produktiv_8_local 2 287ms 143ms _backend_wean_api.php_litter_id_10132011_zemm_produktiv_8_local 2 300ms 150ms _backend_wean_api.php_litter_id_10132017_zemm_produktiv_8_local 11 1s618ms 147ms _backend_wean_api.php_litter_id_10132020_zemm_produktiv_8_local 19 2s735ms 143ms _backend_wean_api.php_litter_id_10132021_zemm_produktiv_8_local 11 1s584ms 144ms _backend_wean_api.php_litter_id_10132022_zemm_produktiv_8_local 18 2s556ms 142ms _backend_wean_api.php_litter_id_10132023_zemm_produktiv_8_local 17 2s435ms 143ms _backend_wean_api.php_litter_id_10132024_zemm_produktiv_8_local 9 1s303ms 144ms _backend_wean_api.php_litter_id_10132025_zemm_produktiv_8_local 17 2s446ms 143ms _backend_wean_api.php_litter_id_10132026_zemm_produktiv_8_local 11 1s620ms 147ms _backend_wean_api.php_litter_id_10132198_zemm_produktiv_8_local 2 285ms 142ms _backend_wean_api.php_litter_id_10132267_zemm_produktiv_8_local 4 582ms 145ms _backend_wean_api.php_litter_id_10132291_zemm_produktiv_8_local 4 593ms 148ms _backend_wean_api.php_litter_id_10132300_zemm_produktiv_8_local 1 146ms 146ms _backend_wean_api.php_litter_id_10132319_zemm_produktiv_8_local 1 148ms 148ms _backend_wean_api.php_litter_id_10132321_zemm_produktiv_8_local 3 440ms 146ms _backend_wean_api.php_litter_id_10132322_zemm_produktiv_8_local 1 147ms 147ms _backend_wean_api.php_zemm_produktiv_8_localhost_5432 1 404ms 404ms _desktop__zemm_produktiv_7_localhost_5432 58 7s207ms 124ms _desktop__zemm_produktiv_8_localhost_5432 19 1s202ms 63ms _desktop_index.php_animal_name_4_species_9_sex_m_sterile_false_ 1 49ms 49ms _desktop_index.php_cage_name_50_2A_unweaned_only_true_val4_anim 1 110ms 110ms _desktop_index.php_cages_empty__25_val4_cages_search_command_an 2 96ms 48ms _desktop_index.php_cages_name_A15.415.1-_2A_cages_empty__25_val 1 199ms 199ms _desktop_index.php_cages_name_A15.415_2A_cages_empty__25_val4_c 2 453ms 226ms _desktop_index.php_command_admin_subcommand_strains_management_ 2 169ms 84ms _desktop_index.php_command_animals_breedings_subcommand_add_bre 5 233ms 46ms _desktop_index.php_command_animals_breedings_subcommand_select_ 39 2s375ms 60ms _desktop_index.php_command_animals_create_multiple_subcommand_i 1 54ms 54ms _desktop_index.php_command_animals_create_subcommand_found_val1 3 147ms 49ms _desktop_index.php_command_animals_create_subcommand_init_zemm_ 43 2s704ms 62ms _desktop_index.php_command_animals_edit_subcommand_init_id_1028 3 354ms 118ms _desktop_index.php_command_animals_edit_subcommand_init_id_1029 3 303ms 101ms _desktop_index.php_command_animals_edit_subcommand_init_id_1030 2 201ms 100ms _desktop_index.php_command_animals_edit_subcommand_link_init_va 38 4s625ms 121ms _desktop_index.php_command_animals_edit_subcommand_m_init_scree 38 5s377ms 141ms _desktop_index.php_command_animals_litters_create_subcommand_se 1 190ms 190ms _desktop_index.php_command_animals_litters_edit_subcommand_init 38 4s501ms 118ms _desktop_index.php_command_animals_litters_edit_subcommand_m_in 38 12s457ms 327ms _desktop_index.php_command_animals_litters_subcommand_search_va 1 140ms 140ms _desktop_index.php_command_animals_litters_subcommand_select_ze 39 1s997ms 51ms _desktop_index.php_command_animals_subcommand_delete_id_1030486 1 262ms 262ms _desktop_index.php_command_animals_subcommand_found_val1_101002 1 48ms 48ms _desktop_index.php_command_animals_subcommand_init_zemm_produkt 14 617ms 44ms _desktop_index.php_command_animals_subcommand_search_val4_anima 1 388ms 388ms _desktop_index.php_command_animals_subcommand_select_zemm_produ 40 3s364ms 84ms _desktop_index.php_command_cages_subcommand_init_zemm_produktiv 1 46ms 46ms _desktop_index.php_command_documents_subcommand_init_zemm_produ 8 394ms 49ms _desktop_index.php_command_facility_subcommand_init_zemm_produk 1 51ms 51ms _desktop_index.php_command_home_subcommand_init_zemm_produktiv_ 30 3s323ms 110ms _desktop_index.php_command_import_dashboard_subcommand_init_zem 1 68ms 68ms _desktop_index.php_command_import_dashboard_subcommand_source_f 1 42ms 42ms _desktop_index.php_command_import_dashboard_subcommand_view_run 4 226ms 56ms _desktop_index.php_command_licences_subcommand_init_zemm_produk 1 53ms 53ms _desktop_index.php_command_login_subcommand_init_zemm_produktiv 1,945 59s859ms 30ms _desktop_index.php_command_reports_subcommand_animals_per_room_ 3 432ms 144ms _desktop_index.php_command_reports_subcommand_animals_per_user_ 11 1s230ms 111ms _desktop_index.php_command_reports_subcommand_annual_fate_2024_ 1 205ms 205ms _desktop_index.php_command_reports_subcommand_annual_reports_ze 5 245ms 49ms _desktop_index.php_command_reports_subcommand_annual_user_2024_ 2 345ms 172ms _desktop_index.php_command_reports_subcommand_annual_year_2024_ 2 101ms 50ms _desktop_index.php_command_reports_subcommand_annual_year_2025_ 1 44ms 44ms _desktop_index.php_command_reports_subcommand_authority_meldung 7 413ms 59ms _desktop_index.php_command_reports_subcommand_fates_zemm_produk 40 5s187ms 129ms _desktop_index.php_command_reports_subcommand_init_zemm_produkt 80 23s863ms 298ms _desktop_index.php_command_reports_subcommand_scoresheet_per_li 1 1s29ms 1s29ms _desktop_index.php_command_reports_subcommand_task_status_zemm_ 6 712ms 118ms _desktop_index.php_command_tasks_subcommand_create_task_id_34_z 1 59ms 59ms _desktop_index.php_command_tasks_subcommand_edit_id_10134267_ze 38 3s417ms 89ms _desktop_index.php_command_tasks_subcommand_edit_id_10140560_ze 1 87ms 87ms _desktop_index.php_command_tasks_subcommand_edit_id_10141201_ze 2 171ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10141453_ze 2 168ms 84ms _desktop_index.php_command_tasks_subcommand_edit_id_10141502_ze 1 116ms 116ms _desktop_index.php_command_tasks_subcommand_edit_id_10141594_ze 1 81ms 81ms _desktop_index.php_command_tasks_subcommand_edit_id_10141851_ze 3 282ms 94ms _desktop_index.php_command_tasks_subcommand_edit_id_10142184_ze 1 90ms 90ms _desktop_index.php_command_tasks_subcommand_edit_id_10142304_ze 1 86ms 86ms _desktop_index.php_command_tasks_subcommand_edit_id_10142325_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_edit_id_10142326_ze 1 86ms 86ms _desktop_index.php_command_tasks_subcommand_edit_id_10142333_ze 1 86ms 86ms _desktop_index.php_command_tasks_subcommand_edit_id_10142337_ze 1 87ms 87ms _desktop_index.php_command_tasks_subcommand_edit_id_10142354_ze 2 174ms 87ms _desktop_index.php_command_tasks_subcommand_edit_id_10142379_ze 1 86ms 86ms _desktop_index.php_command_tasks_subcommand_edit_id_10142430_ze 2 173ms 86ms _desktop_index.php_command_tasks_subcommand_edit_id_10142474_ze 1 101ms 101ms _desktop_index.php_command_tasks_subcommand_edit_id_10142487_ze 1 92ms 92ms _desktop_index.php_command_tasks_subcommand_init_search_zemm_pr 38 1s890ms 49ms _desktop_index.php_command_tasks_subcommand_init_template_zemm_ 1 45ms 45ms _desktop_index.php_command_tasks_subcommand_open_legacy_1_id_10 25 2s424ms 96ms _desktop_index.php_command_tasks_subcommand_open_legacy_1_zemm_ 54 4s512ms 83ms _desktop_index.php_command_tasks_subcommand_open_zemm_produktiv 362 41s330ms 114ms _desktop_index.php_command_tasks_subcommand_select_tasks_issuer 1 85ms 85ms _desktop_index.php_current_only_true_val4_animals_breedings_sea 1 2s365ms 2s365ms _desktop_index.php_lic_filter_1_command_licences_subcommand_sel 2 100ms 50ms _desktop_index.php_m_action_animals_3Am_delete_row_animals_1029 1 845ms 845ms _desktop_index.php_m_action_animals_3Am_delete_row_animals_1030 3 132ms 44ms _desktop_index.php_m_action_animals_3Am_delete_val4_animals_lis 2 93ms 46ms _desktop_index.php_m_action_animals_edit_3Alink_init_val4_add_a 1 48ms 48ms _desktop_index.php_name_Abt_C3_B6ten_20v._20Tieren_20wg_20falsc 2 126ms 63ms _desktop_index.php_name_Genotypisierungsproben_20genommen_instr 4 251ms 62ms _desktop_index.php_name_Tiertransport_20durch_20das_20ZEMM_20-_ 1 57ms 57ms _desktop_index.php_name_Tiertransport_20innerhalb_20W_C3_BCrzbu 1 61ms 61ms _desktop_index.php_name_Verpaarungen_20f_C3_BCr_20OE_20Ly49H_in 1 65ms 65ms _desktop_index.php_name_Verpaarungen_20f_C3_BCr_20Versuchsvorha 3 206ms 68ms _desktop_index.php_name_Verpaarungen_20zur_20Zucht_ANLN-mCh_ins 1 65ms 65ms _desktop_index.php_name_Verpaarungen_20zur_20Zucht_Anillin_inst 1 65ms 65ms _desktop_index.php_name_Verpaarungen_20zur_20Zucht_MCM_instruct 1 67ms 67ms _desktop_index.php_reference_Formular_20ZEMM_title_Datenblatt_2 1 42ms 42ms _desktop_index.php_search_status__25_issuer_user_name_Stulz_2CS 6 507ms 84ms _desktop_index.php_species_1_sex_n_sterile_false_alive_true_sta 3 296ms 98ms _desktop_index.php_val4_project_command_animals_subcommand_init 1 47ms 47ms _desktop_index.php_view_animal_name_on_view_animal_id_on_animal 4 1s125ms 281ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b 30 13s428ms 447ms _desktop_index.php_zemm_produktiv_7_localhost_5432 972 4m37s 285ms _desktop_index.php_zemm_produktiv_8_localhost_5432 4,528 15m44s 208ms _desktop_scoresheets.php_controller_scoresheet_charts_scoreshee 11 560ms 50ms _desktop_scoresheets.php_controller_scoresheet_edit_scoresheet_ 13 686ms 52ms _desktop_scoresheets.php_controller_scoresheet_edit_zemm_produk 7 337ms 48ms _desktop_scoresheets.php_controller_scoresheet_results_scoreshe 14 750ms 53ms _desktop_scoresheets.php_controller_scoresheets_status_copied_z 3 167ms 55ms _desktop_scoresheets.php_controller_scoresheets_status_deleted_ 1 43ms 43ms _desktop_scoresheets.php_status_deleted_zemm_produktiv_7_localh 1 54ms 54ms _desktop_scoresheets.php_zemm_produktiv_7_localhost_5432 67 3s215ms 47ms backend:zemm_produktiv_7@localhost 1 4s19ms 4s19ms backend:zemm_produktiv_8@localhost 72 4s800ms 66ms expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 1s118ms 1s118ms pg_dump 4 1m29s 22s269ms psql 45 414ms 9ms taskscron:zemm_produktiv_7@zemm.fbiscience.eu 24 704ms 29ms taskscron:zemm_produktiv_8@h2940066.stratoserver.net:5432 24 12s746ms 531ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 120,010 buffers Checkpoint Peak
- 2026-04-22 19:19:45 Date
- 270.025 seconds Highest write time
- 1.115 seconds Sync time
Checkpoints Wal files
Key values
- 33 files Wal files usage Peak
- 2026-04-22 19:19:45 Date
Checkpoints distance
Key values
- 1,053.12 Mo Distance Peak
- 2026-04-22 19:19:45 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Apr 22 00 6,885 692.019s 0.179s 692.334s 01 22,023 799.799s 0.089s 799.953s 02 3,694 373.483s 0.099s 373.639s 03 3,560 359.59s 0.089s 359.728s 04 3,383 342.28s 0.088s 342.427s 05 3,583 362.153s 0.092s 362.305s 06 4,740 477.906s 0.173s 478.135s 07 17,282 987.999s 0.252s 988.314s 08 25,570 1,247.466s 0.223s 1,247.758s 09 7,975 802.7s 1.369s 804.174s 10 53,374 1,905.102s 0.347s 1,905.537s 11 10,647 1,056.408s 0.276s 1,056.836s 12 9,176 921.869s 0.28s 922.207s 13 10,807 1,082.094s 0.266s 1,082.417s 14 20,476 973.12s 0.193s 973.392s 15 5,853 586.882s 0.248s 587.291s 16 8,222 828.054s 0.278s 828.398s 17 4,667 474.787s 0.18s 475.021s 18 5,527 554.603s 0.12s 554.776s 19 128,113 1,081.799s 0.171s 1,082.062s 20 7,161 719.001s 0.131s 719.183s 21 5,832 525.521s 0.119s 525.753s 22 66,485 1,149.571s 0.125s 1,149.757s 23 8,017 802.618s 0.164s 802.837s Day Hour Added Removed Recycled Synced files Longest sync Average sync Apr 22 00 0 0 2 757 0.012s 0.012s 01 0 0 7 429 0.003s 0.011s 02 0 0 1 439 0.002s 0.012s 03 0 0 1 432 0.001s 0.012s 04 0 0 1 432 0.002s 0.012s 05 0 0 1 449 0.002s 0.012s 06 0 0 1 947 0.004s 0.012s 07 0 0 5 1,495 0.002s 0.012s 08 0 0 15 1,238 0.003s 0.012s 09 0 0 2 1,629 0.140s 0.019s 10 0 0 26 1,927 0.009s 0.012s 11 0 0 2 1,493 0.004s 0.012s 12 0 0 3 1,524 0.004s 0.012s 13 0 0 3 1,506 0.002s 0.012s 14 0 0 6 1,075 0.003s 0.012s 15 0 0 1 973 0.012s 0.013s 16 0 0 3 1,345 0.035s 0.012s 17 0 0 1 1,021 0.002s 0.012s 18 0 0 2 609 0.002s 0.012s 19 0 0 35 892 0.003s 0.012s 20 0 0 2 670 0.002s 0.012s 21 0 0 1 562 0.002s 0.012s 22 0 0 7 622 0.002s 0.012s 23 0 0 2 869 0.004s 0.012s Day Hour Count Avg time (sec) Apr 22 00 0 0s 01 0 0s 02 0 0s 03 0 0s 04 0 0s 05 0 0s 06 0 0s 07 0 0s 08 0 0s 09 0 0s 10 0 0s 11 0 0s 12 0 0s 13 0 0s 14 0 0s 15 0 0s 16 0 0s 17 0 0s 18 0 0s 19 0 0s 20 0 0s 21 0 0s 22 0 0s 23 0 0s Day Hour Mean distance Mean estimate Apr 22 00 2,791.50 kB 4,177.92 kB 01 10,359.09 kB 31,139.82 kB 02 1,450.25 kB 37,149.00 kB 03 1,349.92 kB 11,488.75 kB 04 1,333.25 kB 4,205.92 kB 05 1,397.25 kB 2,161.00 kB 06 1,727.08 kB 2,021.00 kB 07 6,289.42 kB 6,660.42 kB 08 19,860.75 kB 85,841.33 kB 09 3,017.67 kB 28,494.50 kB 10 35,325.75 kB 60,365.25 kB 11 3,444.08 kB 50,920.17 kB 12 3,392.58 kB 16,966.42 kB 13 5,153.50 kB 12,276.08 kB 14 7,475.42 kB 34,596.83 kB 15 2,158.75 kB 14,289.08 kB 16 3,206.25 kB 6,231.50 kB 17 1,732.08 kB 3,137.25 kB 18 2,056.67 kB 3,054.17 kB 19 48,230.17 kB 277,232.58 kB 20 2,264.08 kB 127,018.75 kB 21 1,757.08 kB 2,360.75 kB 22 9,781.25 kB 24,388.42 kB 23 2,468.83 kB 31,957.00 kB -
Temporary Files
Size of temporary files
Key values
- 291.38 MiB Temp Files size Peak
- 2026-04-22 23:49:58 Date
Number of temporary files
Key values
- 5 per second Temp Files Peak
- 2026-04-22 22:29:48 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Apr 22 00 65 3.59 GiB 56.60 MiB 01 60 3.32 GiB 56.59 MiB 02 60 3.32 GiB 56.63 MiB 03 60 3.32 GiB 56.67 MiB 04 60 3.32 GiB 56.71 MiB 05 60 3.33 GiB 56.75 MiB 06 60 3.33 GiB 56.80 MiB 07 0 0 0 08 45 2.50 GiB 56.89 MiB 09 65 3.64 GiB 57.27 MiB 10 45 2.53 GiB 57.47 MiB 11 60 3.37 GiB 57.51 MiB 12 45 2.53 GiB 57.55 MiB 13 5 287.86 MiB 57.57 MiB 14 20 1.13 GiB 57.65 MiB 15 45 2.53 GiB 57.67 MiB 16 55 3.11 GiB 57.87 MiB 17 50 2.83 GiB 58.01 MiB 18 35 1.98 GiB 58.06 MiB 19 60 3.40 GiB 58.09 MiB 20 65 3.69 GiB 58.14 MiB 21 70 3.98 GiB 58.17 MiB 22 65 3.70 GiB 58.22 MiB 23 50 2.84 GiB 58.26 MiB Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 964 52.16 GiB 46.60 MiB 66.95 MiB 55.40 MiB with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-22 15:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 21:14:38 Duration: 16s711ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 00:04:06 Duration: 5s490ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 08:59:45 Duration: 5s294ms Database: zemm_monitoring User: labanimal Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
Queries generating the largest temporary files
Rank Size Query 1 66.95 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 21:35:21 - Queryid: 22726 ]
2 66.05 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 21:35:21 - Queryid: 22726 ]
3 65.39 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 21:30:21 - Queryid: 16907 ]
4 64.39 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 21:30:21 - Queryid: 16907 ]
5 64.27 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 06:04:04 - Queryid: 3777644 ]
6 64.02 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 23:24:55 - Queryid: 100954 ]
7 63.20 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 11:44:27 - Queryid: 4043688 ]
8 63.13 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 00:18:58 - Queryid: 3655022 ]
9 62.83 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 19:49:18 - Queryid: 236671 ]
10 62.80 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 10:44:26 - Queryid: 3995801 ]
11 62.56 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 10:44:26 - Queryid: 3995801 ]
12 62.55 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 21:04:25 - Queryid: 270819 ]
13 62.38 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 20:49:19 - Queryid: 258096 ]
14 62.35 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 23:24:55 - Queryid: 100954 ]
15 62.06 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 21:18:50 - Queryid: 9348 ]
16 62.03 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 20:29:19 - Queryid: 251057 ]
17 61.43 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 23:04:55 - Queryid: 91300 ]
18 61.16 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 03:23:59 - Queryid: 3725199 ]
19 61.02 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 19:29:19 - Queryid: 199180 ]
20 60.96 MiB WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($1) AND collected_at <= $2 ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($3) AND collected_at BETWEEN $4 AND $5 ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ($6) AND collected_at BETWEEN $7 AND $8 ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT $9 OFFSET $10;[ Date: 2026-04-22 21:50:21 - Queryid: 34462 ]
-
Vacuums
Vacuums / Analyzes Distribution
Key values
- 2.32 sec Highest CPU-cost vacuum
Table observability.app_events
Database zemm_monitoring - 2026-04-22 22:42:23 Date
- 0 sec Highest CPU-cost analyze
Table
Database zemm_monitoring - Date
Average Autovacuum Duration
Key values
- 2.32 sec Highest CPU-cost vacuum
Table observability.app_events
Database zemm_monitoring - 2026-04-22 22:42:23 Date
Analyzes per table
Key values
- pg_catalog.pg_type (77) Main table analyzed (database zemm_produktiv_8)
- 499 analyzes Total
Table Number of analyzes zemm_produktiv_8.pg_catalog.pg_type 77 zemm_produktiv_7.pg_catalog.pg_type 72 zemm_produktiv_8.pg_catalog.pg_attribute 58 zemm_produktiv_7.pg_catalog.pg_attribute 51 zemm_produktiv_7.pg_catalog.pg_class 42 zemm_produktiv_8.pg_catalog.pg_class 42 zemm_produktiv_8.pg_catalog.pg_depend 37 zemm_produktiv_7.pg_catalog.pg_depend 35 zemm_produktiv_8.public.breedingssires 17 zemm_produktiv_8.public.breedingsdams 17 bucardo.pg_catalog.pg_shdepend 5 zemm_produktiv_8.public.cages_search_mview 5 zemm_produktiv_8.pg_catalog.pg_shdepend 4 zemm_produktiv_8.public.tmptasks 4 zemm_monitoring.pg_catalog.pg_shdepend 4 fbi_unire.pg_catalog.pg_shdepend 3 fbi_ci_db.pg_catalog.pg_shdepend 3 fbi_unibi.pg_catalog.pg_shdepend 2 zemm_monitoring.observability.metrics_timeseries 2 zemm_produktiv_7.public.choice 2 zemm_produktiv_7.public.users 2 zemm_produktiv_8.public.users 2 template1.pg_catalog.pg_shdepend 2 labanimal.pg_catalog.pg_shdepend 2 zemm_test_3.pg_catalog.pg_shdepend 2 zemm_produktiv_7.public.question 1 zemm_test_2.pg_catalog.pg_shdepend 1 zemm_produktiv_7.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.cages 1 zemm_produktiv_8.public.tasks 1 zemm_monitoring.observability.nginx_counters 1 postgres.pg_catalog.pg_shdepend 1 Total 499 Vacuums per table
Key values
- pg_catalog.pg_type (30) Main table vacuumed on database zemm_produktiv_7
- 216 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_7.pg_catalog.pg_type 30 30 0 0 0 0 0 1,202 223 359,910 0 0 zemm_produktiv_8.pg_catalog.pg_type 26 26 0 0 0 0 0 1,336 229 257,231 0 0 zemm_produktiv_7.pg_catalog.pg_attribute 21 21 0 0 0 0 0 3,810 1,158 1,569,044 13 230 zemm_produktiv_8.pg_catalog.pg_attribute 20 20 0 0 0 0 0 2,628 839 570,671 0 0 zemm_produktiv_8.public.breedingssires 17 0 0 0 0 0 0 2,516 68 159,664 0 0 zemm_produktiv_8.public.breedingsdams 17 0 0 0 0 0 0 3,383 239 803,735 0 0 zemm_produktiv_7.pg_catalog.pg_class 14 14 0 0 0 0 0 1,228 331 527,802 2 3 zemm_produktiv_8.pg_catalog.pg_class 14 14 0 0 0 0 0 1,372 430 532,012 2 2 zemm_produktiv_7.pg_catalog.pg_depend 11 11 0 0 0 0 0 1,280 333 613,303 1 9 zemm_produktiv_8.pg_catalog.pg_depend 10 10 0 0 0 0 0 1,245 359 429,308 0 0 bucardo.pg_catalog.pg_shdepend 8 8 0 0 0 0 0 710 204 380,798 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 5 5 0 0 0 0 0 905 230 1,193,096 46 147 zemm_monitoring.pg_toast.pg_toast_67431 5 0 0 0 0 0 0 4,636 1,557 3,545,053 1,532 9,192 zemm_produktiv_7.pg_toast.pg_toast_2619 4 4 0 0 0 0 0 701 186 902,564 27 68 fbi_unibi.pg_catalog.pg_shdepend 3 3 0 0 0 0 0 257 79 153,246 0 0 fbi_ci_db.pg_catalog.pg_shdepend 2 2 0 0 0 0 0 181 60 107,565 0 0 zemm_produktiv_8.public.tmptasks 2 2 0 0 0 0 0 154 55 33,610 0 0 zemm_monitoring.observability.app_events 1 0 0 0 0 0 0 10,067 10,070 13,793,770 0 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 0 0 0 0 0 235 73 237,817 42 131 zemm_monitoring.pg_toast.pg_toast_67411 1 0 0 0 0 0 0 6,214 1,894 14,156,002 1,890 7,560 zemm_monitoring.pg_toast.pg_toast_2619 1 1 0 0 0 0 0 97 24 135,418 6 13 zemm_monitoring.observability.db_top_queries 1 0 0 0 0 0 0 7,574 7,518 25,720,233 17 149 zemm_produktiv_8.public.cages_search_mview 1 1 0 0 0 0 0 631 338 1,143,592 43 388 zemm_produktiv_8.public.tasks 1 1 0 0 0 0 0 46,806 533 4,490,926 466 1,306 Total 216 174 0 0 0 0 0 99,168 27,030 71,816,370 4,087 19,198 Vacuum throughput per table
Key values
- observability.app_events (2.32) Max CPU elapsed for vacuum on database zemm_monitoring
- pg_catalog.pg_attribute (7.226 ms) Max I/O read time for vacuum on database zemm_monitoring
- pg_toast.pg_toast_67411 (4.172 ms) Max I/O write time for vacuum on database zemm_monitoring
I/O timing (ms) CPU (s) Table read write elapsed zemm_produktiv_7.pg_catalog.pg_type 2.658 0 0 zemm_produktiv_8.pg_catalog.pg_type 2.464 0 0 zemm_produktiv_7.pg_catalog.pg_attribute 7.226 0 0.28 zemm_produktiv_8.pg_catalog.pg_attribute 4.829 0 0.19 zemm_produktiv_8.public.breedingssires 0 0.42 0 zemm_produktiv_8.public.breedingsdams 0 0.273 0 zemm_produktiv_7.pg_catalog.pg_class 6.312 0 0 zemm_produktiv_8.pg_catalog.pg_class 4.035 0 0.07 zemm_produktiv_7.pg_catalog.pg_depend 6.444 0 0.09 zemm_produktiv_8.pg_catalog.pg_depend 2.587 0 0.1 bucardo.pg_catalog.pg_shdepend 2.357 0 0.06 zemm_produktiv_8.pg_toast.pg_toast_2619 1.492 0 0.05 zemm_monitoring.pg_toast.pg_toast_67431 6.145 1.377 0.4 zemm_produktiv_7.pg_toast.pg_toast_2619 3.481 0 0.05 fbi_unibi.pg_catalog.pg_shdepend 1.262 0 0.02 fbi_ci_db.pg_catalog.pg_shdepend 7.038 0 0.02 zemm_produktiv_8.public.tmptasks 0.849 0 0.01 zemm_monitoring.observability.app_events 0.68 0.045 2.32 zemm_produktiv_8.pg_catalog.pg_statistic 0.812 0 0.02 zemm_monitoring.pg_toast.pg_toast_67411 1.945 4.172 0.51 zemm_monitoring.pg_toast.pg_toast_2619 1.425 0 0 zemm_monitoring.observability.db_top_queries 6.846 0 1.91 zemm_produktiv_8.public.cages_search_mview 0.145 0 0.09 zemm_produktiv_8.public.tasks 0.651 0 0.63 Total 71.683 6.287 6.82 Tuples removed per table
Key values
- public.tasks (53985) Main table with removed tuples on database zemm_produktiv_8
- 118015 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain zemm_produktiv_8.public.tasks 1 1 53,985 57,032 0 0 16,814 zemm_produktiv_8.pg_catalog.pg_attribute 20 20 20,362 114,078 0 0 3,680 zemm_produktiv_7.pg_catalog.pg_attribute 21 21 10,769 149,522 0 0 3,990 zemm_produktiv_8.pg_catalog.pg_depend 10 10 8,638 41,710 0 0 550 zemm_produktiv_8.pg_catalog.pg_type 26 26 5,284 21,606 0 0 806 zemm_produktiv_7.pg_catalog.pg_depend 11 11 4,935 52,283 0 0 561 bucardo.pg_catalog.pg_shdepend 8 8 3,656 31,072 0 0 304 zemm_produktiv_7.pg_catalog.pg_type 30 30 2,923 25,830 0 0 810 zemm_produktiv_8.pg_catalog.pg_class 14 14 2,119 12,516 0 0 588 zemm_produktiv_7.pg_catalog.pg_class 14 14 1,568 13,818 0 0 546 fbi_unibi.pg_catalog.pg_shdepend 3 3 1,263 11,652 0 0 114 fbi_ci_db.pg_catalog.pg_shdepend 2 2 812 7,768 0 0 76 zemm_produktiv_8.pg_toast.pg_toast_2619 5 5 527 1,477 0 0 530 zemm_produktiv_7.pg_toast.pg_toast_2619 4 4 402 1,360 0 0 520 zemm_produktiv_8.public.cages_search_mview 1 1 291 13,885 0 0 234 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 264 1,272 0 0 144 zemm_produktiv_8.public.tmptasks 2 2 160 1,615 0 7 234 zemm_monitoring.pg_toast.pg_toast_2619 1 1 57 79 0 0 36 zemm_monitoring.observability.app_events 1 0 0 1,840,867 0 0 199,672 zemm_monitoring.pg_toast.pg_toast_67431 5 0 0 2,224,034 0 0 375,259 zemm_monitoring.pg_toast.pg_toast_67411 1 0 0 123,791 0 0 29,118 zemm_monitoring.observability.db_top_queries 1 0 0 11,765,834 0 0 1,288,402 zemm_produktiv_8.public.breedingssires 17 0 0 383,753 0 0 2,448 zemm_produktiv_8.public.breedingsdams 17 0 0 518,484 0 0 3,315 Total 216 174 118,015 17,415,338 0 7 1,928,751 Pages removed per table
Key values
- public.tmptasks (7) Main table with removed pages on database zemm_produktiv_8
- 7 pages Total removed
Table Number of vacuums Index scans Tuples removed Pages removed zemm_produktiv_8.public.tmptasks 2 2 160 7 zemm_produktiv_7.pg_catalog.pg_class 14 14 1568 0 zemm_produktiv_8.pg_toast.pg_toast_2619 5 5 527 0 zemm_produktiv_8.pg_catalog.pg_depend 10 10 8638 0 zemm_monitoring.observability.app_events 1 0 0 0 zemm_produktiv_7.pg_toast.pg_toast_2619 4 4 402 0 zemm_monitoring.pg_toast.pg_toast_67431 5 0 0 0 fbi_ci_db.pg_catalog.pg_shdepend 2 2 812 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 264 0 zemm_monitoring.pg_toast.pg_toast_67411 1 0 0 0 zemm_produktiv_7.pg_catalog.pg_depend 11 11 4935 0 zemm_monitoring.pg_toast.pg_toast_2619 1 1 57 0 zemm_produktiv_8.pg_catalog.pg_type 26 26 5284 0 fbi_unibi.pg_catalog.pg_shdepend 3 3 1263 0 zemm_monitoring.observability.db_top_queries 1 0 0 0 zemm_produktiv_8.public.cages_search_mview 1 1 291 0 zemm_produktiv_8.public.breedingssires 17 0 0 0 bucardo.pg_catalog.pg_shdepend 8 8 3656 0 zemm_produktiv_7.pg_catalog.pg_attribute 21 21 10769 0 zemm_produktiv_8.pg_catalog.pg_attribute 20 20 20362 0 zemm_produktiv_8.public.breedingsdams 17 0 0 0 zemm_produktiv_7.pg_catalog.pg_type 30 30 2923 0 zemm_produktiv_8.pg_catalog.pg_class 14 14 2119 0 zemm_produktiv_8.public.tasks 1 1 53985 0 Total 216 174 118,015 7 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Apr 22 00 11 24 01 1 1 02 0 0 03 1 0 04 0 0 05 0 0 06 7 17 07 17 43 08 19 38 09 9 29 10 37 62 11 10 33 12 11 30 13 11 28 14 11 26 15 9 24 16 10 30 17 4 11 18 4 8 19 20 43 20 9 22 21 0 0 22 5 10 23 10 20 - 2.32 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- ShareLock Main Lock Type
- 2 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query 1 1 1s1ms 1s1ms 1s1ms 1s1ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:15:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 08:54:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:40:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
2 1 1s 1s 1s 1s create index if not exists idx_db_top_queries_tenant on observability.db_top_queries (tenant_key, collected_at desc);-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:15:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 08:54:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:40:01 Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
Queries that waited the most
Rank Wait time Query 1 1s1ms CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-04-22 22:42:02 - Database: zemm_monitoring - User: labanimal ]
2 1s CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-04-22 19:11:02 - Database: zemm_monitoring - User: labanimal ]
-
Queries
Queries by type
Key values
- 96 Total read queries
- 24,766 Total write queries
Queries by database
Key values
- zemm_monitoring Main database
- 24,694 Requests
- 22h49m11s (zemm_monitoring)
- Main time consuming database
Queries by user
Key values
- labanimal Main user
- 673,725 Requests
User Request type Count Duration deploy Total 58 14m47s cte 4 1m18s ddl 30 4m31s others 9 22s849ms select 9 6m3s labanimal Total 673,725 19d9m12s copy from 8 18s286ms copy to 118 5m32s cte 3,938 4h14m56s ddl 666,571 18d18h55m9s others 179 2m6s select 2,860 50m15s tcl 4 2s749ms update 31 32s913ms postgres Total 166 3m43s copy to 166 3m43s Duration by user
Key values
- 19d9m12s (labanimal) Main time consuming user
User Request type Count Duration deploy Total 58 14m47s cte 4 1m18s ddl 30 4m31s others 9 22s849ms select 9 6m3s labanimal Total 673,725 19d9m12s copy from 8 18s286ms copy to 118 5m32s cte 3,938 4h14m56s ddl 666,571 18d18h55m9s others 179 2m6s select 2,860 50m15s tcl 4 2s749ms update 31 32s913ms postgres Total 166 3m43s copy to 166 3m43s Queries by host
Key values
- unknown Main host
- 673,691 Requests
- 19d5m36s (unknown)
- Main time consuming host
Host Request type Count Duration 127.0.0.1 Total 2 6s311ms ddl 2 6s311ms 81.169.238.237 Total 32 3m29s select 1 2m56s update 31 32s913ms [local] Total 224 18m31s copy to 166 3m43s cte 4 1m18s ddl 30 4m31s others 9 22s849ms select 9 6m3s unknown Total 673,691 19d5m36s copy from 8 18s286ms copy to 118 5m32s cte 3,938 4h14m56s ddl 666,569 18d18h55m2s others 179 2m6s select 2,859 47m19s tcl 4 2s749ms Queries by application
Key values
- unknown Main application
- 24,700 Requests
- 22h49m14s (unknown)
- Main time consuming application
Application Request type Count Duration _desktop_index.php_current_only_true_val4_animals_breedings_sea Total 1 2s323ms cte 1 2s323ms _desktop_index.php_zemm_produktiv_7_localhost_5432 Total 41 48s23ms cte 39 46s844ms select 2 1s178ms _desktop_index.php_zemm_produktiv_8_localhost_5432 Total 94 1m35s cte 11 20s799ms select 83 1m14s expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 Total 1 1s101ms update 1 1s101ms pg_dump Total 27 1m7s copy to 27 1m7s unknown Total 24,700 22h49m14s cte 241 16m46s ddl 24,446 22h32m13s select 11 12s566ms Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-04-22 10:04:01 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 303 1000-10000ms duration
Slowest individual queries
Rank Duration Query 1 16s711ms WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-22 15:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';[ Date: 2026-04-22 21:14:38 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
2 16s711ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
3 16s711ms CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
4 16s711ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
5 16s711ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
6 16s711ms CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
7 16s711ms CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
8 16s711ms CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
9 16s711ms CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
10 16s711ms CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
11 16s711ms CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
12 16s711ms CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
13 16s711ms CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
14 16s711ms CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
15 16s711ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
16 16s711ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
17 16s711ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
18 16s711ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);[ Date: 2026-04-22 21:15:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
19 8s46ms WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 1) THEN TRUE WHEN user_is_tgm (dam.editor, 1) THEN TRUE WHEN user_is_tgm (dam.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 1) THEN TRUE WHEN user_is_tgm (sire.editor, 1) THEN TRUE WHEN user_is_tgm (sire.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);[ Date: 2026-04-22 08:53:09 - Database: zemm_produktiv_7 - User: labanimal - Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 - Bind query: yes ]
20 8s46ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-04-22 08:54:01 - Database: zemm_monitoring - User: labanimal - Bind query: yes ]
Time consuming queries (N)
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 1h19m34s 1,438 500ms 16s711ms 3s320ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s628ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
2 1h19m34s 1,438 500ms 16s711ms 3s319ms create schema if not exists observability;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
3 1h19m34s 1,438 500ms 16s711ms 3s319ms 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 #3
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
4 1h19m34s 1,438 500ms 16s711ms 3s319ms 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 #4
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
5 1h19m34s 1,438 500ms 16s711ms 3s319ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
6 1h19m34s 1,438 500ms 16s711ms 3s319ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
7 1h19m34s 1,438 500ms 16s711ms 3s319ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
8 1h19m33s 1,438 500ms 16s711ms 3s319ms 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 #8
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m33s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
9 1h19m33s 1,438 500ms 16s711ms 3s319ms 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 #9
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m33s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
10 1h19m30s 1,438 500ms 16s711ms 3s317ms 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 #10
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
11 1h19m30s 1,438 500ms 16s711ms 3s317ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
12 1h19m30s 1,438 500ms 16s711ms 3s317ms 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 #12
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
13 1h19m30s 1,438 500ms 16s711ms 3s317ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
14 1h19m30s 1,438 500ms 16s711ms 3s317ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
15 1h19m30s 1,438 500ms 16s711ms 3s317ms create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
16 1h19m30s 1,438 500ms 16s711ms 3s317ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
17 1h19m30s 1,438 500ms 16s711ms 3s317ms 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 #17
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
18 16m46s 241 3s865ms 16s711ms 4s177ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Apr 22 01 13 55s894ms 4s299ms 02 12 48s667ms 4s55ms 03 12 48s669ms 4s55ms 04 12 48s338ms 4s28ms 05 12 48s593ms 4s49ms 06 12 48s873ms 4s72ms 07 12 50s738ms 4s228ms 09 9 38s782ms 4s309ms 10 13 53s429ms 4s109ms 11 9 37s384ms 4s153ms 12 12 48s857ms 4s71ms 13 9 37s118ms 4s124ms 14 1 4s104ms 4s104ms 15 4 16s811ms 4s202ms 16 9 37s190ms 4s132ms 17 11 45s824ms 4s165ms 18 10 40s279ms 4s27ms 19 7 29s90ms 4s155ms 20 12 48s277ms 4s23ms 21 13 51s783ms 3s983ms 22 14 1m12s 5s179ms 23 13 54s514ms 4s193ms 00 10 41s52ms 4s105ms [ User: labanimal - Total duration: 16m46s - Times executed: 241 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-22 15:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 21:14:38 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 00:04:06 Duration: 5s490ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 08:59:45 Duration: 5s294ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
19 56s362ms 43 796ms 8s46ms 1s310ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Apr 22 01 4 3s265ms 816ms 09 2 8s854ms 4s427ms 10 2 1s898ms 949ms 11 5 4s203ms 840ms 12 4 3s485ms 871ms 13 4 3s335ms 833ms 14 1 867ms 867ms 15 1 883ms 883ms 16 5 10s582ms 2s116ms 17 4 3s248ms 812ms 19 3 2s717ms 905ms 20 4 3s359ms 839ms 22 1 7s207ms 7s207ms 23 3 2s453ms 817ms [ User: labanimal - Total duration: 56s362ms - Times executed: 43 ]
[ Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 - Total duration: 46s844ms - Times executed: 39 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 7s194ms - Times executed: 3 ]
[ Application: _desktop_index.php_current_only_true_val4_animals_breedings_sea - Total duration: 2s323ms - Times executed: 1 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 1) THEN TRUE WHEN user_is_tgm (dam.editor, 1) THEN TRUE WHEN user_is_tgm (dam.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 1) THEN TRUE WHEN user_is_tgm (sire.editor, 1) THEN TRUE WHEN user_is_tgm (sire.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 08:53:09 Duration: 8s46ms Database: zemm_produktiv_7 User: labanimal Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 1) THEN TRUE WHEN user_is_tgm (dam.editor, 1) THEN TRUE WHEN user_is_tgm (dam.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 1) THEN TRUE WHEN user_is_tgm (sire.editor, 1) THEN TRUE WHEN user_is_tgm (sire.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 21:39:17 Duration: 7s207ms Database: zemm_produktiv_7 User: labanimal Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 10100116) THEN TRUE WHEN user_is_tgm (dam.editor, 10100116) THEN TRUE WHEN user_is_tgm (dam.tourist, 10100116) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 10100116) THEN TRUE WHEN user_is_tgm (sire.editor, 10100116) THEN TRUE WHEN user_is_tgm (sire.tourist, 10100116) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 15:21:29 Duration: 2s530ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
20 21s384ms 4 1s335ms 6s709ms 5s346ms copy public."targetgroupMembers" (id, targetgroup, "user", "group") to stdout;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 22 00 4 21s384ms 5s346ms [ User: labanimal - Total duration: 20s48ms - Times executed: 3 ]
[ User: postgres - Total duration: 1s335ms - Times executed: 1 ]
[ Application: pg_dump - Total duration: 21s384ms - Times executed: 4 ]
-
COPY public."targetgroupMembers" (id, targetgroup, "user", "group") TO stdout;
Date: 2026-04-22 23:49:01 Duration: 6s709ms Database: zemm_produktiv_8 User: labanimal Application: pg_dump Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
COPY public."targetgroupMembers" (id, targetgroup, "user", "group") TO stdout;
Date: 2026-04-22 23:49:51 Duration: 6s704ms Database: zemm_produktiv_8 User: labanimal Application: pg_dump Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
COPY public."targetgroupMembers" (id, targetgroup, "user", "group") TO stdout;
Date: 2026-04-22 23:49:29 Duration: 6s634ms Database: zemm_produktiv_7 User: labanimal Application: pg_dump Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 1,438 1h19m34s 500ms 16s711ms 3s320ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s628ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
2 1,438 1h19m34s 500ms 16s711ms 3s319ms create schema if not exists observability;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
3 1,438 1h19m34s 500ms 16s711ms 3s319ms 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 #3
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
4 1,438 1h19m34s 500ms 16s711ms 3s319ms 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 #4
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
5 1,438 1h19m34s 500ms 16s711ms 3s319ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
6 1,438 1h19m34s 500ms 16s711ms 3s319ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
7 1,438 1h19m34s 500ms 16s711ms 3s319ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
8 1,438 1h19m33s 500ms 16s711ms 3s319ms 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 #8
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m33s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
9 1,438 1h19m33s 500ms 16s711ms 3s319ms 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 #9
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m33s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
10 1,438 1h19m30s 500ms 16s711ms 3s317ms 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 #10
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
11 1,438 1h19m30s 500ms 16s711ms 3s317ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
12 1,438 1h19m30s 500ms 16s711ms 3s317ms 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 #12
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
13 1,438 1h19m30s 500ms 16s711ms 3s317ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
14 1,438 1h19m30s 500ms 16s711ms 3s317ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
15 1,438 1h19m30s 500ms 16s711ms 3s317ms create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
16 1,438 1h19m30s 500ms 16s711ms 3s317ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
17 1,438 1h19m30s 500ms 16s711ms 3s317ms 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 #17
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
18 241 16m46s 3s865ms 16s711ms 4s177ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Apr 22 01 13 55s894ms 4s299ms 02 12 48s667ms 4s55ms 03 12 48s669ms 4s55ms 04 12 48s338ms 4s28ms 05 12 48s593ms 4s49ms 06 12 48s873ms 4s72ms 07 12 50s738ms 4s228ms 09 9 38s782ms 4s309ms 10 13 53s429ms 4s109ms 11 9 37s384ms 4s153ms 12 12 48s857ms 4s71ms 13 9 37s118ms 4s124ms 14 1 4s104ms 4s104ms 15 4 16s811ms 4s202ms 16 9 37s190ms 4s132ms 17 11 45s824ms 4s165ms 18 10 40s279ms 4s27ms 19 7 29s90ms 4s155ms 20 12 48s277ms 4s23ms 21 13 51s783ms 3s983ms 22 14 1m12s 5s179ms 23 13 54s514ms 4s193ms 00 10 41s52ms 4s105ms [ User: labanimal - Total duration: 16m46s - Times executed: 241 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-22 15:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 21:14:38 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 00:04:06 Duration: 5s490ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 08:59:45 Duration: 5s294ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
19 43 56s362ms 796ms 8s46ms 1s310ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Apr 22 01 4 3s265ms 816ms 09 2 8s854ms 4s427ms 10 2 1s898ms 949ms 11 5 4s203ms 840ms 12 4 3s485ms 871ms 13 4 3s335ms 833ms 14 1 867ms 867ms 15 1 883ms 883ms 16 5 10s582ms 2s116ms 17 4 3s248ms 812ms 19 3 2s717ms 905ms 20 4 3s359ms 839ms 22 1 7s207ms 7s207ms 23 3 2s453ms 817ms [ User: labanimal - Total duration: 56s362ms - Times executed: 43 ]
[ Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 - Total duration: 46s844ms - Times executed: 39 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 7s194ms - Times executed: 3 ]
[ Application: _desktop_index.php_current_only_true_val4_animals_breedings_sea - Total duration: 2s323ms - Times executed: 1 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 1) THEN TRUE WHEN user_is_tgm (dam.editor, 1) THEN TRUE WHEN user_is_tgm (dam.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 1) THEN TRUE WHEN user_is_tgm (sire.editor, 1) THEN TRUE WHEN user_is_tgm (sire.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 08:53:09 Duration: 8s46ms Database: zemm_produktiv_7 User: labanimal Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 1) THEN TRUE WHEN user_is_tgm (dam.editor, 1) THEN TRUE WHEN user_is_tgm (dam.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 1) THEN TRUE WHEN user_is_tgm (sire.editor, 1) THEN TRUE WHEN user_is_tgm (sire.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 21:39:17 Duration: 7s207ms Database: zemm_produktiv_7 User: labanimal Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 10100116) THEN TRUE WHEN user_is_tgm (dam.editor, 10100116) THEN TRUE WHEN user_is_tgm (dam.tourist, 10100116) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 10100116) THEN TRUE WHEN user_is_tgm (sire.editor, 10100116) THEN TRUE WHEN user_is_tgm (sire.tourist, 10100116) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 15:21:29 Duration: 2s530ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
20 18 15s776ms 776ms 1s74ms 876ms select p_update_breedings (?, null, ?, ?::date, null, ?::text, ?::text, null) as id;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 22 08 2 1s885ms 942ms 09 5 4s139ms 827ms 11 10 8s734ms 873ms 15 1 1s16ms 1s16ms [ User: labanimal - Total duration: 15s776ms - Times executed: 18 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 15s776ms - Times executed: 18 ]
-
SELECT p_update_breedings (270, NULL, 9590, '2026-04-22'::date, NULL, '10290874'::text, '10290878;10290879'::text, NULL) AS id;
Date: 2026-04-22 07:55:04 Duration: 1s74ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
SELECT p_update_breedings (183, NULL, 11078, '2026-04-22'::date, NULL, '10289024'::text, '10297307;10297308'::text, NULL) AS id;
Date: 2026-04-22 14:06:04 Duration: 1s16ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
SELECT p_update_breedings (183, NULL, 10817, '2026-04-22'::date, NULL, '10291213'::text, '10291219'::text, NULL) AS id;
Date: 2026-04-22 10:22:06 Duration: 993ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 1s335ms 6s709ms 5s346ms 4 21s384ms copy public."targetgroupMembers" (id, targetgroup, "user", "group") to stdout;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Apr 22 00 4 21s384ms 5s346ms [ User: labanimal - Total duration: 20s48ms - Times executed: 3 ]
[ User: postgres - Total duration: 1s335ms - Times executed: 1 ]
[ Application: pg_dump - Total duration: 21s384ms - Times executed: 4 ]
-
COPY public."targetgroupMembers" (id, targetgroup, "user", "group") TO stdout;
Date: 2026-04-22 23:49:01 Duration: 6s709ms Database: zemm_produktiv_8 User: labanimal Application: pg_dump Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
COPY public."targetgroupMembers" (id, targetgroup, "user", "group") TO stdout;
Date: 2026-04-22 23:49:51 Duration: 6s704ms Database: zemm_produktiv_8 User: labanimal Application: pg_dump Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
COPY public."targetgroupMembers" (id, targetgroup, "user", "group") TO stdout;
Date: 2026-04-22 23:49:29 Duration: 6s634ms Database: zemm_produktiv_7 User: labanimal Application: pg_dump Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
2 3s865ms 16s711ms 4s177ms 241 16m46s with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Apr 22 01 13 55s894ms 4s299ms 02 12 48s667ms 4s55ms 03 12 48s669ms 4s55ms 04 12 48s338ms 4s28ms 05 12 48s593ms 4s49ms 06 12 48s873ms 4s72ms 07 12 50s738ms 4s228ms 09 9 38s782ms 4s309ms 10 13 53s429ms 4s109ms 11 9 37s384ms 4s153ms 12 12 48s857ms 4s71ms 13 9 37s118ms 4s124ms 14 1 4s104ms 4s104ms 15 4 16s811ms 4s202ms 16 9 37s190ms 4s132ms 17 11 45s824ms 4s165ms 18 10 40s279ms 4s27ms 19 7 29s90ms 4s155ms 20 12 48s277ms 4s23ms 21 13 51s783ms 3s983ms 22 14 1m12s 5s179ms 23 13 54s514ms 4s193ms 00 10 41s52ms 4s105ms [ User: labanimal - Total duration: 16m46s - Times executed: 241 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-22 15:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-22 15:14:21+02' AND '2026-04-22 21:14:21+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 21:14:38 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 00:04:01+02' AND '2026-04-22 00:04:01+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 00:04:06 Duration: 5s490ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at <= '2026-04-21 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod') AND collected_at BETWEEN '2026-04-21 08:59:40+02' AND '2026-04-22 08:59:40+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-04-22 08:59:45 Duration: 5s294ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
3 500ms 16s711ms 3s320ms 1,438 1h19m34s create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s628ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
4 500ms 16s711ms 3s319ms 1,438 1h19m34s create schema if not exists observability;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
5 500ms 16s711ms 3s319ms 1,438 1h19m34s 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 #5
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
6 500ms 16s711ms 3s319ms 1,438 1h19m34s create table if not exists observability.app_events ( id bigserial primary key, tenant_key text not null, event_type text not null, severity text not null, message text not null, payload jsonb, occurred_at timestamptz not null default now(), created_at timestamptz not null default now() );Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
7 500ms 16s711ms 3s319ms 1,438 1h19m34s create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
8 500ms 16s711ms 3s319ms 1,438 1h19m34s 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 Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
9 500ms 16s711ms 3s319ms 1,438 1h19m34s 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 Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s625ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m34s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
10 500ms 16s711ms 3s319ms 1,438 1h19m33s create index if not exists idx_db_top_queries_tenant on observability.db_top_queries (tenant_key, collected_at desc);Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m33s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
11 500ms 16s711ms 3s319ms 1,438 1h19m33s create table if not exists observability.db_top_queries ( id bigserial primary key, tenant_key text not null, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz not null default now() );Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m23s 3s392ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m33s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
12 500ms 16s711ms 3s317ms 1,438 1h19m30s 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 #12
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
13 500ms 16s711ms 3s317ms 1,438 1h19m30s create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
14 500ms 16s711ms 3s317ms 1,438 1h19m30s 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 #14
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
15 500ms 16s711ms 3s317ms 1,438 1h19m30s create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
16 500ms 16s711ms 3s317ms 1,438 1h19m30s alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
17 500ms 16s711ms 3s317ms 1,438 1h19m30s 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 #17
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
18 500ms 16s711ms 3s317ms 1,438 1h19m30s alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
19 500ms 16s711ms 3s317ms 1,438 1h19m30s 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 #19
Day Hour Count Duration Avg duration Apr 22 01 60 3m39s 3s662ms 02 60 3m54s 3s913ms 03 60 4m3s 4s60ms 04 60 4m1s 4s32ms 05 60 4m2s 4s40ms 06 60 4m4s 4s73ms 07 60 4m6s 4s115ms 08 60 1m16s 1s276ms 09 60 2m23s 2s384ms 10 60 3m9s 3s151ms 11 60 1m43s 1s721ms 12 60 3m2s 3s42ms 13 60 3m49s 3s821ms 14 60 1m36s 1s609ms 15 60 1m31s 1s517ms 16 60 3m26s 3s435ms 17 60 3m12s 3s204ms 18 60 3m54s 3s915ms 19 60 3m49s 3s829ms 20 60 3m20s 3s342ms 21 60 3m59s 3s994ms 22 58 3m46s 3s908ms 23 60 3m37s 3s622ms 00 60 3m58s 3s969ms [ User: labanimal - Total duration: 1h19m30s - Times executed: 1429 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:15:01 Duration: 16s711ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 08:54:01 Duration: 8s46ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-04-22 21:40:01 Duration: 7s207ms Database: zemm_monitoring User: labanimal Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
20 796ms 8s46ms 1s310ms 43 56s362ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Apr 22 01 4 3s265ms 816ms 09 2 8s854ms 4s427ms 10 2 1s898ms 949ms 11 5 4s203ms 840ms 12 4 3s485ms 871ms 13 4 3s335ms 833ms 14 1 867ms 867ms 15 1 883ms 883ms 16 5 10s582ms 2s116ms 17 4 3s248ms 812ms 19 3 2s717ms 905ms 20 4 3s359ms 839ms 22 1 7s207ms 7s207ms 23 3 2s453ms 817ms [ User: labanimal - Total duration: 56s362ms - Times executed: 43 ]
[ Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 - Total duration: 46s844ms - Times executed: 39 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 7s194ms - Times executed: 3 ]
[ Application: _desktop_index.php_current_only_true_val4_animals_breedings_sea - Total duration: 2s323ms - Times executed: 1 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 1) THEN TRUE WHEN user_is_tgm (dam.editor, 1) THEN TRUE WHEN user_is_tgm (dam.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 1) THEN TRUE WHEN user_is_tgm (sire.editor, 1) THEN TRUE WHEN user_is_tgm (sire.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 08:53:09 Duration: 8s46ms Database: zemm_produktiv_7 User: labanimal Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 1) THEN TRUE WHEN user_is_tgm (dam.editor, 1) THEN TRUE WHEN user_is_tgm (dam.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 1) THEN TRUE WHEN user_is_tgm (sire.editor, 1) THEN TRUE WHEN user_is_tgm (sire.tourist, 1) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 21:39:17 Duration: 7s207ms Database: zemm_produktiv_7 User: labanimal Application: _desktop_index.php_zemm_produktiv_7_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 10100116) THEN TRUE WHEN user_is_tgm (dam.editor, 10100116) THEN TRUE WHEN user_is_tgm (dam.tourist, 10100116) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 10100116) THEN TRUE WHEN user_is_tgm (sire.editor, 10100116) THEN TRUE WHEN user_is_tgm (sire.tourist, 10100116) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-04-22 15:21:29 Duration: 2s530ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-04-22_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
- 229,308 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
- 5 ERROR entries
- 0 WARNING entries
- 14 EVENTLOG entries
Most Frequent Errors/Events
Key values
- 7 Max number of times the same event was reported
- 19 Total events found
Rank Times reported Error 1 7 ERROR: invalid input syntax for type boolean: ...
Times Reported Most Frequent Error / Event #1
Day Hour Count Apr 22 13 2 21 1 23 4 - ERROR: invalid input syntax for type boolean: ""
- ERROR: invalid input syntax for type boolean: ""
- ERROR: invalid input syntax for type boolean: ""
Statement: SELECT a.id AS animal_id, COALESCE(a."animalID", a.identification, '') AS animal_identifier, a.fate, COALESCE(a."fateComment", '') AS fate_comment, a."deathDate" AS death_date, a."outgoingDate" AS outgoing_date, a."birthDate" AS birth_date, COALESCE(a.sex, '') AS sex, COALESCE(a.transgen, 0) AS transgen, COALESCE(a."geneStatus", '') AS gene_status, COALESCE(a."geneFlanking", '') AS gene_flanking, COALESCE(a."geneDeleted", '') AS gene_deleted, COALESCE(a.genecomment, '') AS gene_comment, COALESCE(a.project, '') AS project_id, COALESCE(a."plannedUseFor", '') AS planned_use_for, COALESCE(l.id, 0) AS license_id, COALESCE(l.application_id, '') AS application_id, COALESCE(l.az, '') AS az, COALESCE(l.title, '') AS license_title, COALESCE(l.category, 0) AS license_category, COALESCE(l.permission, '') AS permission, COALESCE(g.name, '') AS workgroup, COALESCE(s.line_abnormality, '') AS line_abnormality, COALESCE(s.cancel_criteria, '') AS cancel_criteria, COALESCE(s.severityid, 0) AS strain_severityid, COALESCE(stress.max_score, 0)::numeric AS stress_hint_score FROM animals a LEFT JOIN licenses l ON (a.project ~ '^[0-9]+$' AND l.id = CAST(a.project AS BIGINT)) LEFT JOIN groups g ON g.id = l.workgroup LEFT JOIN strains s ON s.id = a.strain LEFT JOIN ( SELECT sd.animals_id AS animal_id, MAX(sl."maxvalue") AS max_score FROM scoresheet_diary sd INNER JOIN stresslevel_response slr ON slr.scoresheet_response_id = sd.scoresheet_response_id INNER JOIN stress_levels sl ON sl.id = slr.stresslevel_id GROUP BY sd.animals_id ) stress ON stress.animal_id = a.id WHERE NOT(a.deleted) AND ( (a."deathDate" IS NOT NULL AND a."deathDate" >= '2026-01-01'::DATE AND a."deathDate" <= '2026-12-31'::DATE) OR (a."outgoingDate" IS NOT NULL AND a."outgoingDate" >= '2026-01-01'::DATE AND a."outgoingDate" <= '2026-12-31'::DATE) OR (a.fate IN (1, 10, 11, 13, 14, 15, 9, 4) AND a."deathDate" IS NULL AND a."outgoingDate" IS NULL) ) ORDER BY g.name, l.application_id, a.id
Date: 2026-04-22 12:29:57 Database: zemm_produktiv_8 Application: _desktop_index.php_command_reports_subcommand_authority_meldung User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
Statement: SELECT a.id AS animal_id, COALESCE(a."animalID", a.identification, '') AS animal_identifier, a.fate, COALESCE(a."fateComment", '') AS fate_comment, a."deathDate" AS death_date, a."outgoingDate" AS outgoing_date, a."birthDate" AS birth_date, COALESCE(a.sex, '') AS sex, COALESCE(a.transgen, 0) AS transgen, COALESCE(a."geneStatus", '') AS gene_status, COALESCE(a."geneFlanking", '') AS gene_flanking, COALESCE(a."geneDeleted", '') AS gene_deleted, COALESCE(a.genecomment, '') AS gene_comment, COALESCE(a.project, '') AS project_id, COALESCE(a."plannedUseFor", '') AS planned_use_for, COALESCE(l.id, 0) AS license_id, COALESCE(l.application_id, '') AS application_id, COALESCE(l.az, '') AS az, COALESCE(l.title, '') AS license_title, COALESCE(l.category, 0) AS license_category, COALESCE(l.permission, '') AS permission, COALESCE(g.name, '') AS workgroup, COALESCE(s.line_abnormality, '') AS line_abnormality, COALESCE(s.cancel_criteria, '') AS cancel_criteria, COALESCE(s.severityid, 0) AS strain_severityid, COALESCE(stress.max_score, 0)::numeric AS stress_hint_score FROM animals a LEFT JOIN licenses l ON (a.project ~ '^[0-9]+$' AND l.id = CAST(a.project AS BIGINT)) LEFT JOIN groups g ON g.id = l.workgroup LEFT JOIN strains s ON s.id = a.strain LEFT JOIN ( SELECT sd.animals_id AS animal_id, MAX(sl."maxvalue") AS max_score FROM scoresheet_diary sd INNER JOIN stresslevel_response slr ON slr.scoresheet_response_id = sd.scoresheet_response_id INNER JOIN stress_levels sl ON sl.id = slr.stresslevel_id GROUP BY sd.animals_id ) stress ON stress.animal_id = a.id WHERE NOT(a.deleted) AND ( (a."deathDate" IS NOT NULL AND a."deathDate" >= '2026-01-01'::DATE AND a."deathDate" <= '2026-12-31'::DATE) OR (a."outgoingDate" IS NOT NULL AND a."outgoingDate" >= '2026-01-01'::DATE AND a."outgoingDate" <= '2026-12-31'::DATE) OR (a.fate IN (1, 10, 11, 13, 14, 15, 9, 4) AND a."deathDate" IS NULL AND a."outgoingDate" IS NULL) ) ORDER BY g.name, l.application_id, a.id
Date: 2026-04-22 12:30:00 Database: zemm_produktiv_8 Application: _desktop_index.php_command_reports_subcommand_authority_meldung User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
Statement: SELECT a.id AS animal_id, COALESCE(a."animalID", a.identification, '') AS animal_identifier, a.fate, COALESCE(a."fateComment", '') AS fate_comment, a."deathDate" AS death_date, a."outgoingDate" AS outgoing_date, a."birthDate" AS birth_date, COALESCE(a.sex, '') AS sex, COALESCE(a.transgen, 0) AS transgen, COALESCE(a."geneStatus", '') AS gene_status, COALESCE(a."geneFlanking", '') AS gene_flanking, COALESCE(a."geneDeleted", '') AS gene_deleted, COALESCE(a.genecomment, '') AS gene_comment, COALESCE(a.project, '') AS project_id, COALESCE(a."plannedUseFor", '') AS planned_use_for, COALESCE(l.id, 0) AS license_id, COALESCE(l.application_id, '') AS application_id, COALESCE(l.az, '') AS az, COALESCE(l.title, '') AS license_title, COALESCE(l.category, 0) AS license_category, COALESCE(l.permission, '') AS permission, COALESCE(g.name, '') AS workgroup, COALESCE(s.line_abnormality, '') AS line_abnormality, COALESCE(s.cancel_criteria, '') AS cancel_criteria, COALESCE(s.severityid, 0) AS strain_severityid, COALESCE(stress.max_score, 0)::numeric AS stress_hint_score FROM animals a LEFT JOIN licenses l ON (a.project ~ '^[0-9]+$' AND l.id = CAST(a.project AS BIGINT)) LEFT JOIN groups g ON g.id = l.workgroup LEFT JOIN strains s ON s.id = a.strain LEFT JOIN ( SELECT sd.animals_id AS animal_id, MAX(sl."maxvalue") AS max_score FROM scoresheet_diary sd INNER JOIN stresslevel_response slr ON slr.scoresheet_response_id = sd.scoresheet_response_id INNER JOIN stress_levels sl ON sl.id = slr.stresslevel_id GROUP BY sd.animals_id ) stress ON stress.animal_id = a.id WHERE NOT(a.deleted) AND ( (a."deathDate" IS NOT NULL AND a."deathDate" >= '2026-01-01'::DATE AND a."deathDate" <= '2026-12-31'::DATE) OR (a."outgoingDate" IS NOT NULL AND a."outgoingDate" >= '2026-01-01'::DATE AND a."outgoingDate" <= '2026-12-31'::DATE) OR (a.fate IN (1, 10, 11, 13, 14, 15, 9, 4) AND a."deathDate" IS NULL AND a."outgoingDate" IS NULL) ) ORDER BY g.name, l.application_id, a.id
Date: 2026-04-22 20:36:56 Database: zemm_produktiv_7 Application: _desktop_index.php_command_reports_subcommand_authority_meldung User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
2 2 ERROR: relation "..." does not exist
Times Reported Most Frequent Error / Event #2
Day Hour Count Apr 22 22 2 - ERROR: relation "bucardo.bucardo_config" does not exist
- ERROR: relation "bucardo.bucardo_config" does not exist
Statement: SELECT setting FROM bucardo.bucardo_config WHERE LOWER(name) = $1
Date: 2026-04-22 21:10:40 Database: bucardo Application: User: bucardo Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_210017.csv
Statement: SELECT setting FROM bucardo.bucardo_config WHERE LOWER(name) = $1
Date: 2026-04-22 21:12:14 Database: bucardo Application: User: bucardo Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
3 2 LOG: process ... still waiting for ShareLock on relation ... of database ... after ... ms
Times Reported Most Frequent Error / Event #3
Day Hour Count Apr 22 20 1 23 1 - LOG: process 181691 still waiting for ShareLock on relation 67431 of database 51653 after 1000.064 ms
- LOG: process 79866 still waiting for ShareLock on relation 67411 of database 51653 after 1000.068 ms
Detail: Process holding the lock: 181529. Wait queue: 181691.
Statement: CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC)Date: 2026-04-22 19:11:02 Database: zemm_monitoring Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
Detail: Process holding the lock: 79628. Wait queue: 79866, 79883.
Statement: CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC)Date: 2026-04-22 22:42:02 Database: zemm_monitoring Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
4 2 ERROR: invalid input syntax for type date: ...
Times Reported Most Frequent Error / Event #4
Day Hour Count Apr 22 14 2 - ERROR: invalid input syntax for type date: ""
- ERROR: invalid input syntax for type date: ""
Statement: SELECT p_update_animals(10100206, '10304887', '', NULL, 'm', false,'', '', false, '', '', NULL, 0, '', NULL, '', false,'','',NULL, '','',NULL,0);
Date: 2026-04-22 13:09:56 Database: zemm_produktiv_8 Application: _desktop_index.php_m_action_animals_3Am_delete_row_animals_1030 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
Statement: SELECT p_update_animals(10100206, '10304887', '', NULL, 'm', false,'', '', false, '', '', NULL, 0, '', NULL, '', false,'','',NULL, '','',NULL,0);
Date: 2026-04-22 13:10:00 Database: zemm_produktiv_8 Application: _desktop_index.php_m_action_animals_3Am_delete_row_animals_1030 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
5 2 ERROR: canceling autovacuum task
Times Reported Most Frequent Error / Event #5
Day Hour Count Apr 22 20 1 23 1 - ERROR: canceling autovacuum task
- ERROR: canceling autovacuum task
Context: while scanning block 1280866 of relation "observability.db_top_queries" automatic vacuum of table "zemm_monitoring.observability.db_top_queries"
Date: 2026-04-22 19:11:02 Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv
Context: while scanning block 189663 of relation "observability.app_events" automatic vacuum of table "zemm_monitoring.observability.app_events"
Date: 2026-04-22 22:42:02 Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
6 2 LOG: database system was shut down at ...
Times Reported Most Frequent Error / Event #6
Day Hour Count Apr 22 22 2 - LOG: database system was shut down at 2026-04-22 21:00:14 CEST
- LOG: database system was shut down at 2026-04-22 21:10:40 CEST
Date: 2026-04-22 21:00:17 Log file: /var/log/postgresql/postgresql-2026-04-22_210017.csv
Date: 2026-04-22 21:12:10 Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
7 1 FATAL: terminating connection due to administrator command
Times Reported Most Frequent Error / Event #7
Day Hour Count Apr 22 00 1 - FATAL: terminating connection due to administrator command
Date: 2026-04-22 23:49:34 Database: zemm_produktiv_7 Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_211210.csv
8 1 ERROR: null value in column "..." of relation "..." violates not-null constraint
Times Reported Most Frequent Error / Event #8
Day Hour Count Apr 22 14 1 - ERROR: null value in column "name" of relation "users" violates not-null constraint
Detail: Failing row contains (10100226, null, null, higuchi, null, null, null, null, null, 6, null, null, null, null, f, null, null, null, null, null, null, f, t, null, null, null, null, null, null, null, f, null, null, null, -1, null, null, f, null, light).
Context: SQL statement "INSERT INTO users ("id", "name", "pass", "active", "group", "role", "title", "fullName", "eMail", "disablemail", "language", "affiliation", "ILVnum", "FEMnum", "costCentre", "internInstructionNR", "mailHost", "mailMethod", "mailSSL", "mailPort", "mailUser", "mailPass", "available") VALUES (myID, theUserName, thePassword, theActive, theGroup, theRole, theTitle, theFullName, theEmail, ifDisableMail, theLanguage, theAffiliation, theILVNumber, theFEMNumber, theCostCenter, theInternInstructionNr, theMailHost, theMailMethod, ifMailSSL, theMailPort, theMailUser, theMailPassword, theAvailable)" PL/pgSQL function p_create_user(integer,text,text,boolean,integer,bigint,text,text,text,boolean,integer,integer,text,text,text,text,text,text,boolean,text,text,text,text,text,boolean) line 35 at SQL statement
Statement: SELECT p_create_user(NULL::integer, NULL::text, NULL::text, false::boolean, NULL::integer, -1::bigint, NULL::text, 'higuchi'::text, NULL::text, true::boolean, NULL::integer, 6::integer, NULL::text, NULL::text, NULL::text, NULL::text, NULL::text, NULL::text, false::boolean, NULL::text, NULL::text, NULL::text, NULL::text, NULL::text, false::boolean)Date: 2026-04-22 13:04:12 Database: zemm_produktiv_8 Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-04-22_000000.csv