-
Global information
- Generated on Mon Jun 15 06:05:50 2026
- Log file: /var/log/postgresql/postgresql-2026-05-13_000000.csv, ..., /var/log/postgresql/postgresql-2026-06-15_000000.csv
- Parsed 308,232 log entries in 5m49s
- Log start from 2026-06-09 00:00:01 to 2026-06-09 23:59:49
-
Overview
Global Stats
- 56 Number of unique normalized queries
- 24,652 Number of queries
- 2d1h15m2s Total query duration
- 2026-06-09 00:00:01 First query
- 2026-06-09 23:59:49 Last query
- 18 queries/s at 2026-06-09 10:56:01 Query peak
- 2d1h15m2s Total query duration
- 0ms Prepare/parse total duration
- 0ms Bind total duration
- 2d1h15m2s Execute total duration
- 12 Number of events
- 9 Number of unique normalized events
- 3 Max number of times the same event was reported
- 0 Number of cancellation
- 57 Total number of automatic vacuums
- 138 Total number of automatic analyzes
- 0 Number temporary file
- 0 Max size of temporary file
- 0.00 B Average size of temporary file
- 29,084 Total number of sessions
- 8 sessions at 2026-06-09 21:10:02 Session peak
- 1h53m48s Total duration of sessions
- 234ms Average duration of sessions
- 0 Average queries per session
- 6s96ms Average queries duration per session
- 0ms Average idle time per session
- 29,085 Total number of connections
- 39 connections/s at 2026-06-09 08:23:48 Connection peak
- 3 Total number of databases
SQL Traffic
Key values
- 18 queries/s Query Peak
- 2026-06-09 10:56:01 Date
SELECT Traffic
Key values
- 2 queries/s Query Peak
- 2026-06-09 06:57:29 Date
INSERT/UPDATE/DELETE Traffic
Key values
- 18 queries/s Query Peak
- 2026-06-09 09:38:01 Date
Queries duration
Key values
- 2d1h15m2s Total query duration
Prepared queries ratio
Key values
- 0.00 Ratio of bind vs prepare
- 0.00 % Ratio between prepared and "usual" statements
General Activity
↑ Back to the top of the General Activity tableDay Hour Count Min duration Max duration Avg duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jun 09 00 1,020 0ms 0ms 0ms 0ms 0ms 0ms 01 1,021 0ms 1s46ms 506ms 17s789ms 17s789ms 17s789ms 02 1,020 1s46ms 1s46ms 1s46ms 17s789ms 17s789ms 17s789ms 03 1,020 1s46ms 1s46ms 1s46ms 17s789ms 17s789ms 17s789ms 04 1,020 1s46ms 1s46ms 1s46ms 17s789ms 17s789ms 17s789ms 05 1,020 1s46ms 1s46ms 1s46ms 17s789ms 17s789ms 17s789ms 06 1,030 0ms 1s362ms 630ms 17s789ms 17s789ms 17s842ms 07 1,025 639ms 1s940ms 1s55ms 21s344ms 21s344ms 21s344ms 08 1,031 772ms 12s190ms 5s490ms 3m27s 3m27s 3m37s 09 1,032 695ms 11s976ms 3s675ms 3m23s 3m23s 3m25s 10 1,029 639ms 12s11ms 2s208ms 3m24s 3m24s 3m36s 11 1,040 686ms 12s48ms 9s444ms 3m24s 3m35s 3m36s 12 1,034 685ms 12s43ms 9s148ms 3m24s 3m33s 3m36s 13 1,032 684ms 13s258ms 11s149ms 3m43s 3m45s 3m55s 14 1,030 510ms 13s258ms 11s33ms 3m45s 3m56s 3m56s 15 1,030 507ms 13s262ms 10s898ms 3m45s 3m55s 3m56s 16 1,030 504ms 13s240ms 11s451ms 3m45s 3m56s 3m57s 17 1,025 13s50ms 13s185ms 13s115ms 3m44s 3m56s 3m57s 18 1,027 508ms 13s321ms 13s135ms 3m54s 3m56s 3m59s 19 1,026 13s67ms 13s234ms 13s157ms 3m55s 3m56s 3m57s 20 1,026 13s128ms 13s238ms 13s178ms 3m56s 3m57s 3m58s 21 1,027 546ms 13s283ms 13s195ms 3m56s 3m58s 3m58s 22 1,026 13s131ms 13s367ms 13s239ms 3m56s 3m58s 4m 23 1,031 558ms 13s285ms 12s412ms 3m51s 3m58s 3m59s Day Hour SELECT COPY TO Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jun 09 00 0 0 0ms 0ms 0ms 0ms 01 0 0 0ms 0ms 0ms 0ms 02 0 0 0ms 0ms 0ms 0ms 03 0 0 0ms 0ms 0ms 0ms 04 0 0 0ms 0ms 0ms 0ms 05 0 0 0ms 0ms 0ms 0ms 06 8 0 872ms 0ms 0ms 1s868ms 07 4 0 847ms 0ms 0ms 1s287ms 08 7 0 983ms 0ms 0ms 1s860ms 09 4 0 740ms 0ms 0ms 1s451ms 10 6 0 728ms 0ms 0ms 1s464ms 11 14 0 733ms 0ms 0ms 2s922ms 12 0 0 0ms 0ms 0ms 0ms 13 1 0 708ms 0ms 0ms 0ms 14 1 0 510ms 0ms 0ms 0ms 15 2 0 1s47ms 0ms 0ms 507ms 16 2 0 526ms 0ms 0ms 504ms 17 0 0 0ms 0ms 0ms 0ms 18 1 0 508ms 0ms 0ms 0ms 19 0 0 0ms 0ms 0ms 0ms 20 0 0 0ms 0ms 0ms 0ms 21 1 0 546ms 0ms 0ms 0ms 22 0 0 0ms 0ms 0ms 0ms 23 0 5 1s314ms 0ms 0ms 0ms Day Hour INSERT UPDATE DELETE COPY FROM Average Duration Latency Percentile(90) Latency Percentile(95) Latency Percentile(99) Jun 09 00 0 0 0 0 0ms 0ms 0ms 0ms 01 0 1 0 0 1s46ms 0ms 0ms 0ms 02 0 0 0 0 0ms 0ms 0ms 0ms 03 0 0 0 0 0ms 0ms 0ms 0ms 04 0 0 0 0 0ms 0ms 0ms 0ms 05 0 0 0 0 0ms 0ms 0ms 0ms 06 0 0 0 0 0ms 0ms 0ms 0ms 07 0 0 0 0 0ms 0ms 0ms 0ms 08 0 0 0 0 0ms 0ms 0ms 0ms 09 0 0 0 0 0ms 0ms 0ms 0ms 10 0 0 0 0 0ms 0ms 0ms 0ms 11 0 0 0 0 0ms 0ms 0ms 0ms 12 0 0 0 0 0ms 0ms 0ms 0ms 13 0 0 0 0 0ms 0ms 0ms 0ms 14 0 0 0 0 0ms 0ms 0ms 0ms 15 0 0 0 0 0ms 0ms 0ms 0ms 16 0 0 0 0 0ms 0ms 0ms 0ms 17 0 0 0 0 0ms 0ms 0ms 0ms 18 0 0 0 0 0ms 0ms 0ms 0ms 19 0 0 0 0 0ms 0ms 0ms 0ms 20 0 0 0 0 0ms 0ms 0ms 0ms 21 0 0 0 0 0ms 0ms 0ms 0ms 22 0 0 0 0 0ms 0ms 0ms 0ms 23 0 0 0 0 0ms 0ms 0ms 0ms Day Hour Prepare Bind Bind/Prepare Percentage of prepare Jun 09 00 0 0 0.00 0.00% 01 0 0 0.00 0.00% 02 0 0 0.00 0.00% 03 0 0 0.00 0.00% 04 0 0 0.00 0.00% 05 0 0 0.00 0.00% 06 0 0 0.00 0.00% 07 0 0 0.00 0.00% 08 0 4 4.00 0.00% 09 0 1 1.00 0.00% 10 0 2 2.00 0.00% 11 0 6 6.00 0.00% 12 0 6 6.00 0.00% 13 0 7 7.00 0.00% 14 0 7 7.00 0.00% 15 0 7 7.00 0.00% 16 0 8 8.00 0.00% 17 0 5 5.00 0.00% 18 0 7 7.00 0.00% 19 0 6 6.00 0.00% 20 0 6 6.00 0.00% 21 0 7 7.00 0.00% 22 0 6 6.00 0.00% 23 0 6 6.00 0.00% Day Hour Count Average / Second Jun 09 00 543 0.15/s 01 546 0.15/s 02 546 0.15/s 03 543 0.15/s 04 543 0.15/s 05 572 0.16/s 06 1,383 0.38/s 07 1,343 0.37/s 08 1,925 0.53/s 09 2,303 0.64/s 10 1,393 0.39/s 11 1,674 0.47/s 12 2,022 0.56/s 13 2,058 0.57/s 14 2,064 0.57/s 15 1,454 0.40/s 16 1,319 0.37/s 17 935 0.26/s 18 907 0.25/s 19 938 0.26/s 20 1,141 0.32/s 21 1,111 0.31/s 22 900 0.25/s 23 922 0.26/s Day Hour Count Average Duration Average idle time Jun 09 00 543 250ms 250ms 01 546 251ms 0ms 02 546 250ms 0ms 03 543 252ms 0ms 04 543 250ms 0ms 05 572 239ms 0ms 06 1,383 158ms 0ms 07 1,343 177ms 0ms 08 1,925 194ms 0ms 09 2,303 182ms 0ms 10 1,392 189ms 0ms 11 1,674 207ms 0ms 12 2,022 199ms 0ms 13 2,058 196ms 0ms 14 2,064 203ms 0ms 15 1,454 260ms 0ms 16 1,319 261ms 0ms 17 935 312ms 0ms 18 907 346ms 0ms 19 938 334ms 0ms 20 1,141 297ms 0ms 21 1,111 289ms 0ms 22 900 333ms 0ms 23 922 340ms 0ms -
Connections
Established Connections
Key values
- 39 connections Connection Peak
- 2026-06-09 08:23:48 Date
Connections per database
Key values
- zemm_monitoring Main Database
- 29,085 connections Total
Connections per user
Key values
- labanimal Main User
- 29,085 connections Total
-
Sessions
Simultaneous sessions
Key values
- 8 sessions Session Peak
- 2026-06-09 21:10:02 Date
Histogram of session times
Key values
- 26,315 0-500ms duration
Sessions per database
Key values
- zemm_monitoring Main Database
- 29,084 sessions Total
Sessions per user
Key values
- labanimal Main User
- 29,084 sessions Total
Sessions per host
Key values
- ::1 Main Host
- 29,084 sessions Total
Sessions per application
Key values
- Main Application
- 29,084 sessions Total
Application Count Total Duration Average Duration 23,997 1h42m42s 256ms _backend_wean_api.php_litter_id_10132952_zemm_produktiv_8_local 1 125ms 125ms _desktop__zemm_produktiv_8_localhost_5432 15 797ms 53ms _desktop_index.php_animal_name_11_animal_id_2026_2F001_2F3969_s 1 48ms 48ms _desktop_index.php_command_animals_breedings_subcommand_add_bre 2 89ms 44ms _desktop_index.php_command_animals_edit_subcommand_init_id_1026 5 457ms 91ms _desktop_index.php_command_animals_edit_subcommand_init_id_1027 4 388ms 97ms _desktop_index.php_command_animals_edit_subcommand_init_id_1028 3 293ms 97ms _desktop_index.php_command_animals_edit_subcommand_init_id_1029 3 282ms 94ms _desktop_index.php_command_animals_edit_subcommand_init_id_1030 4 381ms 95ms _desktop_index.php_command_animals_litters_create_subcommand_se 2 362ms 181ms _desktop_index.php_command_animals_litters_edit_subcommand_init 1 92ms 92ms _desktop_index.php_command_animals_subcommand_init_zemm_produkt 7 312ms 44ms _desktop_index.php_command_facility_subcommand_init_zemm_produk 1 51ms 51ms _desktop_index.php_command_home_subcommand_init_zemm_produktiv_ 2 181ms 90ms _desktop_index.php_command_login_subcommand_init_zemm_dev_local 1 27ms 27ms _desktop_index.php_command_login_subcommand_init_zemm_produktiv 1,696 49s766ms 29ms _desktop_index.php_command_login_subcommand_init_zemm_test_loca 2 70ms 35ms _desktop_index.php_command_reports_subcommand_animals_per_room_ 3 352ms 117ms _desktop_index.php_command_reports_subcommand_animals_per_user_ 6 648ms 108ms _desktop_index.php_command_reports_subcommand_fates_zemm_produk 1 108ms 108ms _desktop_index.php_command_reports_subcommand_init_zemm_produkt 3 375ms 125ms _desktop_index.php_command_reports_subcommand_task_status_zemm_ 2 228ms 114ms _desktop_index.php_command_tasks_subcommand_edit_id_10142915_ze 1 85ms 85ms _desktop_index.php_command_tasks_subcommand_edit_id_10143168_ze 1 69ms 69ms _desktop_index.php_command_tasks_subcommand_edit_id_10143288_ze 1 82ms 82ms _desktop_index.php_command_tasks_subcommand_edit_id_10143382_ze 1 87ms 87ms _desktop_index.php_command_tasks_subcommand_edit_id_10143424_ze 1 84ms 84ms _desktop_index.php_command_tasks_subcommand_edit_id_10143464_ze 1 83ms 83ms _desktop_index.php_command_tasks_subcommand_edit_id_10143481_ze 1 81ms 81ms _desktop_index.php_command_tasks_subcommand_edit_id_10143500_ze 1 78ms 78ms _desktop_index.php_command_tasks_subcommand_init_template_zemm_ 1 39ms 39ms _desktop_index.php_command_tasks_subcommand_init_zemm_produktiv 80 6s213ms 77ms _desktop_index.php_command_tasks_subcommand_open_legacy_1_id_10 20 1s647ms 82ms _desktop_index.php_m_action_animals_edit_3Alink_init_row_animal 1 39ms 39ms _desktop_index.php_m_action_animals_litters_edit_3Am_init_val4_ 1 42ms 42ms _desktop_index.php_name_Abt_C3_B6ten_20alter_20Zuchtpaare_instr 1 46ms 46ms _desktop_index.php_name_Genotypisierungsproben_20genommen_instr 4 310ms 77ms _desktop_index.php_name_VP_20von_20..._20bis_20..._20Ntsr1_2FGC 2 123ms 61ms _desktop_index.php_name_Verpaarungen_20zur_20Zucht_instructions 6 358ms 59ms _desktop_index.php_search_id_10142826_search_status__25_no_subt 1 93ms 93ms _desktop_index.php_unweaned_only_true_val4_animals_litters_sear 1 116ms 116ms _desktop_index.php_view_animal_name_on_view_animal_id_on_animal 2 654ms 327ms _desktop_index.php_view_animal_name_on_view_animal_id_on_view_b 33 9s727ms 294ms _desktop_index.php_zemm_produktiv_8_localhost_5432 3,005 9m14s 184ms backend:zemm_produktiv_8@localhost 46 4s533ms 98ms bounces:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 65ms 65ms expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 1 1s62ms 1s62ms pg_dump 1 10s755ms 10s755ms psql 83 9s372ms 112ms taskscron:zemm_produktiv_8@h2940066.stratoserver.net:5432 24 9s909ms 412ms -
Checkpoints / Restartpoints
Checkpoints Buffers
Key values
- 19,619 buffers Checkpoint Peak
- 2026-06-09 01:39:09 Date
- 269.949 seconds Highest write time
- 0.035 seconds Sync time
Checkpoints Wal files
Key values
- 6 files Wal files usage Peak
- 2026-06-09 01:39:09 Date
Checkpoints distance
Key values
- 197.98 Mo Distance Peak
- 2026-06-09 01:39:09 Date
Checkpoints Activity
↑ Back to the top of the Checkpoint Activity tableDay Hour Written buffers Write time Sync time Total time Jun 09 00 8,042 804.995s 0.099s 805.15s 01 27,255 1,034.235s 0.097s 1,034.384s 02 8,233 824.034s 0.097s 824.199s 03 7,652 766.045s 0.096s 766.197s 04 8,514 851.681s 0.096s 851.834s 05 8,300 830.355s 0.097s 830.506s 06 10,349 979.257s 0.227s 979.556s 07 11,155 1,116.761s 0.241s 1,117.062s 08 15,754 1,100.439s 0.186s 1,100.689s 09 10,810 1,081.679s 0.212s 1,081.945s 10 11,223 1,123.198s 0.178s 1,123.442s 11 9,996 1,000.394s 0.198s 1,000.645s 12 10,435 1,043.794s 0.204s 1,044.052s 13 11,438 1,144.948s 0.215s 1,145.215s 14 11,314 1,132.164s 0.194s 1,132.414s 15 9,594 959.932s 0.165s 960.152s 16 8,829 882.877s 0.142s 883.073s 17 9,721 972.908s 0.109s 973.069s 18 9,012 901.268s 0.098s 901.419s 19 8,603 860.98s 0.104s 861.149s 20 8,664 867.025s 0.128s 867.209s 21 10,532 1,053.694s 0.161s 1,053.91s 22 9,177 918.097s 0.097s 918.253s 23 9,376 937.753s 0.105s 937.913s Day Hour Added Removed Recycled Synced files Longest sync Average sync Jun 09 00 0 0 2 539 0.001s 0.012s 01 0 0 7 506 0.002s 0.011s 02 0 0 2 518 0.001s 0.012s 03 0 0 2 506 0.001s 0.012s 04 0 0 2 519 0.001s 0.012s 05 0 0 1 515 0.001s 0.012s 06 0 0 3 1,274 0.003s 0.013s 07 0 0 2 1,350 0.003s 0.012s 08 0 0 3 1,085 0.002s 0.012s 09 0 0 2 1,219 0.002s 0.012s 10 0 0 3 1,022 0.002s 0.012s 11 0 0 2 1,121 0.002s 0.012s 12 0 0 2 1,190 0.002s 0.012s 13 0 0 2 1,265 0.002s 0.012s 14 0 0 3 1,100 0.002s 0.012s 15 0 0 2 900 0.003s 0.012s 16 0 0 2 787 0.002s 0.012s 17 0 0 2 548 0.003s 0.012s 18 0 0 1 508 0.002s 0.012s 19 0 0 2 564 0.002s 0.012s 20 0 0 2 720 0.001s 0.011s 21 0 0 2 899 0.001s 0.013s 22 0 0 2 516 0.002s 0.012s 23 0 0 2 549 0.002s 0.012s Day Hour Count Avg time (sec) Jun 09 00 0 0s 01 0 0s 02 0 0s 03 0 0s 04 0 0s 05 0 0s 06 0 0s 07 0 0s 08 0 0s 09 0 0s 10 0 0s 11 0 0s 12 0 0s 13 0 0s 14 0 0s 15 0 0s 16 0 0s 17 0 0s 18 0 0s 19 0 0s 20 0 0s 21 0 0s 22 0 0s 23 0 0s Day Hour Mean distance Mean estimate Jun 09 00 2,316.33 kB 2,871.33 kB 01 11,617.27 kB 33,719.27 kB 02 2,397.42 kB 41,240.33 kB 03 2,254.92 kB 13,309.50 kB 04 2,419.58 kB 5,474.08 kB 05 2,365.67 kB 3,269.75 kB 06 2,858.17 kB 3,154.42 kB 07 3,216.42 kB 4,640.08 kB 08 4,390.50 kB 11,879.25 kB 09 3,178.25 kB 8,828.58 kB 10 3,124.50 kB 4,850.75 kB 11 2,876.08 kB 4,191.75 kB 12 2,989.25 kB 3,721.42 kB 13 3,252.58 kB 4,298.08 kB 14 3,207.08 kB 4,613.00 kB 15 2,740.17 kB 3,539.50 kB 16 2,555.00 kB 2,952.17 kB 17 2,695.17 kB 3,419.00 kB 18 2,532.75 kB 3,219.17 kB 19 2,466.25 kB 2,930.50 kB 20 2,667.00 kB 2,934.27 kB 21 2,766.23 kB 3,594.69 kB 22 2,567.75 kB 3,175.42 kB 23 2,642.83 kB 3,230.00 kB -
Temporary Files
Size of temporary files
Key values
- 0 Temp Files size Peak
- Date
Size of temporary files (5 minutes period)
NO DATASET
Number of temporary files
Key values
- 0 per second Temp Files Peak
- Date
Number of temporary files (5 minutes period)
NO DATASET
Temporary Files Activity
↑ Back to the top of the Temporary Files Activity tableDay Hour Count Total size Average size Jun 09 00 0 0 0 01 0 0 0 02 0 0 0 03 0 0 0 04 0 0 0 05 0 0 0 06 0 0 0 07 0 0 0 08 0 0 0 09 0 0 0 10 0 0 0 11 0 0 0 12 0 0 0 13 0 0 0 14 0 0 0 15 0 0 0 16 0 0 0 17 0 0 0 18 0 0 0 19 0 0 0 20 0 0 0 21 0 0 0 22 0 0 0 23 0 0 0 -
Vacuums
Vacuums / Analyzes Distribution
Key values
- 1.09 sec Highest CPU-cost vacuum
Table pg_toast.pg_toast_67431
Database zemm_monitoring - 2026-06-09 07:09:23 Date
- 0 sec Highest CPU-cost analyze
Table
Database zemm_monitoring - Date
Average Autovacuum Duration
Key values
- 1.09 sec Highest CPU-cost vacuum
Table pg_toast.pg_toast_67431
Database zemm_monitoring - 2026-06-09 07:09:23 Date
Analyzes per table
Key values
- pg_catalog.pg_type (45) Main table analyzed (database zemm_produktiv_8)
- 138 analyzes Total
Table Number of analyzes zemm_produktiv_8.pg_catalog.pg_type 45 zemm_produktiv_8.pg_catalog.pg_attribute 33 zemm_produktiv_8.pg_catalog.pg_class 23 zemm_produktiv_8.pg_catalog.pg_depend 20 zemm_produktiv_8.public.users 2 template0.pg_catalog.pg_shdepend 2 zemm_produktiv_8.public.tmptasks 2 zemm_monitoring.observability.metrics_timeseries 2 zemm_monitoring.observability.phpfpm_counters 1 zemm_produktiv_8.public.tasks 1 zemm_dev.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.cages_search_mview 1 zemm_test.pg_catalog.pg_shdepend 1 zemm_produktiv_8.pg_catalog.pg_shdepend 1 fbi_ci_db.pg_catalog.pg_shdepend 1 zemm_produktiv_8.public.login_tracker 1 zemm_produktiv_8.public.monitoring_session_activity 1 Total 138 Vacuums per table
Key values
- pg_catalog.pg_type (16) Main table vacuumed on database zemm_produktiv_8
- 57 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 16 16 0 0 0 0 0 789 166 180,062 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 12 12 0 0 0 0 0 1,503 469 328,491 0 0 zemm_produktiv_8.pg_catalog.pg_class 8 8 0 0 0 0 0 682 222 263,308 0 0 zemm_produktiv_8.pg_catalog.pg_depend 6 6 0 0 0 0 0 792 235 304,111 0 0 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 0 0 0 0 0 727 187 1,081,995 52 167 zemm_monitoring.pg_toast.pg_toast_67431 3 1 0 0 0 0 0 11,840 4,642 6,285,545 1,252 7,512 labanimal.pg_catalog.pg_shdepend 3 3 0 0 0 0 0 218 71 150,912 0 0 zemm_produktiv_8.public.cages_search_mview 1 1 0 0 0 0 0 761 434 1,393,370 44 226 zemm_produktiv_8.public.tasks 1 1 0 0 0 0 0 49,096 38 3,613,730 1 2 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 0 0 0 0 0 282 114 394,583 77 268 zemm_monitoring.pg_toast.pg_toast_181881 1 0 0 0 0 0 0 313 107 544,533 103 568 zemm_produktiv_8.public.tmptasks 1 1 0 0 0 0 0 77 28 24,130 0 0 Total 57 54 0 0 0 0 0 67,080 6,713 14,564,770 1,529 8,743 Vacuum throughput per table
Key values
- pg_toast.pg_toast_67431 (1.39) Max CPU elapsed for vacuum on database zemm_monitoring
- pg_toast.pg_toast_67431 (1.825 ms) Max I/O read time for vacuum on database zemm_monitoring
- pg_toast.pg_toast_67431 (13.923 ms) Max I/O write time for vacuum on database zemm_monitoring
I/O timing (ms) CPU (s) Table read write elapsed zemm_produktiv_8.pg_catalog.pg_type 0.369 0 0 zemm_produktiv_8.pg_catalog.pg_attribute 0.679 0.02 0.12 zemm_produktiv_8.pg_catalog.pg_class 0.399 0 0.02 zemm_produktiv_8.pg_catalog.pg_depend 0.325 0 0.06 zemm_produktiv_8.pg_toast.pg_toast_2619 0.383 0 0.03 zemm_monitoring.pg_toast.pg_toast_67431 1.825 13.923 1.39 labanimal.pg_catalog.pg_shdepend 0.281 0 0 zemm_produktiv_8.public.cages_search_mview 0.637 0 0.12 zemm_produktiv_8.public.tasks 0 0 0.63 zemm_produktiv_8.pg_catalog.pg_statistic 0.163 0 0.03 zemm_monitoring.pg_toast.pg_toast_181881 1.394 0 0.02 zemm_produktiv_8.public.tmptasks 0.13 0 0 Total 6.585 13.943 2.42 Tuples removed per table
Key values
- public.tasks (55021) Main table with removed tuples on database zemm_produktiv_8
- 84213 tuples Total removed
Index Tuples Pages Table Vacuums scans removed remain not yet removable removed remain zemm_produktiv_8.public.tasks 1 1 55,021 58,051 0 0 17,153 zemm_produktiv_8.pg_catalog.pg_attribute 12 12 10,952 65,088 0 0 2,208 zemm_monitoring.pg_toast.pg_toast_67431 3 1 7,578 1,806,513 0 0 397,083 zemm_produktiv_8.pg_catalog.pg_depend 6 6 4,786 25,182 0 0 330 zemm_produktiv_8.pg_catalog.pg_type 16 16 2,980 13,296 0 0 496 zemm_produktiv_8.pg_catalog.pg_class 8 8 1,072 7,224 0 0 336 labanimal.pg_catalog.pg_shdepend 3 3 855 14,115 0 0 117 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 388 1,172 0 0 424 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 283 1,269 0 0 143 zemm_produktiv_8.public.cages_search_mview 1 1 216 13,885 0 0 234 zemm_produktiv_8.public.tmptasks 1 1 82 856 0 0 120 zemm_monitoring.pg_toast.pg_toast_181881 1 0 0 33,037 0 0 5,958 Total 57 54 84,213 2,039,688 0 0 424,602 Pages removed per table
Key values
- unknown (0) Main table with removed pages on database unknown
- 0 pages Total removed
Pages removed per tables
NO DATASET
Table Number of vacuums Index scans Tuples removed Pages removed zemm_produktiv_8.pg_catalog.pg_class 8 8 1072 0 zemm_produktiv_8.public.cages_search_mview 1 1 216 0 zemm_produktiv_8.pg_catalog.pg_depend 6 6 4786 0 zemm_produktiv_8.public.tasks 1 1 55021 0 zemm_monitoring.pg_toast.pg_toast_67431 3 1 7578 0 zemm_produktiv_8.pg_catalog.pg_attribute 12 12 10952 0 zemm_produktiv_8.pg_catalog.pg_statistic 1 1 283 0 zemm_produktiv_8.pg_catalog.pg_type 16 16 2980 0 zemm_monitoring.pg_toast.pg_toast_181881 1 0 0 0 labanimal.pg_catalog.pg_shdepend 3 3 855 0 zemm_produktiv_8.public.tmptasks 1 1 82 0 zemm_produktiv_8.pg_toast.pg_toast_2619 4 4 388 0 Total 57 54 84,213 0 Autovacuum Activity
↑ Back to the top of the Autovacuum Activity tableDay Hour VACUUMs ANALYZEs Jun 09 00 0 0 01 1 1 02 0 0 03 0 0 04 0 1 05 0 0 06 6 14 07 3 8 08 1 7 09 11 22 10 2 5 11 5 14 12 6 14 13 6 18 14 8 9 15 2 10 16 0 1 17 1 1 18 0 0 19 0 1 20 2 4 21 3 8 22 0 0 23 0 0 - 1.09 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
- 51 Total read queries
- 24,601 Total write queries
Queries by database
Key values
- zemm_monitoring Main database
- 24,571 Requests
- 2d1h13m48s (zemm_monitoring)
- Main time consuming database
Queries by user
Key values
- monitoring_admin Main user
- 688,223 Requests
User Request type Count Duration labanimal Total 2,245 49m46s copy to 8 22s808ms cte 373 8m8s select 1,836 40m44s update 28 30s559ms monitoring_admin Total 688,223 38d14h59m27s cte 2,004 4h47m7s ddl 685,351 38d9h59m52s delete 1 603ms select 859 12m20s postgres Total 149 3m20s copy to 149 3m20s Duration by user
Key values
- 38d14h59m27s (monitoring_admin) Main time consuming user
User Request type Count Duration labanimal Total 2,245 49m46s copy to 8 22s808ms cte 373 8m8s select 1,836 40m44s update 28 30s559ms monitoring_admin Total 688,223 38d14h59m27s cte 2,004 4h47m7s ddl 685,351 38d9h59m52s delete 1 603ms select 859 12m20s postgres Total 149 3m20s copy to 149 3m20s Queries by host
Key values
- unknown Main host
- 690,440 Requests
- 38d15h48m43s (unknown)
- Main time consuming host
Queries by application
Key values
- unknown Main application
- 24,571 Requests
- 2d1h13m48s (unknown)
- Main time consuming application
Application Request type Count Duration _desktop_index.php_zemm_produktiv_8_localhost_5432 Total 70 1m1s cte 27 25s963ms select 43 35s526ms expire_tasks:zemm_produktiv_8@h2940066.stratoserver.net:5432 Total 1 1s46ms update 1 1s46ms pg_dump Total 5 6s571ms copy to 5 6s571ms psql Total 5 4s695ms cte 3 3s74ms select 2 1s620ms unknown Total 24,571 2d1h13m48s cte 85 18m11s ddl 24,480 2d55m33s select 6 3s125ms Number of cancelled queries
Key values
- 0 per second Cancelled query Peak
- 2026-06-09 21:15:03 Date
Number of cancelled queries (5 minutes period)
NO DATASET
-
Top Queries
Histogram of query times
Key values
- 85 > 10000ms duration
Slowest individual queries
Rank Duration Query 1 13s367ms WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 10:37:24+02' AND collected_at <= '2026-06-09 10:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';[ Date: 2026-06-09 22:37:37 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
2 13s367ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
3 13s367ms CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
4 13s367ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
5 13s367ms CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
6 13s367ms CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
7 13s367ms CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
8 13s367ms CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
9 13s367ms CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
10 13s367ms CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
11 13s367ms CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
12 13s367ms CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
13 13s367ms CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
14 13s367ms CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
15 13s367ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
16 13s367ms ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
17 13s367ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
18 13s367ms CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);[ Date: 2026-06-09 22:38:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
19 13s367ms CREATE SCHEMA IF NOT EXISTS observability;[ Date: 2026-06-09 22:39:01 - Database: zemm_monitoring - User: monitoring_admin - Bind query: yes ]
20 13s367ms CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );[ Date: 2026-06-09 22:39: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 2h52m40s 1,440 504ms 13s367ms 7s194ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
2 2h52m40s 1,440 504ms 13s367ms 7s194ms 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 #2
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
3 2h52m40s 1,440 504ms 13s367ms 7s194ms create schema if not exists observability;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
4 2h52m40s 1,440 504ms 13s367ms 7s194ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
5 2h52m40s 1,440 504ms 13s367ms 7s194ms 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 #5
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
6 2h52m40s 1,440 504ms 13s367ms 7s194ms create table if not exists observability.app_events ( id bigserial primary key, tenant_key text not null, event_type text not null, severity text not null, message text not null, payload jsonb, occurred_at timestamptz not null default now(), created_at timestamptz not null default now() );Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
7 2h52m40s 1,440 504ms 13s367ms 7s194ms create table if not exists observability.system_metrics ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
8 2h52m40s 1,440 504ms 13s367ms 7s194ms 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 Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
9 2h52m40s 1,440 504ms 13s367ms 7s194ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
10 2h52m40s 1,440 504ms 13s367ms 7s194ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
11 2h52m40s 1,440 504ms 13s367ms 7s194ms create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
12 2h52m40s 1,440 504ms 13s367ms 7s194ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
13 2h52m40s 1,440 504ms 13s367ms 7s194ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
14 2h52m40s 1,440 504ms 13s367ms 7s194ms create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
15 2h52m40s 1,440 504ms 13s367ms 7s194ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
16 2h52m40s 1,440 504ms 13s367ms 7s194ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
17 2h52m40s 1,440 504ms 13s367ms 7s194ms 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 #17
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
18 18m11s 85 11s834ms 13s367ms 12s846ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jun 09 09 4 48s87ms 12s21ms 10 1 11s976ms 11s976ms 11 2 23s845ms 11s922ms 12 6 1m11s 11s979ms 13 6 1m11s 11s941ms 14 7 1m27s 12s465ms 15 6 1m18s 13s146ms 16 6 1m18s 13s116ms 17 6 1m19s 13s172ms 18 5 1m5s 13s110ms 19 6 1m18s 13s146ms 20 6 1m18s 13s164ms 21 6 1m19s 13s181ms 22 6 1m19s 13s197ms 23 6 1m19s 13s257ms 00 6 1m19s 13s238ms [ User: monitoring_admin - Total duration: 18m11s - Times executed: 85 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 10:37:24+02' AND collected_at <= '2026-06-09 10:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 22:37:37 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 06:20:56+02' AND collected_at <= '2026-06-09 06:20:56+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 06:20:56+02' AND '2026-06-09 18:20:56+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 06:20:56+02' AND '2026-06-09 18:20:56+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 18:21:09 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 10:27:05+02' AND collected_at <= '2026-06-09 10:27:05+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:27:05+02' AND '2026-06-09 22:27:05+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:27:05+02' AND '2026-06-09 22:27:05+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 22:27:19 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
19 12s965ms 16 606ms 1s11ms 810ms with readable_targetgroups as materialized ( select tgm.targetgroup from "targetgroupMembers" tgm where tgm."user" = ? union select tgm.targetgroup from "targetgroupMembers" tgm join "groupMembers" gm on gm."group" = tgm."group" where gm."user" = ? ) select * from litters_search_mview l where not (deleted) and (l.owner in ( select targetgroup from readable_targetgroups) or l.editor in ( select targetgroup from readable_targetgroups) or l.tourist in ( select targetgroup from readable_targetgroups)) and (offspring - case when male_wean is null then ? else male_wean end - case when female_wean is null then ? else female_wean end - case when male_dead is null then ? else male_dead end - case when female_dead is null then ? else female_dead end - case when female_deceased is null then ? else female_deceased end - case when male_deceased is null then ? else male_deceased end) > ? and "cageName" like ? order by bday desc, dam_name, sire_name;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Jun 09 07 2 1s609ms 804ms 10 6 5s720ms 953ms 13 4 3s53ms 763ms 15 2 1s268ms 634ms 16 2 1s314ms 657ms [ User: labanimal - Total duration: 12s965ms - Times executed: 16 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 12s965ms - Times executed: 16 ]
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:25:38 Duration: 1s11ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:38:00 Duration: 1s10ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:38:01 Duration: 968ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
20 8s753ms 5 1s580ms 1s940ms 1s750ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and cagess."cageName" like (?) and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jun 09 08 1 1s940ms 1s940ms 10 1 1s844ms 1s844ms 11 1 1s793ms 1s793ms 13 2 3s175ms 1s587ms [ User: labanimal - Total duration: 8s753ms - Times executed: 5 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 8s753ms - Times executed: 5 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 477) THEN TRUE WHEN user_is_tgm (dam.editor, 477) THEN TRUE WHEN user_is_tgm (dam.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 477) THEN TRUE WHEN user_is_tgm (sire.editor, 477) THEN TRUE WHEN user_is_tgm (sire.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('53-507') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-06-09 07:20:03 Duration: 1s940ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 477) THEN TRUE WHEN user_is_tgm (dam.editor, 477) THEN TRUE WHEN user_is_tgm (dam.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 477) THEN TRUE WHEN user_is_tgm (sire.editor, 477) THEN TRUE WHEN user_is_tgm (sire.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('53%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-06-09 09:35:19 Duration: 1s844ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 457) THEN TRUE WHEN user_is_tgm (dam.editor, 457) THEN TRUE WHEN user_is_tgm (dam.tourist, 457) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 457) THEN TRUE WHEN user_is_tgm (sire.editor, 457) THEN TRUE WHEN user_is_tgm (sire.tourist, 457) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('46-403') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-06-09 10:42:08 Duration: 1s793ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
Most frequent queries (N)
Rank Times executed Total duration Min duration Max duration Avg duration Query 1 1,440 2h52m40s 504ms 13s367ms 7s194ms create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
2 1,440 2h52m40s 504ms 13s367ms 7s194ms 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 #2
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
3 1,440 2h52m40s 504ms 13s367ms 7s194ms create schema if not exists observability;Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
4 1,440 2h52m40s 504ms 13s367ms 7s194ms create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
5 1,440 2h52m40s 504ms 13s367ms 7s194ms 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 #5
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
6 1,440 2h52m40s 504ms 13s367ms 7s194ms create table if not exists observability.app_events ( id bigserial primary key, tenant_key text not null, event_type text not null, severity text not null, message text not null, payload jsonb, occurred_at timestamptz not null default now(), created_at timestamptz not null default now() );Times Reported Time consuming queries #6
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
7 1,440 2h52m40s 504ms 13s367ms 7s194ms create table if not exists observability.system_metrics ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #7
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
8 1,440 2h52m40s 504ms 13s367ms 7s194ms 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 Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
9 1,440 2h52m40s 504ms 13s367ms 7s194ms alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
10 1,440 2h52m40s 504ms 13s367ms 7s194ms create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
11 1,440 2h52m40s 504ms 13s367ms 7s194ms create table if not exists observability.phpfpm_counters ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
12 1,440 2h52m40s 504ms 13s367ms 7s194ms create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #12
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
13 1,440 2h52m40s 504ms 13s367ms 7s194ms create index if not exists idx_uptime_checks_endpoint on observability.uptime_checks (endpoint, checked_at desc);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
14 1,440 2h52m40s 504ms 13s367ms 7s194ms create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #14
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
15 1,440 2h52m40s 504ms 13s367ms 7s194ms alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
16 1,440 2h52m40s 504ms 13s367ms 7s194ms create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
17 1,440 2h52m40s 504ms 13s367ms 7s194ms 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 #17
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
18 85 18m11s 11s834ms 13s367ms 12s846ms with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #18
Day Hour Count Duration Avg duration Jun 09 09 4 48s87ms 12s21ms 10 1 11s976ms 11s976ms 11 2 23s845ms 11s922ms 12 6 1m11s 11s979ms 13 6 1m11s 11s941ms 14 7 1m27s 12s465ms 15 6 1m18s 13s146ms 16 6 1m18s 13s116ms 17 6 1m19s 13s172ms 18 5 1m5s 13s110ms 19 6 1m18s 13s146ms 20 6 1m18s 13s164ms 21 6 1m19s 13s181ms 22 6 1m19s 13s197ms 23 6 1m19s 13s257ms 00 6 1m19s 13s238ms [ User: monitoring_admin - Total duration: 18m11s - Times executed: 85 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 10:37:24+02' AND collected_at <= '2026-06-09 10:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 22:37:37 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 06:20:56+02' AND collected_at <= '2026-06-09 06:20:56+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 06:20:56+02' AND '2026-06-09 18:20:56+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 06:20:56+02' AND '2026-06-09 18:20:56+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 18:21:09 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 10:27:05+02' AND collected_at <= '2026-06-09 10:27:05+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:27:05+02' AND '2026-06-09 22:27:05+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:27:05+02' AND '2026-06-09 22:27:05+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 22:27:19 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
19 16 12s965ms 606ms 1s11ms 810ms with readable_targetgroups as materialized ( select tgm.targetgroup from "targetgroupMembers" tgm where tgm."user" = ? union select tgm.targetgroup from "targetgroupMembers" tgm join "groupMembers" gm on gm."group" = tgm."group" where gm."user" = ? ) select * from litters_search_mview l where not (deleted) and (l.owner in ( select targetgroup from readable_targetgroups) or l.editor in ( select targetgroup from readable_targetgroups) or l.tourist in ( select targetgroup from readable_targetgroups)) and (offspring - case when male_wean is null then ? else male_wean end - case when female_wean is null then ? else female_wean end - case when male_dead is null then ? else male_dead end - case when female_dead is null then ? else female_dead end - case when female_deceased is null then ? else female_deceased end - case when male_deceased is null then ? else male_deceased end) > ? and "cageName" like ? order by bday desc, dam_name, sire_name;Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Jun 09 07 2 1s609ms 804ms 10 6 5s720ms 953ms 13 4 3s53ms 763ms 15 2 1s268ms 634ms 16 2 1s314ms 657ms [ User: labanimal - Total duration: 12s965ms - Times executed: 16 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 12s965ms - Times executed: 16 ]
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:25:38 Duration: 1s11ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:38:00 Duration: 1s10ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:38:01 Duration: 968ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
20 10 7s707ms 755ms 801ms 770ms 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 #20
Day Hour Count Duration Avg duration Jun 09 09 1 801ms 801ms 10 1 755ms 755ms 11 1 771ms 771ms 12 7 5s379ms 768ms [ User: labanimal - Total duration: 7s707ms - Times executed: 10 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 7s707ms - Times executed: 10 ]
-
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, 492) AS is_owner, user_is_tgm (animals_search_mview.editor, 492) AS is_editor, user_is_tgm (animals_search_mview.tourist, 492) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-06-09 08:54:37 Duration: 801ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.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, 490) AS is_owner, user_is_tgm (animals_search_mview.editor, 490) AS is_editor, user_is_tgm (animals_search_mview.tourist, 490) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-06-09 11:42:33 Duration: 776ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.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, 490) AS is_owner, user_is_tgm (animals_search_mview.editor, 490) AS is_editor, user_is_tgm (animals_search_mview.tourist, 490) AS is_tourist, CASE WHEN NOT EXISTS ( SELECT 1 FROM scoresheet_diary sd WHERE sd.animals_id = animals_search_mview.id) THEN 'f' ELSE 't' END AS isscored FROM animals_search_mview LEFT JOIN strains ON strains.name = animals_search_mview.strain LEFT JOIN license_history lh ON lh.anid = animals_search_mview.id LEFT JOIN animals a ON a."animalID" = animals_search_mview.animal_id LEFT JOIN breedings b ON b.id = animals_search_mview.last_mating) data WHERE fate = 5 AND alive = 't' AND deleted = 'f' AND (is_owner OR is_editor OR is_tourist);
Date: 2026-06-09 11:41:03 Duration: 776ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
Normalized slowest queries (N)
Rank Min duration Max duration Avg duration Times executed Total duration Query 1 11s834ms 13s367ms 12s846ms 85 18m11s with start_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at >= ? and collected_at <= ? order by tenant_key, fingerprint, collected_at desc ), fallback_start as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at asc ), end_snap as ( select distinct on (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at from observability.db_top_queries where tenant_key in (...) and collected_at between ? and ? order by tenant_key, fingerprint, collected_at desc ), deltas as ( select e.tenant_key, e.fingerprint, e.query, e.collected_at as last_seen, greatest (coalesce(e.total_time_ms, ?) - coalesce(s.total_time_ms, fs.total_time_ms, ?), ?) as total_time_ms, greatest (coalesce(e.calls, ?) - coalesce(s.calls, fs.calls, ?), ?) as calls, greatest (coalesce(e.rows_returned, ?) - coalesce(s.rows_returned, fs.rows_returned, ?), ?) as rows_returned from end_snap e left join start_snap s on s.tenant_key = e.tenant_key and s.fingerprint = e.fingerprint left join fallback_start fs on fs.tenant_key = e.tenant_key and fs.fingerprint = e.fingerprint and s.tenant_key is null ) select fingerprint, max(query) as query, max(last_seen) as last_seen, sum(total_time_ms) as total_time_ms, sum(calls) as calls, sum(rows_returned) as rows_returned, case when sum(calls) > ? then sum(total_time_ms) / sum(calls) else ? end as mean_time_ms, array_agg(distinct tenant_key order by tenant_key) as tenant_keys from deltas where total_time_ms > ? or calls > ? group by fingerprint order by total_time_ms desc, calls desc limit ? offset ?;Times Reported Time consuming queries #1
Day Hour Count Duration Avg duration Jun 09 09 4 48s87ms 12s21ms 10 1 11s976ms 11s976ms 11 2 23s845ms 11s922ms 12 6 1m11s 11s979ms 13 6 1m11s 11s941ms 14 7 1m27s 12s465ms 15 6 1m18s 13s146ms 16 6 1m18s 13s116ms 17 6 1m19s 13s172ms 18 5 1m5s 13s110ms 19 6 1m18s 13s146ms 20 6 1m18s 13s164ms 21 6 1m19s 13s181ms 22 6 1m19s 13s197ms 23 6 1m19s 13s257ms 00 6 1m19s 13s238ms [ User: monitoring_admin - Total duration: 18m11s - Times executed: 85 ]
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 10:37:24+02' AND collected_at <= '2026-06-09 10:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:37:24+02' AND '2026-06-09 22:37:24+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 22:37:37 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 06:20:56+02' AND collected_at <= '2026-06-09 06:20:56+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 06:20:56+02' AND '2026-06-09 18:20:56+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 06:20:56+02' AND '2026-06-09 18:20:56+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 18:21:09 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH start_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at >= '2026-06-07 10:27:05+02' AND collected_at <= '2026-06-09 10:27:05+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), fallback_start AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:27:05+02' AND '2026-06-09 22:27:05+02' ORDER BY tenant_key, fingerprint, collected_at ASC ), end_snap AS ( SELECT DISTINCT ON (tenant_key, fingerprint) tenant_key, fingerprint, query, total_time_ms, calls, rows_returned, collected_at FROM observability.db_top_queries WHERE tenant_key IN ('prod', 'live') AND collected_at BETWEEN '2026-06-09 10:27:05+02' AND '2026-06-09 22:27:05+02' ORDER BY tenant_key, fingerprint, collected_at DESC ), deltas AS ( SELECT e.tenant_key, e.fingerprint, e.query, e.collected_at AS last_seen, GREATEST (COALESCE(e.total_time_ms, 0) - COALESCE(s.total_time_ms, fs.total_time_ms, 0), 0) AS total_time_ms, GREATEST (COALESCE(e.calls, 0) - COALESCE(s.calls, fs.calls, 0), 0) AS calls, GREATEST (COALESCE(e.rows_returned, 0) - COALESCE(s.rows_returned, fs.rows_returned, 0), 0) AS rows_returned FROM end_snap e LEFT JOIN start_snap s ON s.tenant_key = e.tenant_key AND s.fingerprint = e.fingerprint LEFT JOIN fallback_start fs ON fs.tenant_key = e.tenant_key AND fs.fingerprint = e.fingerprint AND s.tenant_key IS NULL ) SELECT fingerprint, MAX(query) AS query, MAX(last_seen) AS last_seen, SUM(total_time_ms) AS total_time_ms, SUM(calls) AS calls, SUM(rows_returned) AS rows_returned, CASE WHEN SUM(calls) > 0 THEN SUM(total_time_ms) / SUM(calls) ELSE 0 END AS mean_time_ms, array_agg(DISTINCT tenant_key ORDER BY tenant_key) AS tenant_keys FROM deltas WHERE total_time_ms > 0 OR calls > 0 GROUP BY fingerprint ORDER BY total_time_ms DESC, calls DESC LIMIT '20' OFFSET '0';
Date: 2026-06-09 22:27:19 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
2 504ms 13s367ms 7s194ms 1,440 2h52m40s create index if not exists idx_uptime_checks_key on observability.uptime_checks (check_key, checked_at desc);Times Reported Time consuming queries #2
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_key ON observability.uptime_checks (check_key, checked_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
3 504ms 13s367ms 7s194ms 1,440 2h52m40s create table if not exists observability.metrics_timeseries ( id bigserial primary key, tenant_key text not null, metric_name text not null, bucket_start timestamptz not null, bucket_width_seconds integer not null default ?, sum_value double precision not null default ?, count_value bigint not null default ?, histogram jsonb, created_at timestamptz not null default now(), updated_at timestamptz not null default now(), unique (tenant_key, metric_name, bucket_start, bucket_width_seconds) );Times Reported Time consuming queries #3
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.metrics_timeseries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, metric_name text NOT NULL, bucket_start timestamptz NOT NULL, bucket_width_seconds integer NOT NULL DEFAULT 60, sum_value double precision NOT NULL DEFAULT 0, count_value bigint NOT NULL DEFAULT 0, histogram jsonb, created_at timestamptz NOT NULL DEFAULT NOW(), updated_at timestamptz NOT NULL DEFAULT NOW(), UNIQUE (tenant_key, metric_name, bucket_start, bucket_width_seconds) );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
4 504ms 13s367ms 7s194ms 1,440 2h52m40s create schema if not exists observability;Times Reported Time consuming queries #4
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE SCHEMA IF NOT EXISTS observability;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
5 504ms 13s367ms 7s194ms 1,440 2h52m40s create index if not exists idx_app_events_tenant on observability.app_events (tenant_key, occurred_at desc);Times Reported Time consuming queries #5
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_tenant ON observability.app_events (tenant_key, occurred_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
6 504ms 13s367ms 7s194ms 1,440 2h52m40s 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 #6
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_db_top_queries_tenant ON observability.db_top_queries (tenant_key, collected_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
7 504ms 13s367ms 7s194ms 1,440 2h52m40s 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 #7
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.app_events ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, event_type text NOT NULL, severity text NOT NULL, message text NOT NULL, payload jsonb, occurred_at timestamptz NOT NULL DEFAULT NOW(), created_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
8 504ms 13s367ms 7s194ms 1,440 2h52m40s create table if not exists observability.system_metrics ( id bigserial primary key, payload jsonb not null, collected_at timestamptz not null default now() );Times Reported Time consuming queries #8
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.system_metrics ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
9 504ms 13s367ms 7s194ms 1,440 2h52m40s create table if not exists observability.db_top_queries ( id bigserial primary key, tenant_key text not null, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz not null default now() );Times Reported Time consuming queries #9
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.db_top_queries ( id bigserial PRIMARY KEY, tenant_key text NOT NULL, fingerprint text, query text, mean_time_ms double precision, total_time_ms double precision, calls bigint, rows_returned bigint, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
10 504ms 13s367ms 7s194ms 1,440 2h52m40s alter table observability.uptime_checks add column if not exists label text;Times Reported Time consuming queries #10
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS label text;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
11 504ms 13s367ms 7s194ms 1,440 2h52m40s create index if not exists idx_metrics_timeseries_metric on observability.metrics_timeseries (metric_name);Times Reported Time consuming queries #11
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_metric ON observability.metrics_timeseries (metric_name);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
12 504ms 13s367ms 7s194ms 1,440 2h52m40s 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 #12
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.phpfpm_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
13 504ms 13s367ms 7s194ms 1,440 2h52m40s create index if not exists idx_metrics_timeseries_bucket on observability.metrics_timeseries (bucket_start);Times Reported Time consuming queries #13
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_metrics_timeseries_bucket ON observability.metrics_timeseries (bucket_start);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
14 504ms 13s367ms 7s194ms 1,440 2h52m40s 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 Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_uptime_checks_endpoint ON observability.uptime_checks (endpoint, checked_at DESC);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
15 504ms 13s367ms 7s194ms 1,440 2h52m40s create table if not exists observability.uptime_checks ( id bigserial primary key, endpoint text not null, status text not null, latency_ms double precision, checked_at timestamptz not null default now() );Times Reported Time consuming queries #15
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.uptime_checks ( id bigserial PRIMARY KEY, endpoint text NOT NULL, status text NOT NULL, latency_ms double precision, checked_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
16 504ms 13s367ms 7s194ms 1,440 2h52m40s alter table observability.uptime_checks add column if not exists payload jsonb;Times Reported Time consuming queries #16
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
ALTER TABLE observability.uptime_checks ADD COLUMN IF NOT EXISTS payload jsonb;
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
17 504ms 13s367ms 7s194ms 1,440 2h52m40s create index if not exists idx_app_events_type on observability.app_events (event_type);Times Reported Time consuming queries #17
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE INDEX IF NOT EXISTS idx_app_events_type ON observability.app_events (event_type);
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
18 504ms 13s367ms 7s194ms 1,440 2h52m40s 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 #18
Day Hour Count Duration Avg duration Jun 09 01 60 0ms 0ms 02 60 30s346ms 505ms 03 60 1m2s 1s46ms 04 60 1m2s 1s46ms 05 60 1m2s 1s46ms 06 60 1m2s 1s46ms 07 60 37s719ms 628ms 08 60 1m3s 1s54ms 09 60 5m29s 5s495ms 10 60 3m41s 3s696ms 11 60 2m11s 2s198ms 12 60 9m32s 9s548ms 13 60 9m11s 9s196ms 14 60 11m11s 11s191ms 15 60 11m3s 11s61ms 16 60 10m55s 10s924ms 17 60 11m28s 11s483ms 18 60 13m6s 13s115ms 19 60 13m8s 13s147ms 20 60 13m9s 13s157ms 21 60 13m10s 13s178ms 22 60 13m12s 13s208ms 23 60 13m14s 13s239ms 00 60 12m27s 12s461ms [ User: monitoring_admin - Total duration: 2h52m40s - Times executed: 1337 ]
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:47:01 Duration: 13s367ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 18:31:01 Duration: 13s321ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
CREATE TABLE IF NOT EXISTS observability.nginx_counters ( id bigserial PRIMARY KEY, payload jsonb NOT NULL, collected_at timestamptz NOT NULL DEFAULT NOW() );
Date: 2026-06-09 22:37:01 Duration: 13s297ms Database: zemm_monitoring User: monitoring_admin Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
19 1s580ms 1s940ms 1s750ms 5 8s753ms with damdam as ( select breedingid, string_agg(cast(dam as text), ?) as dam from breedingsdams inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as dam on dam.id = breedingsdams.dam and case when user_is_tgm (dam.owner, ?) then true when user_is_tgm (dam.editor, ?) then true when user_is_tgm (dam.tourist, ?) then true else false end group by breedingid ), siresire as ( select breedingid, string_agg(cast(sire as text), ?) as sire from breedingssires inner join ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" from animals) as sire on sire.id = breedingssires.sire and case when user_is_tgm (sire.owner, ?) then true when user_is_tgm (sire.editor, ?) then true when user_is_tgm (sire.tourist, ?) then true else false end group by breedingid ), cagess as ( select id, "cageName" from cages) ( select breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire from damdam, siresire, cagess, breedings where breedings.deleted != true and cagess.id = breedings.cage and cagess."cageName" like (?) and damdam.breedingid = breedings.id and siresire.breedingid = breedings.id and breedings."unbreeding_date" is null group by breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire order by breeding_date, plug_date);Times Reported Time consuming queries #19
Day Hour Count Duration Avg duration Jun 09 08 1 1s940ms 1s940ms 10 1 1s844ms 1s844ms 11 1 1s793ms 1s793ms 13 2 3s175ms 1s587ms [ User: labanimal - Total duration: 8s753ms - Times executed: 5 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 8s753ms - Times executed: 5 ]
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 477) THEN TRUE WHEN user_is_tgm (dam.editor, 477) THEN TRUE WHEN user_is_tgm (dam.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 477) THEN TRUE WHEN user_is_tgm (sire.editor, 477) THEN TRUE WHEN user_is_tgm (sire.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('53-507') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-06-09 07:20:03 Duration: 1s940ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 477) THEN TRUE WHEN user_is_tgm (dam.editor, 477) THEN TRUE WHEN user_is_tgm (dam.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 477) THEN TRUE WHEN user_is_tgm (sire.editor, 477) THEN TRUE WHEN user_is_tgm (sire.tourist, 477) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('53%') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-06-09 09:35:19 Duration: 1s844ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH damdam AS ( SELECT breedingid, string_agg(cast(dam as text), ';') AS dam FROM breedingsdams INNER JOIN ( SELECT id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS dam ON dam.id = breedingsdams.dam AND CASE WHEN user_is_tgm (dam.owner, 457) THEN TRUE WHEN user_is_tgm (dam.editor, 457) THEN TRUE WHEN user_is_tgm (dam.tourist, 457) THEN TRUE ELSE FALSE END GROUP BY breedingid ), siresire AS ( SELECT breedingid, string_agg(cast(sire as text), ';') AS sire FROM breedingssires INNER JOIN ( select id, owner, editor, tourist, "animalID", name, "dummy_strain_info", generation, "dummy_line_info", "dummy_backcross_info" FROM animals) AS sire ON sire.id = breedingssires.sire AND CASE WHEN user_is_tgm (sire.owner, 457) THEN TRUE WHEN user_is_tgm (sire.editor, 457) THEN TRUE WHEN user_is_tgm (sire.tourist, 457) THEN TRUE ELSE FALSE END GROUP BY breedingid ), cagess AS ( select id, "cageName" FROM cages) ( SELECT breedings.id, breedings.breeding_date, breedings.unbreeding_date, breedings.plug_date, cagess."cageName" as cage_name, breedings.deleted, damdam.dam, siresire.sire FROM damdam, siresire, cagess, breedings WHERE breedings.deleted != true AND cagess.id = breedings.cage AND cagess."cageName" like ('46-403') AND damdam.breedingid = breedings.id AND siresire.breedingid = breedings.id AND breedings."unbreeding_date" IS NULL GROUP BY breedings.id, cagess."cageName", breeding_date, unbreeding_date, plug_date, damdam.dam, siresire.sire ORDER BY breeding_date, plug_date);
Date: 2026-06-09 10:42:08 Duration: 1s793ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
20 606ms 1s11ms 810ms 16 12s965ms with readable_targetgroups as materialized ( select tgm.targetgroup from "targetgroupMembers" tgm where tgm."user" = ? union select tgm.targetgroup from "targetgroupMembers" tgm join "groupMembers" gm on gm."group" = tgm."group" where gm."user" = ? ) select * from litters_search_mview l where not (deleted) and (l.owner in ( select targetgroup from readable_targetgroups) or l.editor in ( select targetgroup from readable_targetgroups) or l.tourist in ( select targetgroup from readable_targetgroups)) and (offspring - case when male_wean is null then ? else male_wean end - case when female_wean is null then ? else female_wean end - case when male_dead is null then ? else male_dead end - case when female_dead is null then ? else female_dead end - case when female_deceased is null then ? else female_deceased end - case when male_deceased is null then ? else male_deceased end) > ? and "cageName" like ? order by bday desc, dam_name, sire_name;Times Reported Time consuming queries #20
Day Hour Count Duration Avg duration Jun 09 07 2 1s609ms 804ms 10 6 5s720ms 953ms 13 4 3s53ms 763ms 15 2 1s268ms 634ms 16 2 1s314ms 657ms [ User: labanimal - Total duration: 12s965ms - Times executed: 16 ]
[ Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 - Total duration: 12s965ms - Times executed: 16 ]
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:25:38 Duration: 1s11ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:38:00 Duration: 1s10ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
-
WITH readable_targetgroups AS MATERIALIZED ( SELECT tgm.targetgroup FROM "targetgroupMembers" tgm WHERE tgm."user" = 477 UNION SELECT tgm.targetgroup FROM "targetgroupMembers" tgm JOIN "groupMembers" gm ON gm."group" = tgm."group" WHERE gm."user" = 477 ) SELECT * FROM litters_search_mview l WHERE NOT (deleted) AND (l.owner IN ( SELECT targetgroup FROM readable_targetgroups) OR l.editor IN ( SELECT targetgroup FROM readable_targetgroups) OR l.tourist IN ( SELECT targetgroup FROM readable_targetgroups)) AND (offspring - CASE WHEN male_wean IS NULL THEN 0 ELSE male_wean END - CASE WHEN female_wean IS NULL THEN 0 ELSE female_wean END - CASE WHEN male_dead IS NULL THEN 0 ELSE male_dead END - CASE WHEN female_dead IS NULL THEN 0 ELSE female_dead END - CASE WHEN female_deceased IS NULL THEN 0 ELSE female_deceased END - CASE WHEN male_deceased IS NULL THEN 0 ELSE male_deceased END) > 0 AND "cageName" LIKE '53%' ORDER BY bday DESC, dam_name, sire_name;
Date: 2026-06-09 09:38:01 Duration: 968ms Database: zemm_produktiv_8 User: labanimal Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 Bind query: yes Log file: /var/log/postgresql/postgresql-2026-06-09_061251.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
- 141,784 Event entries
- (EVENTLOG entries are formaly LOG level entries that are not queries)
Events distribution (except queries)
Key values
- 0 PANIC entries
- 0 FATAL entries
- 0 ERROR entries
- 0 WARNING entries
- 12 EVENTLOG entries
Most Frequent Errors/Events
Key values
- 3 Max number of times the same event was reported
- 12 Total events found
Rank Times reported Error 1 3 ERROR: column "..." does not exist
Times Reported Most Frequent Error / Event #1
Day Hour Count Jun 09 15 2 17 1 - ERROR: column s.name does not exist
- ERROR: column f.name does not exist
- ERROR: column "birthdate" does not exist
Hint: Perhaps you meant to reference the column "a.name".
Statement: SELECT 'animals_total' AS metric, count(*) FROM animals UNION ALL SELECT 'animals_active', count(*) FROM animals WHERE deleted IS FALSE AND alive IS TRUE UNION ALL SELECT 'mouse_total', count(*) FROM animals a JOIN species s ON s.id=a.species WHERE lower(s.name) IN ('maus','mouse') UNION ALL SELECT 'mouse_active', count(*) FROM animals a JOIN species s ON s.id=a.species WHERE lower(s.name) IN ('maus','mouse') AND a.deleted IS FALSE AND a.alive IS TRUE UNION ALL SELECT 'distinct_dummy_line', count(DISTINCT nullif(btrim(dummy_line_info),'')) FROM animals UNION ALL SELECT 'distinct_dummy_strain', count(DISTINCT nullif(btrim(dummy_strain_info),'')) FROM animals UNION ALL SELECT 'distinct_strain_fk', count(DISTINCT strain) FROM animals WHERE strain IS NOT NULL UNION ALL SELECT 'breedings_total', count(*) FROM breedings WHERE deleted IS FALSE UNION ALL SELECT 'litters_total', count(*) FROM litters WHERE deleted IS FALSE;Date: 2026-06-09 14:57:41 Database: zemm_dev Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
Hint: Perhaps you meant to reference the column "a.name".
Statement: SELECT coalesce(f.name::text, a.fate::text, '(leer)') AS fate, count(*) FROM animals a LEFT JOIN fates f ON f.id=a.fate WHERE a.deleted IS FALSE GROUP BY 1 ORDER BY count(*) DESC, 1 LIMIT 15;Date: 2026-06-09 14:58:20 Database: zemm_dev Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
Hint: Perhaps you meant to reference the column "animals.birthDate".
Statement: WITH bounds AS ( SELECT DATE '2026-01-01' AS from_date, (CURRENT_DATE + INTERVAL '1 day') AS to_excl ) SELECT 'animals_total_not_deleted', COUNT(*)::text FROM animals WHERE COALESCE(deleted,false)=false UNION ALL SELECT 'animals_alive_not_deleted', COUNT(*)::text FROM animals WHERE COALESCE(deleted,false)=false AND COALESCE(alive,true)=true UNION ALL SELECT 'animals_birthDate_2026', COUNT(*)::text FROM animals,bounds WHERE COALESCE(deleted,false)=false AND birthDate >= from_date AND birthDate < to_excl UNION ALL SELECT 'animals_arrivalDate_2026', COUNT(*)::text FROM animals,bounds WHERE COALESCE(deleted,false)=false AND arrivalDate >= from_date AND arrivalDate < to_excl UNION ALL SELECT 'animals_deathDate_2026', COUNT(*)::text FROM animals,bounds WHERE COALESCE(deleted,false)=false AND deathDate >= from_date AND deathDate < to_excl UNION ALL SELECT 'animals_outgoingDate_2026', COUNT(*)::text FROM animals,bounds WHERE COALESCE(deleted,false)=false AND outgoingDate >= from_date AND outgoingDate < to_excl UNION ALL SELECT 'cages_total_not_deleted', COUNT(*)::text FROM cages WHERE COALESCE(deleted,false)=false UNION ALL SELECT 'cages_installed_2026', COUNT(*)::text FROM cages,bounds WHERE COALESCE(deleted,false)=false AND installation_date >= from_date AND installation_date < to_excl UNION ALL SELECT 'cages_changed_2026', COUNT(*)::text FROM cages,bounds WHERE COALESCE(deleted,false)=false AND change_date >= from_date AND change_date < to_excl UNION ALL SELECT 'litters_total_not_deleted', COUNT(*)::text FROM litters WHERE COALESCE(deleted,false)=false UNION ALL SELECT 'litters_birthDate_2026', COUNT(*)::text FROM litters,bounds WHERE COALESCE(deleted,false)=false AND birthDate >= from_date AND birthDate < to_excl UNION ALL SELECT 'breedings_total_not_deleted', COUNT(*)::text FROM breedings WHERE COALESCE(deleted,false)=false UNION ALL SELECT 'breedings_started_2026', COUNT(*)::text FROM breedings,bounds WHERE COALESCE(deleted,false)=false AND breeding_date >= from_date AND breeding_date < to_excl UNION ALL SELECT 'breedings_unbred_2026', COUNT(*)::text FROM breedings,bounds WHERE COALESCE(deleted,false)=false AND unbreeding_date >= from_date AND unbreeding_date < to_excl UNION ALL SELECT 'tasks_total_not_deleted', COUNT(*)::text FROM tasks WHERE COALESCE(deleted,false)=false UNION ALL SELECT 'tasks_issued_2026', COUNT(*)::text FROM tasks,bounds WHERE COALESCE(deleted,false)=false AND time_issued >= from_date AND time_issued < to_excl UNION ALL SELECT 'tasks_completed_2026', COUNT(*)::text FROM tasks,bounds WHERE COALESCE(deleted,false)=false AND time_completed >= from_date AND time_completed < to_excl UNION ALL SELECT 'tasks_changes_2026', COUNT(*)::text FROM tasks_changes,bounds WHERE COALESCE(deleted,false)=false AND timestamp >= from_date AND timestamp < to_excl UNION ALL SELECT 'animal_task_assignments_2026', COUNT(*)::text FROM animals_tasks,bounds WHERE assigned_on >= from_date AND assigned_on < to_excl UNION ALL SELECT 'diary_entries_2026', COUNT(*)::text FROM diary,bounds WHERE COALESCE(deleted,false)=false AND date >= from_date AND date < to_excl UNION ALL SELECT 'diary_distinct_users_2026', COUNT(DISTINCT entrybyID)::text FROM diary,bounds WHERE COALESCE(deleted,false)=false AND date >= from_date AND date < to_excl UNION ALL SELECT 'diary_distinct_animals_2026', COUNT(DISTINCT animalID)::text FROM diary,bounds WHERE COALESCE(deleted,false)=false AND date >= from_date AND date < to_excl UNION ALL SELECT 'documents_created_2026', COUNT(*)::text FROM documents,bounds WHERE COALESCE(deleted,false)=false AND created_on >= from_date AND created_on < to_excl UNION ALL SELECT 'animal_orders_2026', COUNT(*)::text FROM orders,bounds WHERE COALESCE(deleted,false)=false AND COALESCE(order_date,date) >= from_date AND COALESCE(order_date,date) < to_excl UNION ALL SELECT 'animal_ordered_count_2026', COALESCE(SUM(number_animals),0)::text FROM orders,bounds WHERE COALESCE(deleted,false)=false AND COALESCE(order_date,date) >= from_date AND COALESCE(order_date,date) < to_excl UNION ALL SELECT 'material_orders_2026', COUNT(*)::text FROM material_orders,bounds WHERE COALESCE(deleted,false)=false AND COALESCE(order_date,date) >= from_date AND COALESCE(order_date,date) < to_excl UNION ALL SELECT 'invoices_2026', COUNT(*)::text FROM invoices,bounds WHERE COALESCE(deleted,false)=false AND date >= from_date AND date < to_excl UNION ALL SELECT 'cost_events_2026', COUNT(*)::text FROM cost_events,bounds WHERE COALESCE(deleted,false)=false AND fromDate >= from_date AND fromDate < to_excl UNION ALL SELECT 'cagetalker_events_2026', COUNT(*)::text FROM cagetalker_changelog,bounds WHERE created_at >= from_date AND created_at < to_excl UNION ALL SELECT 'scoresheet_responses_2026', COUNT(*)::text FROM scoresheet_response,bounds WHERE time_taken >= from_date AND time_taken < to_excl ;Date: 2026-06-09 16:34:28 Database: zemm_produktiv_8 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
2 2 ERROR: relation "..." does not exist
Times Reported Most Frequent Error / Event #2
Day Hour Count Jun 09 17 2 - ERROR: relation "daily" does not exist
- ERROR: relation "monthly" does not exist
Statement: SELECT 'peak_by_users', day::text, sessions::text, users::text FROM daily ORDER BY users DESC, sessions DESC LIMIT 1;
Date: 2026-06-09 16:35:06 Database: zemm_produktiv_8 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
Statement: SELECT 'monthly', month::text, sessions::text, users::text FROM monthly ORDER BY month;
Date: 2026-06-09 16:35:06 Database: zemm_produktiv_8 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
3 1 ERROR: invalid input syntax for type date: ...
Times Reported Most Frequent Error / Event #3
Day Hour Count Jun 09 15 1 - ERROR: invalid input syntax for type date: "2026-06.09"
Statement: SELECT p_update_animals(457, '10267029', NULL, NULL, NULL, false,NULL, NULL, false, NULL, '2026-06.09', NULL, 4, 'R46', 9628, NULL, false,NULL,NULL,NULL, NULL,NULL,NULL,0);
Date: 2026-06-09 14:04:01 Database: zemm_produktiv_8 Application: _desktop_index.php_zemm_produktiv_8_localhost_5432 User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
4 1 ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list
Times Reported Most Frequent Error / Event #4
Day Hour Count Jun 09 16 1 - ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list
Statement: WITH target AS ( SELECT id, screens FROM users WHERE id = 1 AND name = 'Aadmin' FOR UPDATE ), needed AS ( SELECT unnest(ARRAY['84','85']) AS sid ), merged AS ( SELECT target.id, array_to_string( ARRAY( SELECT DISTINCT val FROM unnest(string_to_array(COALESCE(NULLIF(target.screens, ''), ''), ':') || ARRAY(SELECT sid FROM needed)) AS val WHERE val <> '' ORDER BY val::bigint ), ':' ) AS new_screens FROM target ) UPDATE users u SET screens = merged.new_screens FROM merged WHERE u.id = merged.id;
Date: 2026-06-09 15:05:42 Database: zemm_test Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
5 1 ERROR: operator is not unique: time without time zone + time without time zone
Times Reported Most Frequent Error / Event #5
Day Hour Count Jun 09 17 1 - ERROR: operator is not unique: time without time zone + time without time zone
Hint: Could not choose a best candidate operator. You might need to add explicit type casts.
Statement: WITH bounds AS ( SELECT DATE '2026-01-01' AS from_date, (CURRENT_DATE + INTERVAL '1 day') AS to_excl ), login_base AS ( SELECT lt.*, lt.timestamp::date AS day, CASE WHEN lt.logout IS NULL THEN NULL WHEN lt.logout >= lt.timestamp::time THEN EXTRACT(EPOCH FROM (lt.logout - lt.timestamp::time)) / 60.0 ELSE EXTRACT(EPOCH FROM ((lt.logout + TIME '24:00') - lt.timestamp::time)) / 60.0 END AS duration_min FROM login_tracker lt, bounds b WHERE lt.timestamp >= b.from_date AND lt.timestamp < b.to_excl ), valid_sessions AS ( SELECT * FROM login_base WHERE duration_min IS NOT NULL AND duration_min >= 0 AND duration_min <= 12*60 ), dau AS ( SELECT day, COUNT(DISTINCT COALESCE("user"::text, loginname, sessionid)) AS users, COUNT(*) AS sessions FROM login_base GROUP BY day ), mau AS ( SELECT date_trunc('month', timestamp)::date AS month, COUNT(DISTINCT COALESCE("user"::text, loginname, sessionid)) AS users, COUNT(*) AS sessions FROM login_base GROUP BY 1 ) SELECT 'period' AS metric, (SELECT from_date::text || ' bis ' || (to_excl::date - 1)::text FROM bounds) AS value UNION ALL SELECT 'server_now', now()::text UNION ALL SELECT 'registered_users_total', COUNT(*)::text FROM users UNION ALL SELECT 'registered_users_active_not_deleted', COUNT(*)::text FROM users WHERE COALESCE(active,true) IS TRUE AND COALESCE(deleted,false) IS FALSE UNION ALL SELECT 'users_lastlogin_2026', COUNT(*)::text FROM users, bounds WHERE lastlogin >= from_date AND lastlogin < to_excl UNION ALL SELECT 'login_sessions_2026', COUNT(*)::text FROM login_base UNION ALL SELECT 'login_distinct_user_ids_2026', COUNT(DISTINCT "user")::text FROM login_base WHERE "user" IS NOT NULL UNION ALL SELECT 'login_distinct_identity_fallback_2026', COUNT(DISTINCT COALESCE("user"::text, loginname, sessionid))::text FROM login_base UNION ALL SELECT 'login_active_days_2026', COUNT(DISTINCT day)::text FROM login_base UNION ALL SELECT 'avg_dau_on_active_days', ROUND(AVG(users),2)::text FROM dau UNION ALL SELECT 'max_dau', COALESCE(MAX(users),0)::text FROM dau UNION ALL SELECT 'avg_sessions_per_active_day', ROUND(AVG(sessions),2)::text FROM dau UNION ALL SELECT 'max_sessions_day', COALESCE(MAX(sessions),0)::text FROM dau UNION ALL SELECT 'sessions_with_logout_duration', COUNT(*)::text FROM valid_sessions UNION ALL SELECT 'total_logged_hours_valid_logout_le_12h', ROUND(COALESCE(SUM(duration_min),0)/60.0,2)::text FROM valid_sessions UNION ALL SELECT 'avg_session_minutes_valid_logout_le_12h', ROUND(AVG(duration_min),2)::text FROM valid_sessions UNION ALL SELECT 'median_session_minutes_valid_logout_le_12h', ROUND(percentile_cont(0.5) WITHIN GROUP (ORDER BY duration_min)::numeric,2)::text FROM valid_sessions UNION ALL SELECT 'p90_session_minutes_valid_logout_le_12h', ROUND(percentile_cont(0.9) WITHIN GROUP (ORDER BY duration_min)::numeric,2)::text FROM valid_sessions UNION ALL SELECT 'current_monitoring_sessions', COUNT(*)::text FROM monitoring_session_activity UNION ALL SELECT 'current_monitoring_distinct_users', COUNT(DISTINCT user_id)::text FROM monitoring_session_activity ;Date: 2026-06-09 16:33:17 Database: zemm_produktiv_8 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
6 1 ERROR: invalid UNION/INTERSECT/EXCEPT ORDER BY clause
Times Reported Most Frequent Error / Event #6
Day Hour Count Jun 09 14 1 - ERROR: invalid UNION/INTERSECT/EXCEPT ORDER BY clause
Detail: Only result column names can be used, not expressions or functions.
Hint: Add the expression/function to every SELECT, or move the UNION into a FROM clause.
Statement: WITH normalized AS ( SELECT CASE active WHEN TRUE THEN 'aktiv' WHEN FALSE THEN 'inaktiv' ELSE 'active NULL' END AS active_status, CASE deleted WHEN TRUE THEN 'geloescht' WHEN FALSE THEN 'nicht geloescht' ELSE 'deleted NULL' END AS deleted_status, count(*) AS cnt FROM strains GROUP BY active, deleted ), totals AS ( SELECT 'GESAMT' AS active_status, 'alle' AS deleted_status, count(*) AS cnt FROM strains ) SELECT active_status, deleted_status, cnt FROM normalized UNION ALL SELECT active_status, deleted_status, cnt FROM totals ORDER BY CASE active_status WHEN 'aktiv' THEN 1 WHEN 'inaktiv' THEN 2 WHEN 'active NULL' THEN 3 ELSE 4 END, CASE deleted_status WHEN 'nicht geloescht' THEN 1 WHEN 'geloescht' THEN 2 WHEN 'deleted NULL' THEN 3 ELSE 4 END;Date: 2026-06-09 13:44:25 Database: zemm_produktiv_8 Application: psql User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
7 1 FATAL: database "..." does not exist
Times Reported Most Frequent Error / Event #7
Day Hour Count Jun 09 11 1 - FATAL: database "zemm_produktiv_7" does not exist
Date: 2026-06-09 10:55:04 Database: zemm_produktiv_7 Application: psql SSL enabled (protocol=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384, bits=256) User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
8 1 ERROR: duplicate key value violates unique constraint "..."
Times Reported Most Frequent Error / Event #8
Day Hour Count Jun 09 22 1 - ERROR: duplicate key value violates unique constraint "metrics_timeseries_tenant_key_metric_name_bucket_start_buck_key"
Detail: Key (tenant_key, metric_name, bucket_start, bucket_width_seconds)=(live, http_requests_total, 2026-06-09 21:44:00+02, 60) already exists.
Statement: INSERT INTO observability.metrics_timeseries (tenant_key, metric_name, bucket_start, bucket_width_seconds, sum_value, count_value, histogram) VALUES ($1, $2, $3, $4, $5, $6, $7)Date: 2026-06-09 21:44:02 Database: zemm_monitoring Application: User: labanimal Remote: Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv
9 1 LOG: database system was shut down at ...
Times Reported Most Frequent Error / Event #9
Day Hour Count Jun 09 07 1 - LOG: database system was shut down at 2026-06-09 06:12:50 CEST
Date: 2026-06-09 06:12:51 Log file: /var/log/postgresql/postgresql-2026-06-09_061251.csv