-
Global information
- Generated on Mon Jun 15 06:05:14 2026
- Log file: /var/log/postgresql/postgresql-2026-05-13_000000.csv, ..., /var/log/postgresql/postgresql-2026-06-15_000000.csv
- Parsed 323,935 log entries in 5m13s
- Log start from 2026-05-27 00:00:01 to 2026-05-27 23:59:03
-
Overview
Global Stats
- 39 Number of unique normalized queries
- 24,667 Number of queries
- 1d6h41m35s Total query duration
- 2026-05-27 00:00:01 First query
- 2026-05-27 23:59:01 Last query
- 18 queries/s at 2026-05-27 23:06:01 Query peak
- 1d6h41m35s Total query duration
- 0ms Prepare/parse total duration
- 0ms Bind total duration
- 1d6h41m35s Execute total duration
- 2 Number of events
- 2 Number of unique normalized events
- 1 Max number of times the same event was reported
- 0 Number of cancellation
- 102 Total number of automatic vacuums
- 245 Total number of automatic analyzes
- 2 Number temporary file
- 118.81 MiB Max size of temporary file
- 118.81 MiB Average size of temporary file
- 31,010 Total number of sessions
- 6 sessions at 2026-05-27 04:43:11 Session peak
- 1h38m17s Total duration of sessions
- 190ms Average duration of sessions
- 0 Average queries per session
- 3s563ms Average queries duration per session
- 0ms Average idle time per session
- 31,010 Total number of connections
- 34 connections/s at 2026-05-27 16:09:15 Connection peak
- 2 Total number of databases
SQL Traffic
Key values
- 18 queries/s Query Peak
- 2026-05-27 23:06:01 Date
SELECT Traffic
Key values
- 2 queries/s Query Peak
- 2026-05-27 14:04:50 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 18 queries/s Query Peak
- 2026-05-27 23:06:01 Date
Queries duration
Key values
- 1d6h41m35s 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) May 27 00 1,026 0ms 12s257ms 10s985ms 3m28s 3m39s 3m40s 01 1,027 1s15ms 12s335ms 10s928ms 3m29s 3m39s 3m41s 02 1,025 12s171ms 12s357ms 12s267ms 3m30s 3m41s 3m42s 03 1,026 12s133ms 12s325ms 12s223ms 3m38s 3m40s 3m41s 04 1,022 12s180ms 12s250ms 12s236ms 3m28s 3m28s 3m39s 05 1,020 12s250ms 12s250ms 12s250ms 3m28s 3m28s 3m28s 06 1,021 1s825ms 12s250ms 7s553ms 3m28s 3m28s 3m30s 07 1,020 1s825ms 1s825ms 1s825ms 31s34ms 31s34ms 31s34ms 08 1,026 513ms 1s947ms 1s397ms 32s982ms 33s114ms 35s654ms 09 1,040 513ms 19s215ms 5s260ms 5m26s 5m26s 5m32s 10 1,029 507ms 2s513ms 1s498ms 42s726ms 42s726ms 44s242ms 11 1,022 720ms 791ms 729ms 12s513ms 12s513ms 14s25ms 12 1,027 710ms 1s573ms 1s153ms 26s751ms 27s129ms 28s308ms 13 1,027 710ms 1s834ms 1s490ms 30s312ms 30s693ms 32s976ms 14 1,034 610ms 1s827ms 1s531ms 30s936ms 31s69ms 32s331ms 15 1,021 1s827ms 2s353ms 2s230ms 40s5ms 40s5ms 40s5ms 16 1,029 1s478ms 2s353ms 1s642ms 40s5ms 40s5ms 41s484ms 17 1,033 677ms 1s558ms 1s513ms 27s509ms 27s682ms 28s12ms 18 1,031 677ms 1s553ms 1s473ms 27s351ms 27s522ms 27s923ms 19 1,030 1s498ms 1s573ms 1s538ms 27s680ms 27s817ms 28s309ms 20 1,031 1s452ms 1s576ms 1s504ms 26s796ms 27s714ms 28s340ms 21 1,032 1s444ms 1s547ms 1s504ms 26s999ms 27s623ms 27s835ms 22 1,031 1s459ms 1s555ms 1s491ms 26s737ms 27s172ms 27s967ms 23 1,037 557ms 2s20ms 1s485ms 26s858ms 27s344ms 31s301ms Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) May 27 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 0 0 0ms 0ms 0ms 0ms 07 0 0 0ms 0ms 0ms 0ms 08 3 0 515ms 0ms 0ms 513ms 09 20 0 4s255ms 0ms 1s502ms 36s290ms 10 8 0 914ms 0ms 0ms 1s546ms 11 2 0 756ms 0ms 0ms 0ms 12 3 0 755ms 0ms 0ms 710ms 13 0 0 0ms 0ms 0ms 0ms 14 9 0 745ms 0ms 0ms 1s575ms 15 0 0 0ms 0ms 0ms 0ms 16 0 0 0ms 0ms 0ms 0ms 17 2 0 712ms 0ms 0ms 0ms 18 0 0 0ms 0ms 0ms 0ms 19 0 0 0ms 0ms 0ms 0ms 20 0 0 0ms 0ms 0ms 0ms 21 0 0 0ms 0ms 0ms 0ms 22 0 0 0ms 0ms 0ms 0ms 23 0 5 1s295ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) May 27 00 0 0 0 0 0ms 0ms 0ms 0ms 01 0 1 0 0 1s15ms 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 May 27 00 0 6 6.00 0.00% 01 0 6 6.00 0.00% 02 0 5 5.00 0.00% 03 0 6 6.00 0.00% 04 0 2 2.00 0.00% 05 0 0 0.00 0.00% 06 0 0 0.00 0.00% 07 0 0 0.00 0.00% 08 0 0 0.00 0.00% 09 0 0 0.00 0.00% 10 0 0 0.00 0.00% 11 0 0 0.00 0.00% 12 0 4 4.00 0.00% 13 0 4 4.00 0.00% 14 0 2 2.00 0.00% 15 0 0 0.00 0.00% 16 0 9 9.00 0.00% 17 0 11 11.00 0.00% 18 0 11 11.00 0.00% 19 0 10 10.00 0.00% 20 0 11 11.00 0.00% 21 0 12 12.00 0.00% 22 0 11 11.00 0.00% 23 0 12 12.00 0.00% Day Hour Count Average / Second May 27 00 871 0.24/s 01 900 0.25/s 02 867 0.24/s 03 897 0.25/s 04 900 0.25/s 05 902 0.25/s 06 1,701 0.47/s 07 2,143 0.60/s 08 1,674 0.47/s 09 2,162 0.60/s 10 1,834 0.51/s 11 905 0.25/s 12 2,122 0.59/s 13 1,894 0.53/s 14 2,164 0.60/s 15 933 0.26/s 16 1,163 0.32/s 17 1,070 0.30/s 18 978 0.27/s 19 883 0.25/s 20 1,161 0.32/s 21 1,104 0.31/s 22 873 0.24/s 23 909 0.25/s Day Hour Count Average Duration Average idle time May 27 00 871 273ms 0ms 01 900 269ms 0ms 02 867 259ms 0ms 03 897 267ms 0ms 04 900 213ms 0ms 05 902 186ms 0ms 06 1,701 142ms 0ms 07 2,143 170ms 0ms 08 1,674 156ms 0ms 09 2,162 240ms 0ms 10 1,834 156ms 0ms 11 905 205ms 0ms 12 2,122 149ms 0ms 13 1,894 158ms 0ms 14 2,164 146ms 0ms 15 933 180ms 0ms 16 1,163 182ms 0ms 17 1,070 198ms 0ms 18 978 209ms 0ms 19 883 214ms 0ms 20 1,161 185ms 0ms 21 1,104 189ms 0ms 22 873 209ms 0ms 23 909 219ms 0ms -
Connections
Established Connections
Key values
- 34 connections Connection Peak
- 2026-05-27 16:09:15 Date
Connections per database
Key values
- zemm_monitoring Main Database
- 31,010 connections Total
Connections per user
Key values
- labanimal Main User
- 31,010 connections Total
-
Sessions
Simultaneous sessions
Key values
- 6 sessions Session Peak
- 2026-05-27 04:43:11 Date
Histogram of session times
Key values
- 28,469 0-500ms duration
Sessions per database
Key values
- zemm_monitoring Main Database
- 31,010 sessions Total
Sessions per user
Key values
- labanimal Main User
- 31,010 sessions Total
Sessions per host
Key values
- ::1 Main Host
- 31,010 sessions Total
Sessions per application
Key values
- Main Application
- 31,010 sessions Total
Application Count Total Duration Average Duration 25,915 1h25m59s 199ms _desktop__zemm_produktiv_8_localhost_5432 19 1s58ms 55ms _desktop_index.php_animal_id_2026_2F000_2F8074_species_1_breedi 1 29ms 29ms _desktop_index.php_cage_name_51-4_2A_breeding_date_2026-04-01_b 1 1s975ms 1s975ms _desktop_index.php_cages_name_A15.415-_2A_cages_empty__25_val4_ 1 60ms 60ms _desktop_index.php_cages_name_A15.415.1_2A_cages_empty__25_val4 2 144ms 72ms _desktop_index.php_command_animals_edit_subcommand_init_id_1029 5 444ms 88ms _desktop_index.php_command_animals_edit_subcommand_init_id_1030 3 284ms 94ms _desktop_index.php_command_animals_litters_create_subcommand_se 1 185ms 185ms _desktop_index.php_command_animals_subcommand_init_zemm_produkt 24 1s43ms 43ms _desktop_index.php_command_cages_subcommand_init_zemm_produktiv 5 209ms 41ms _desktop_index.php_command_home_subcommand_init_zemm_produktiv_ 1 100ms 100ms _desktop_index.php_command_login_subcommand_init_zemm_dev_local 5 156ms 31ms _desktop_index.php_command_login_subcommand_init_zemm_produktiv 1,698 48s964ms 28ms _desktop_index.php_command_reports_subcommand_animals_per_room_ 1 108ms 108ms _desktop_index.php_command_reports_subcommand_animals_per_user_ 15 1s623ms 108ms _desktop_index.php_command_reports_subcommand_task_status_zemm_ 3 338ms 112ms _desktop_index.php_command_tasks_subcommand_edit_id_10142694_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10142970_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10143141_ze 1 81ms 81ms _desktop_index.php_command_tasks_subcommand_edit_id_10143188_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_edit_id_10143199_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10143202_ze 1 84ms 84ms _desktop_index.php_command_tasks_subcommand_edit_id_10143210_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10143215_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10143217_ze 1 74ms 74ms _desktop_index.php_command_tasks_subcommand_edit_id_10143228_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_found_val1_10000001 1 46ms 46ms _desktop_index.php_command_tasks_subcommand_found_val1_10100008 1 44ms 44ms _desktop_index.php_command_tasks_subcommand_init_template_zemm_ 3 120ms 40ms _desktop_index.php_command_tasks_subcommand_init_zemm_produktiv 44 3s176ms 72ms _desktop_index.php_command_tasks_subcommand_open_legacy_1_id_10 82 4s786ms 58ms _desktop_index.php_command_tasks_subcommand_open_zemm_produktiv 1 495ms 495ms _desktop_index.php_command_tasks_subcommand_search_zemm_produkt 4 157ms 39ms _desktop_index.php_m_action_animals_3Am_delete_row_animals_1026 1 43ms 43ms _desktop_index.php_m_action_animals_3Am_delete_row_animals_1030 2 95ms 47ms _desktop_index.php_m_action_animals_edit_3Alink_init_row_animal 1 51ms 51ms _desktop_index.php_name_Genotypisierungsproben_20genommen_instr 1 66ms 66ms _desktop_index.php_name_Projektwechsel_20lebender_20Tiere_instr 1 58ms 58ms _desktop_index.php_name_TF_20zu_20AG_20Kastenm_C3_BCller_commen 1 90ms 90ms _desktop_index.php_name_Tiertransport_20durch_20das_20ZEMM_inst 2 134ms 67ms _desktop_index.php_name_Verpaarungen_20zur_20Zucht_instructions 1 53ms 53ms _desktop_index.php_search_status__25_deadline_from_2026-04-01_d 2 148ms 74ms _desktop_index.php_view_animal_name_on_view_animal_id_on_animal 2 538ms 269ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b 19 11s165ms 587ms _desktop_index.php_zemm_produktiv_8_localhost_5432 3,072 10m36s 207ms backend:zemm_produktiv_8@localhost 32 1s673ms 52ms bounces:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 58ms 58ms expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 1s41ms 1s41ms pg_dump 1 12s7ms 12s7ms taskscron:zemm_produktiv_8@h2940066.stratoserver.net:5432 24 7s766ms 323ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 19,624 buffers Checkpoint Peak
- 2026-05-27 01:37:59 Date
- 269.844 seconds Highest write time
- 0.030 seconds Sync time
Checkpoints Wal files
Key values
- 6 files Wal files usage Peak
- 2026-05-27 01:37:59 Date
Checkpoints distance
Key values
- 191.02 Mo Distance Peak
- 2026-05-27 01:37:59 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time May 27 00 8,427 843.66s 0.098s 843.809s 01 29,371 1,245.117s 0.116s 1,245.302s 02 8,920 892.539s 0.1s 892.695s 03 8,113 812.098s 0.093s 812.24s 04 12,515 1,157.234s 0.113s 1,157.407s 05 9,046 905.272s 0.101s 905.431s 06 10,550 1,055.304s 0.18s 1,055.534s 07 13,354 1,335.627s 0.243s 1,335.924s 08 9,543 954.701s 0.213s 954.973s 09 12,039 1,204.943s 0.219s 1,205.213s 10 9,960 996.504s 0.214s 996.767s 11 9,512 951.644s 0.169s 951.871s 12 11,411 1,051.524s 0.216s 1,051.788s 13 12,563 1,239.223s 0.214s 1,239.491s 14 12,760 1,277.119s 0.282s 1,277.459s 15 8,512 851.281s 0.167s 851.504s 16 8,489 849.953s 0.121s 850.124s 17 8,607 861.425s 0.116s 861.593s 18 9,293 929.452s 0.134s 929.646s 19 8,789 879.7s 0.095s 879.845s 20 10,218 1,022.691s 0.175s 1,022.921s 21 9,048 905.237s 0.179s 905.47s 22 8,330 833.757s 0.1s 833.913s 23 7,837 784.64s 0.091s 784.781s Day Hour Added Removed Recycled Synced files Longest sync Average sync May 27 00 0 0 2 489 0.005s 0.011s 01 0 0 8 600 0.003s 0.013s 02 0 0 2 529 0.001s 0.012s 03 0 0 1 499 0.002s 0.011s 04 0 0 3 589 0.002s 0.013s 05 0 0 2 527 0.003s 0.012s 06 0 0 2 1,050 0.002s 0.011s 07 0 0 3 1,447 0.002s 0.013s 08 0 0 2 1,211 0.003s 0.012s 09 0 0 2 1,285 0.002s 0.012s 10 0 0 3 1,270 0.002s 0.011s 11 0 0 2 934 0.003s 0.013s 12 0 0 2 1,262 0.002s 0.011s 13 0 0 3 1,243 0.002s 0.012s 14 0 0 3 1,640 0.003s 0.013s 15 0 0 2 921 0.003s 0.012s 16 0 0 2 581 0.017s 0.011s 17 0 0 1 616 0.004s 0.012s 18 0 0 2 718 0.003s 0.013s 19 0 0 2 496 0.002s 0.011s 20 0 0 2 957 0.003s 0.012s 21 0 0 2 1,025 0.002s 0.013s 22 0 0 2 532 0.002s 0.012s 23 0 0 1 489 0.001s 0.011s Day Hour Count Avg time (sec) May 27 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 May 27 00 2,492.00 kB 3,265.45 kB 01 9,966.92 kB 37,488.00 kB 02 2,497.42 kB 32,745.17 kB 03 2,530.00 kB 11,426.55 kB 04 3,260.46 kB 8,571.69 kB 05 2,514.75 kB 4,613.67 kB 06 3,238.91 kB 3,919.55 kB 07 3,634.08 kB 4,731.31 kB 08 2,740.25 kB 4,586.33 kB 09 3,534.33 kB 4,545.42 kB 10 3,296.36 kB 4,488.45 kB 11 2,521.08 kB 3,507.15 kB 12 3,607.09 kB 7,092.27 kB 13 4,184.75 kB 7,388.33 kB 14 3,589.77 kB 9,251.08 kB 15 2,475.75 kB 4,467.17 kB 16 2,671.55 kB 4,539.55 kB 17 2,389.25 kB 3,255.00 kB 18 2,432.31 kB 3,084.92 kB 19 2,621.00 kB 3,318.55 kB 20 2,675.58 kB 3,055.92 kB 21 2,364.46 kB 3,305.15 kB 22 2,334.75 kB 2,998.75 kB 23 2,373.00 kB 3,067.18 kB -
Temporary Files
Size of temporary files
Key values
- 118.81 MiB Temp Files size Peak
- 2026-05-27 09:20:22 Date
Number of temporary files
Key values
- 1 per second Temp Files Peak
- 2026-05-27 09:20:22 Date
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size May 27 00 0 0 0 01 0 0 0 02 0 0 0 03 0 0 0 04 0 0 0 05 0 0 0 06 0 0 0 07 0 0 0 08 0 0 0 09 2 237.62 MiB 118.81 MiB 10 0 0 0 11 0 0 0 12 0 0 0 13 0 0 0 14 0 0 0 15 0 0 0 16 0 0 0 17 0 0 0 18 0 0 0 19 0 0 0 20 0 0 0 21 0 0 0 22 0 0 0 23 0 0 0 Queries generating the most temporary files (N)
Rank Count Total size Min size Max size Avg size Query 1 2 237.62 MiB 118.81 MiB 118.81 MiB 118.81 MiB select distinct * from ( select animals_search_mview.*, b.unbreeding_date, fates.loc as fate_name, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, string_agg(l."application_id" || ? || l."title" || ? || date(lh."timestamp")::varchar, ?) as licensehistory, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview inner join fates on fates.id = animals_search_mview.fate left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join licenses l on l.id = lh.licid left join breedings b on b.id = animals_search_mview.last_mating group by animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data where data.alive = ? and data.deleted = ? and (is_owner or is_editor or is_tourist) and (data.straindeleted = ? or data.straindeleted is null) order by data.cage_name, data.animal_id, data.name;-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:22:23 Duration: 19s215ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:20:22 Duration: 19s154ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:20:22 Duration: 0ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432
Queries generating the largest temporary files
Rank Size Query 1 118.81 MiB SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;[ Date: 2026-05-27 09:20:22 - Database: zemm_produktiv_8 - User: labanimal - Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 ]
2 118.81 MiB SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;[ Date: 2026-05-27 09:22:23 - Database: zemm_produktiv_8 - User: labanimal - Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 ]
-
Vacuums
Vacuums / Analyzes Distribution
Key values
- 0.62 sec Highest CPU-cost vacuum
Table public.tasks
Database zemm_produktiv_8 - 2026-05-27 01:30:37 Date
- 0 sec Highest CPU-cost analyze
Table
Database zemm_produktiv_8 - Date
Average Autovacuum Duration
Key values
- 0.62 sec Highest CPU-cost vacuum
Table public.tasks
Database zemm_produktiv_8 - 2026-05-27 01:30:37 Date
Analyzes per table
Key values
- pg_catalog.pg_type (78) Main table analyzed (database zemm_produktiv_8)
- 245 analyzes Total
Table Number of analyzes zemm_produktiv_8.pg_catalog.pg_type 78 zemm_produktiv_8.pg_catalog.pg_attribute 56 zemm_produktiv_8.pg_catalog.pg_class 43 zemm_produktiv_8.pg_catalog.pg_depend 39 zemm_test.pg_catalog.pg_shdepend 4 zemm_produktiv_8.public.tmptasks 3 postgres.pg_catalog.pg_shdepend 3 zemm_produktiv_8.public.cages_search_mview 2 zemm_monitoring.observability.metrics_timeseries 2 fbi_ci_db.pg_catalog.pg_shdepend 2 zemm_produktiv_8.public.monitoring_session_activity 1 zemm_produktiv_8.public.login_tracker 1 zemm_produktiv_8.public.cost_history 1 fbi_unire.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.cages 1 zemm_produktiv_8.public.tasks 1 template0.pg_catalog.pg_shdepend 1 labanimal.pg_catalog.pg_shdepend 1 zemm_monitoring.observability.db_top_queries 1 zemm_monitoring.observability.phpfpm_counters 1 zemm_produktiv_8.public.users 1 fbi_unibi.pg_catalog.pg_shdepend 1 zemm_produktiv_8.pg_catalog.pg_shdepend 1 Total 245 Vacuums per table
Key values
- pg_catalog.pg_type (28) Main table vacuumed on database zemm_produktiv_8
- 102 vacuums Total
Index Buffer usage Skipped WAL usage Frozen Table Vacuums scans hits misses dirtied pins frozen records full page bytes pages tuples zemm_produktiv_8.pg_catalog.pg_type 28 28 0 0 0 0 0 1,354 259 297,586 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 23 23 0 0 0 0 0 2,229 624 527,271 0 0 zemm_produktiv_8.pg_catalog.pg_class 15 15 0 0 0 0 0 1,314 393 417,410 0 0 zemm_produktiv_8.pg_catalog.pg_depend 11 11 0 0 0 0 0 1,377 397 495,618 0 0 zemm_dev.pg_catalog.pg_shdepend 5 5 0 0 0 0 0 330 100 218,088 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 5 5 0 0 0 0 0 874 230 1,257,601 53 166 zemm_monitoring.pg_toast.pg_toast_181881 4 0 0 0 0 0 0 1,126 385 1,921,095 370 2,057 zemm_monitoring.pg_toast.pg_toast_67431 3 0 0 0 0 0 0 5,896 2,146 4,885,666 1,600 9,600 postgres.pg_catalog.pg_shdepend 2 2 0 0 0 0 0 136 47 96,282 0 0 zemm_produktiv_8.public.users 1 1 0 0 0 0 0 164 70 172,482 48 118 zemm_produktiv_8.public.tasks 1 1 0 0 0 0 0 48,284 32 3,507,562 3 5 zemm_produktiv_8.public.cages_search_mview 1 1 0 0 0 0 0 826 429 1,421,481 72 657 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 0 0 0 0 0 220 58 191,493 30 90 zemm_produktiv_8.public.tmptasks 1 1 0 0 0 0 0 88 32 20,329 0 0 zemm_monitoring.pg_toast.pg_toast_2619 1 1 0 0 0 0 0 96 25 144,903 7 27 Total 102 95 0 0 0 0 0 64,314 5,227 15,574,867 2,183 12,720 Vacuum throughput per table
Key values
- public.tasks (0.62) Max CPU elapsed for vacuum on database zemm_produktiv_8
- public.users (0.927 ms) Max I/O read time for vacuum on database zemm_produktiv_8
- unknown (0 ms) Max I/O write time for vacuum on database zemm_produktiv_8
I/O timing (ms) CPU (s) Table read write elapsed zemm_produktiv_8.pg_catalog.pg_type 0 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 0 0 0.2 zemm_produktiv_8.pg_catalog.pg_class 0 0 0.04 zemm_produktiv_8.pg_catalog.pg_depend 0 0 0.1 zemm_dev.pg_catalog.pg_shdepend 0 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 0 0 0.04 zemm_monitoring.pg_toast.pg_toast_181881 0 0 0.08 zemm_monitoring.pg_toast.pg_toast_67431 0 0 0.55 postgres.pg_catalog.pg_shdepend 0 0 0 zemm_produktiv_8.public.users 0.927 0 0.02 zemm_produktiv_8.public.tasks 0 0 0.62 zemm_produktiv_8.public.cages_search_mview 0 0 0.11 zemm_produktiv_8.pg_catalog.pg_statistic 0 0 0.01 zemm_produktiv_8.public.tmptasks 0 0 0.01 zemm_monitoring.pg_toast.pg_toast_2619 0 0 0 Total 0.927 0 1.78 Tuples removed per table
Key values
- public.tasks (54717) Main table with removed tuples on database zemm_produktiv_8
- 92033 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain zemm_produktiv_8.public.tasks 1 1 54,717 57,799 0 0 17,080 zemm_produktiv_8.pg_catalog.pg_attribute 23 23 15,502 131,765 0 0 4,232 zemm_produktiv_8.pg_catalog.pg_depend 11 11 9,025 46,167 0 0 605 zemm_produktiv_8.pg_catalog.pg_type 28 28 4,523 23,268 0 0 868 zemm_monitoring.pg_toast.pg_toast_67431 3 0 3,222 2,154,010 0 0 375,451 zemm_produktiv_8.pg_catalog.pg_class 15 15 2,217 13,545 0 0 630 zemm_dev.pg_catalog.pg_shdepend 5 5 949 23,525 0 0 190 zemm_produktiv_8.pg_toast.pg_toast_2619 5 5 500 1,465 0 0 530 postgres.pg_catalog.pg_shdepend 2 2 485 9,410 0 0 76 zemm_produktiv_8.public.cages_search_mview 1 1 274 13,885 0 0 234 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 271 1,269 0 0 143 zemm_produktiv_8.public.users 1 1 184 758 0 0 108 zemm_produktiv_8.public.tmptasks 1 1 100 799 0 8 115 zemm_monitoring.pg_toast.pg_toast_2619 1 1 64 86 0 0 38 zemm_monitoring.pg_toast.pg_toast_181881 4 0 0 41,613 0 0 7,724 Total 102 95 92,033 2,519,364 0 8 408,024 Pages removed per table
Key values
- public.tmptasks (8) Main table with removed pages on database zemm_produktiv_8
- 8 pages Total removed
Table Number of vacuums Index scans Tuples removed Pages removed zemm_produktiv_8.public.tmptasks 1 1 100 8 zemm_dev.pg_catalog.pg_shdepend 5 5 949 0 zemm_produktiv_8.public.users 1 1 184 0 zemm_produktiv_8.pg_catalog.pg_depend 11 11 9025 0 zemm_produktiv_8.public.tasks 1 1 54717 0 zemm_produktiv_8.public.cages_search_mview 1 1 274 0 zemm_produktiv_8.pg_catalog.pg_class 15 15 2217 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 271 0 zemm_produktiv_8.pg_catalog.pg_type 28 28 4523 0 zemm_monitoring.pg_toast.pg_toast_67431 3 0 3222 0 zemm_produktiv_8.pg_catalog.pg_attribute 23 23 15502 0 zemm_monitoring.pg_toast.pg_toast_181881 4 0 0 0 postgres.pg_catalog.pg_shdepend 2 2 485 0 zemm_produktiv_8.pg_toast.pg_toast_2619 5 5 500 0 zemm_monitoring.pg_toast.pg_toast_2619 1 1 64 0 Total 102 95 92,033 8 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs May 27 00 1 0 01 2 1 02 0 0 03 0 1 04 0 1 05 0 0 06 6 13 07 15 38 08 4 9 09 16 37 10 13 33 11 0 5 12 7 12 13 9 29 14 21 45 15 1 3 16 1 2 17 1 3 18 0 0 19 2 0 20 1 7 21 2 6 22 0 0 23 0 0 - 0.62 sec Highest CPU-cost vacuum
-
Locks
Locks by types
Key values
- unknown Main Lock Type
- 0 locks Total
Most frequent waiting queries (N)
Rank Count Total time Min time Max time Avg duration Query NO DATASET
Queries that waited the most
Rank Wait time Query NO DATASET
-
Queries
Queries by type
Key values
- 47 Total read queries
- 24,620 Total write queries
Queries by database
Key values
- zemm_monitoring Main database
- 24,602 Requests
- 1d6h39m18s (zemm_monitoring)
- Main time consuming database
Queries by user
Key values
- monitoring_admin Main user
- 369,205 Requests
User Request type Count Duration labanimal Total 1,405 33m3s copy to 8 22s808ms cte 206 4m58s select 1,176 27m25s update 15 16s356ms monitoring_admin Total 369,205 23d16h14m3s cte 1,191 3h17m25s ddl 367,162 23d12h44m23s select 847 12m10s postgres Total 78 1m48s copy to 78 1m48s Duration by user
Key values
- 23d16h14m3s (monitoring_admin) Main time consuming user
User Request type Count Duration labanimal Total 1,405 33m3s copy to 8 22s808ms cte 206 4m58s select 1,176 27m25s update 15 16s356ms monitoring_admin Total 369,205 23d16h14m3s cte 1,191 3h17m25s ddl 367,162 23d12h44m23s select 847 12m10s postgres Total 78 1m48s copy to 78 1m48s Queries by host
Key values
- unknown Main host
- 370,595 Requests
- 23d16h46m50s (unknown)
- Main time consuming host
Queries by application
Key values
- unknown Main application
- 24,602 Requests
- 1d6h39m18s (unknown)
- Main time consuming application
Application Request type Count Duration _desktop_index.php_cage_name_51-4_2A_breeding_date_2026-04-01_b Total 1 1s927ms cte 1 1s927ms _desktop_index.php_zemm_produktiv_8_localhost_5432 Total 58 2m7s cte 11 21s356ms select 47 1m45s expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 Total 1 1s15ms update 1 1s15ms pg_dump Total 5 6s477ms copy to 5 6s477ms unknown Total 24,602 1d6h39m18s cte 122 7m32s ddl 24,480 1d6h31m46s Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-05-27 07:54:03 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 116 1000-10000ms duration
Slowest individual queries
Rank Duration Query 1 19s215ms SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;[ Date: 2026-05-27 09:22:23 - Database: zemm_produktiv_8 - User: labanimal - Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Bind query: yes ]
2 19s215ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
3 19s215ms 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-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
4 19s215ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
5 19s215ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
6 19s215ms 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-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
7 19s215ms CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
8 19s215ms CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
9 19s215ms 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-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
10 19s215ms CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
11 19s215ms 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-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
12 19s215ms 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-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
13 19s215ms 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-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
14 19s215ms 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-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
15 19s215ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
16 19s215ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
17 19s215ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
18 19s215ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);[ Date: 2026-05-27 09:23:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
19 19s215ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-05-27 09:24:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
20 19s215ms 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-05-27 09:24:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
Time consuming queries (N)
Rank Total duration Times executed Min duration Max duration Avg duration Query 1 1h47m45s 1,440 507ms 19s215ms 4s489ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
2 1h47m45s 1,440 507ms 19s215ms 4s489ms create table if not exists observability.nginx_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
3 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
4 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 #4
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
5 1h47m45s 1,440 507ms 19s215ms 4s489ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
6 1h47m45s 1,440 507ms 19s215ms 4s489ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
7 1h47m45s 1,440 507ms 19s215ms 4s489ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
8 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 #8
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
9 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 #9
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
10 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 #10
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
11 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 #11
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
12 1h47m45s 1,440 507ms 19s215ms 4s489ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
13 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 #13
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
14 1h47m45s 1,440 507ms 19s215ms 4s489ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
15 1h47m45s 1,440 507ms 19s215ms 4s489ms create schema if not exists observability;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
16 1h47m45s 1,440 507ms 19s215ms 4s489ms 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 #16
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
17 1h47m45s 1,440 507ms 19s215ms 4s489ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
18 7m32s 122 1s444ms 12s357ms 3s708ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration May 27 01 6 1m13s 12s199ms 02 6 1m13s 12s249ms 03 5 1m1s 12s264ms 04 6 1m13s 12s220ms 05 2 24s431ms 12s215ms 13 4 6s155ms 1s538ms 14 4 6s153ms 1s538ms 15 2 3s156ms 1s578ms 17 9 13s545ms 1s505ms 18 11 16s700ms 1s518ms 19 11 16s698ms 1s518ms 20 10 15s348ms 1s534ms 21 11 16s608ms 1s509ms 22 12 18s28ms 1s502ms 23 11 16s402ms 1s491ms 00 12 17s891ms 1s490ms [ User: monitoring_admin - Total duration: 7m32s - Times executed: 122 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 20:18:58+02' AND collected_at <= '2026-05-26 20:18:58+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 20:18:58+02' AND '2026-05-27 02:18:58+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 20:18:58+02' AND '2026-05-27 02:18:58+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-05-27 02:19:10 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 19:48:02+02' AND collected_at <= '2026-05-26 19:48:02+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 19:48:02+02' AND '2026-05-27 01:48:02+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 19:48:02+02' AND '2026-05-27 01:48:02+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-05-27 01:48:14 Duration: 12s335ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 21:20:41+02' AND collected_at <= '2026-05-26 21:20:41+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 21:20:41+02' AND '2026-05-27 03:20:41+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 21:20:41+02' AND '2026-05-27 03:20:41+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-05-27 03:20:54 Duration: 12s325ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
19 38s370ms 2 19s154ms 19s215ms 19s185ms select distinct * from ( select animals_search_mview.*, b.unbreeding_date, fates.loc as fate_name, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, string_agg(l."application_id" || ? || l."title" || ? || date(lh."timestamp")::varchar, ?) as licensehistory, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview inner join fates on fates.id = animals_search_mview.fate left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join licenses l on l.id = lh.licid left join breedings b on b.id = animals_search_mview.last_mating group by animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data where data.alive = ? and data.deleted = ? and (is_owner or is_editor or is_tourist) and (data.straindeleted = ? or data.straindeleted is null) order by data.cage_name, data.animal_id, data.name;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration May 27 10 2 38s370ms 19s185ms [ User: labanimal - Total duration: 38s370ms - Times executed: 2 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 38s370ms - Times executed: 2 ]
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:22:23 Duration: 19s215ms 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-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:20:22 Duration: 19s154ms 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-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:20:22 Duration: 0ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432
20 34s677ms 2 17s75ms 17s602ms 17s338ms select count(distinct animal_id) AS "count" from ( select animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join animals a on a."animalID" = animals_search_mview.animal_id left join breedings b on b.id = animals_search_mview.last_mating) data where alive = ? and deleted = ? and (is_owner or is_editor or is_tourist);Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration May 27 10 2 34s677ms 17s338ms [ User: labanimal - Total duration: 34s677ms - Times executed: 2 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 34s677ms - Times executed: 2 ]
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE alive = 'f' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-05-27 09:20:03 Duration: 17s602ms 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-05-27_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE alive = 'f' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-05-27 09:22:04 Duration: 17s75ms 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-05-27_000000.csv
Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 1,440 1h47m45s 507ms 19s215ms 4s489ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
2 1,440 1h47m45s 507ms 19s215ms 4s489ms create table if not exists observability.nginx_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
3 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
4 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 #4
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
5 1,440 1h47m45s 507ms 19s215ms 4s489ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
6 1,440 1h47m45s 507ms 19s215ms 4s489ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
7 1,440 1h47m45s 507ms 19s215ms 4s489ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
8 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 #8
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
9 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 #9
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
10 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 #10
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
11 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 #11
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
12 1,440 1h47m45s 507ms 19s215ms 4s489ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
13 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 #13
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
14 1,440 1h47m45s 507ms 19s215ms 4s489ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
15 1,440 1h47m45s 507ms 19s215ms 4s489ms create schema if not exists observability;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
16 1,440 1h47m45s 507ms 19s215ms 4s489ms 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 #16
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
17 1,440 1h47m45s 507ms 19s215ms 4s489ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
18 122 7m32s 1s444ms 12s357ms 3s708ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration May 27 01 6 1m13s 12s199ms 02 6 1m13s 12s249ms 03 5 1m1s 12s264ms 04 6 1m13s 12s220ms 05 2 24s431ms 12s215ms 13 4 6s155ms 1s538ms 14 4 6s153ms 1s538ms 15 2 3s156ms 1s578ms 17 9 13s545ms 1s505ms 18 11 16s700ms 1s518ms 19 11 16s698ms 1s518ms 20 10 15s348ms 1s534ms 21 11 16s608ms 1s509ms 22 12 18s28ms 1s502ms 23 11 16s402ms 1s491ms 00 12 17s891ms 1s490ms [ User: monitoring_admin - Total duration: 7m32s - Times executed: 122 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 20:18:58+02' AND collected_at <= '2026-05-26 20:18:58+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 20:18:58+02' AND '2026-05-27 02:18:58+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 20:18:58+02' AND '2026-05-27 02:18:58+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-05-27 02:19:10 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 19:48:02+02' AND collected_at <= '2026-05-26 19:48:02+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 19:48:02+02' AND '2026-05-27 01:48:02+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 19:48:02+02' AND '2026-05-27 01:48:02+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-05-27 01:48:14 Duration: 12s335ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 21:20:41+02' AND collected_at <= '2026-05-26 21:20:41+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 21:20:41+02' AND '2026-05-27 03:20:41+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 21:20:41+02' AND '2026-05-27 03:20:41+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-05-27 03:20:54 Duration: 12s325ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
19 15 11s733ms 742ms 798ms 782ms select count(distinct animal_id) AS "count" from ( select animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join animals a on a."animalID" = animals_search_mview.animal_id left join breedings b on b.id = animals_search_mview.last_mating) data where fate = ? and alive = ? and deleted = ? and (is_owner or is_editor or is_tourist);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration May 27 10 8 6s334ms 791ms 11 2 1s582ms 791ms 12 1 791ms 791ms 15 3 2s276ms 758ms 18 1 747ms 747ms [ User: labanimal - Total duration: 11s733ms - Times executed: 15 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 11s733ms - Times executed: 15 ]
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100002) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100002) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100002) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-05-27 09:36:14 Duration: 798ms 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-05-27_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-05-27 09:17:44 Duration: 796ms 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-05-27_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100193) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100193) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100193) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-05-27 09:36:32 Duration: 794ms 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-05-27_000000.csv
20 15 10s735ms 677ms 788ms 715ms select distinct * from ( select animals_search_mview.*, b.unbreeding_date, fates.loc as fate_name, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, string_agg(l."application_id" || ? || l."title" || ? || date(lh."timestamp")::varchar, ?) as licensehistory, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview inner join fates on fates.id = animals_search_mview.fate left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join licenses l on l.id = lh.licid left join breedings b on b.id = animals_search_mview.last_mating group by animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data where data.fate = ? and data.alive = ? and data.deleted = ? and (is_owner or is_editor or is_tourist) and (data.straindeleted = ? or data.straindeleted is null) order by data.cage_name, data.animal_id, data.name;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration May 27 10 8 5s730ms 716ms 11 2 1s459ms 729ms 12 1 720ms 720ms 15 3 2s146ms 715ms 18 1 677ms 677ms [ User: labanimal - Total duration: 10s735ms - Times executed: 15 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 10s735ms - Times executed: 15 ]
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100205) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100205) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100205) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 14:04:50 Duration: 788ms 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-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 10:42:40 Duration: 736ms 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-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 332) AS is_owner, user_is_tgm (animals_search_mview.editor, 332) AS is_editor, user_is_tgm (animals_search_mview.tourist, 332) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.fate = 5 AND data.alive = 't' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 10:42:36 Duration: 723ms 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-05-27_000000.csv
Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 19s154ms 19s215ms 19s185ms 2 38s370ms select distinct * from ( select animals_search_mview.*, b.unbreeding_date, fates.loc as fate_name, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, string_agg(l."application_id" || ? || l."title" || ? || date(lh."timestamp")::varchar, ?) as licensehistory, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview inner join fates on fates.id = animals_search_mview.fate left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join licenses l on l.id = lh.licid left join breedings b on b.id = animals_search_mview.last_mating group by animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data where data.alive = ? and data.deleted = ? and (is_owner or is_editor or is_tourist) and (data.straindeleted = ? or data.straindeleted is null) order by data.cage_name, data.animal_id, data.name;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration May 27 10 2 38s370ms 19s185ms [ User: labanimal - Total duration: 38s370ms - Times executed: 2 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 38s370ms - Times executed: 2 ]
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:22:23 Duration: 19s215ms 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-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:20:22 Duration: 19s154ms 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-05-27_000000.csv
-
SELECT DISTINCT * FROM ( SELECT animals_search_mview.*, b.unbreeding_date, fates.loc AS fate_name, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, strains.deleted as straindeleted, STRING_AGG(l."application_id" || ':' || l."title" || ' - ' || Date(lh."timestamp")::varchar, '; ') AS licensehistory, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview INNER JOIN fates ON fates.id = animals_search_mview.fate LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN licenses l ON l.id = lh.licid left join breedings b ON b.id = animals_search_mview.last_mating GROUP BY animals_search_mview.id, b.unbreeding_date, fates.loc, strains.cancel_criteria, strains.symtoms, strains.reduce_severity_by, strains.sym_immune, straindeleted) data WHERE data.alive = 'f' AND data.deleted = 'f' AND (is_owner OR is_editor OR is_tourist) and (data.straindeleted = 'f' or data.straindeleted is null) ORDER BY data.cage_name, data.animal_id, data.name;
Date: 2026-05-27 09:20:22 Duration: 0ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432
2 17s75ms 17s602ms 17s338ms 2 34s677ms select count(distinct animal_id) AS "count" from ( select animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, ?) as is_owner, user_is_tgm (animals_search_mview.editor, ?) as is_editor, user_is_tgm (animals_search_mview.tourist, ?) as is_tourist, case when not exists ( select ? from scoresheet_diary sd where sd.animals_id = animals_search_mview.id) then ? else ? end as isscored from animals_search_mview left join strains on strains.name = animals_search_mview.strain left join license_history lh on lh.anid = animals_search_mview.id left join animals a on a."animalID" = animals_search_mview.animal_id left join breedings b on b.id = animals_search_mview.last_mating) data where alive = ? and deleted = ? and (is_owner or is_editor or is_tourist);Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration May 27 10 2 34s677ms 17s338ms [ User: labanimal - Total duration: 34s677ms - Times executed: 2 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 34s677ms - Times executed: 2 ]
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE alive = 'f' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-05-27 09:20:03 Duration: 17s602ms 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-05-27_000000.csv
-
SELECT COUNT(DISTINCT animal_id) AS "count" FROM ( SELECT animals_search_mview.*, b.unbreeding_date, a.id as animal, user_is_tgm (animals_search_mview.owner, 10100106) AS is_owner, user_is_tgm (animals_search_mview.editor, 10100106) AS is_editor, user_is_tgm (animals_search_mview.tourist, 10100106) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE alive = 'f' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-05-27 09:22:04 Duration: 17s75ms 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-05-27_000000.csv
3 507ms 19s215ms 4s489ms 1,440 1h47m45s create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
4 507ms 19s215ms 4s489ms 1,440 1h47m45s create table if not exists observability.nginx_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
5 507ms 19s215ms 4s489ms 1,440 1h47m45s create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
6 507ms 19s215ms 4s489ms 1,440 1h47m45s 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 #6
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
7 507ms 19s215ms 4s489ms 1,440 1h47m45s create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
8 507ms 19s215ms 4s489ms 1,440 1h47m45s alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
9 507ms 19s215ms 4s489ms 1,440 1h47m45s alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
10 507ms 19s215ms 4s489ms 1,440 1h47m45s 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 #10
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
11 507ms 19s215ms 4s489ms 1,440 1h47m45s 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 #11
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
12 507ms 19s215ms 4s489ms 1,440 1h47m45s 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 May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
13 507ms 19s215ms 4s489ms 1,440 1h47m45s create table if not exists observability.app_events ( id bigserial primary key, tenant_key text not null, event_type text not null, severity text not null, message text not null, payload jsonb, occurred_at timestamptz not null default now(), created_at timestamptz not null default now() );Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
14 507ms 19s215ms 4s489ms 1,440 1h47m45s create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
15 507ms 19s215ms 4s489ms 1,440 1h47m45s 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 #15
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
16 507ms 19s215ms 4s489ms 1,440 1h47m45s create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
17 507ms 19s215ms 4s489ms 1,440 1h47m45s create schema if not exists observability;Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
18 507ms 19s215ms 4s489ms 1,440 1h47m45s 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 #18
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
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-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
19 507ms 19s215ms 4s489ms 1,440 1h47m45s create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration May 27 01 60 10m58s 10s978ms 02 60 10m55s 10s930ms 03 60 12m16s 12s267ms 04 60 12m13s 12s223ms 05 60 12m14s 12s236ms 06 60 12m15s 12s250ms 07 60 7m33s 7s559ms 08 60 1m49s 1s825ms 09 60 1m23s 1s398ms 10 60 5m16s 5s280ms 11 60 1m30s 1s501ms 12 60 43s770ms 729ms 13 60 1m9s 1s153ms 14 60 1m29s 1s489ms 15 60 1m32s 1s537ms 16 60 2m13s 2s230ms 17 60 1m38s 1s643ms 18 60 1m30s 1s515ms 19 60 1m28s 1s472ms 20 60 1m32s 1s538ms 21 60 1m30s 1s504ms 22 60 1m30s 1s504ms 23 60 1m29s 1s491ms 00 60 1m29s 1s486ms [ User: monitoring_admin - Total duration: 1h47m45s - Times executed: 1434 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 09:36:01 Duration: 19s215ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 09:21:01 Duration: 19s154ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-05-27 02:29:01 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
20 1s444ms 12s357ms 3s708ms 122 7m32s with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration May 27 01 6 1m13s 12s199ms 02 6 1m13s 12s249ms 03 5 1m1s 12s264ms 04 6 1m13s 12s220ms 05 2 24s431ms 12s215ms 13 4 6s155ms 1s538ms 14 4 6s153ms 1s538ms 15 2 3s156ms 1s578ms 17 9 13s545ms 1s505ms 18 11 16s700ms 1s518ms 19 11 16s698ms 1s518ms 20 10 15s348ms 1s534ms 21 11 16s608ms 1s509ms 22 12 18s28ms 1s502ms 23 11 16s402ms 1s491ms 00 12 17s891ms 1s490ms [ User: monitoring_admin - Total duration: 7m32s - Times executed: 122 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 20:18:58+02' AND collected_at <= '2026-05-26 20:18:58+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 20:18:58+02' AND '2026-05-27 02:18:58+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 20:18:58+02' AND '2026-05-27 02:18:58+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-05-27 02:19:10 Duration: 12s357ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 19:48:02+02' AND collected_at <= '2026-05-26 19:48:02+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 19:48:02+02' AND '2026-05-27 01:48:02+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 19:48:02+02' AND '2026-05-27 01:48:02+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-05-27 01:48:14 Duration: 12s335ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-05-24 21:20:41+02' AND collected_at <= '2026-05-26 21:20:41+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 21:20:41+02' AND '2026-05-27 03:20:41+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-05-26 21:20:41+02' AND '2026-05-27 03:20:41+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-05-27 03:20:54 Duration: 12s325ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-05-27_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
- 149,633 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
- 2 ERROR entries
- 0 WARNING entries
- 0 EVENTLOG entries
Most Frequent Errors/Events
Key values
- 1 Max number of times the same event was reported
- 2 Total events found
Rank Times reported Error 1 1 ERROR: column "..." does not exist
Times Reported Most Frequent Error / Event #1
Day Hour Count May 27 13 1 - ERROR: column "license" does not exist
Statement: SELECT COUNT(*) as cnt FROM animals WHERE license = 10100042 AND NOT deleted
Date: 2026-05-27 12:29:08 Database: zemm_produktiv_8 Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-05-27_000000.csv
2 1 ERROR: invalid input syntax for type date: ...
Times Reported Most Frequent Error / Event #2
Day Hour Count May 27 11 1 - ERROR: invalid input syntax for type date: ""
Statement: SELECT p_update_animals(183, '10301159', '', NULL, 'm', false,'', '', false, '', '', NULL, 0, '', NULL, '', false,'','',NULL, '','',NULL,0);
Date: 2026-05-27 10:55:25 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-05-27_000000.csv