[PG-644] Add option to disable application name tracking (#469)
* Cache application name for every backed instance * Improve pg_get_backend_status performance for PG16 and PG17 * Fix * Make application_name tracking disabled by default * Meke app name tracking opt-out * Format newly added code with pgindent * Fix build for PG17 * Fixpull/403/head^2
parent
16ec8362e2
commit
d7999f1acf
13
guc.c
13
guc.c
|
@ -33,6 +33,7 @@ bool pgsm_enable_query_plan;
|
||||||
bool pgsm_enable_overflow;
|
bool pgsm_enable_overflow;
|
||||||
bool pgsm_normalized_query;
|
bool pgsm_normalized_query;
|
||||||
bool pgsm_track_utility;
|
bool pgsm_track_utility;
|
||||||
|
bool pgsm_track_application_names;
|
||||||
bool pgsm_enable_pgsm_query_id;
|
bool pgsm_enable_pgsm_query_id;
|
||||||
int pgsm_track;
|
int pgsm_track;
|
||||||
static int pgsm_overflow_target; /* Not used since 2.0 */
|
static int pgsm_overflow_target; /* Not used since 2.0 */
|
||||||
|
@ -190,6 +191,18 @@ init_guc(void)
|
||||||
NULL /* show_hook */
|
NULL /* show_hook */
|
||||||
);
|
);
|
||||||
|
|
||||||
|
DefineCustomBoolVariable("pg_stat_monitor.pgsm_track_application_names", /* name */
|
||||||
|
"Enable/Disable application names tracking.", /* short_desc */
|
||||||
|
NULL, /* long_desc */
|
||||||
|
&pgsm_track_application_names, /* value address */
|
||||||
|
true, /* boot value */
|
||||||
|
PGC_USERSET, /* context */
|
||||||
|
0, /* flags */
|
||||||
|
NULL, /* check_hook */
|
||||||
|
NULL, /* assign_hook */
|
||||||
|
NULL /* show_hook */
|
||||||
|
);
|
||||||
|
|
||||||
DefineCustomBoolVariable("pg_stat_monitor.pgsm_enable_pgsm_query_id", /* name */
|
DefineCustomBoolVariable("pg_stat_monitor.pgsm_enable_pgsm_query_id", /* name */
|
||||||
"Enable/disable PGSM specific query id calculation which is very useful in comparing same query across databases and clusters..", /* short_desc */
|
"Enable/disable PGSM specific query id calculation which is very useful in comparing same query across databases and clusters..", /* short_desc */
|
||||||
NULL, /* long_desc */
|
NULL, /* long_desc */
|
||||||
|
|
|
@ -43,7 +43,7 @@ PG_MODULE_MAGIC;
|
||||||
#define PG_STAT_MONITOR_COLS_V1_0 52
|
#define PG_STAT_MONITOR_COLS_V1_0 52
|
||||||
#define PG_STAT_MONITOR_COLS_V2_0 64
|
#define PG_STAT_MONITOR_COLS_V2_0 64
|
||||||
#define PG_STAT_MONITOR_COLS_V2_1 70
|
#define PG_STAT_MONITOR_COLS_V2_1 70
|
||||||
#define PG_STAT_MONITOR_COLS PG_STAT_MONITOR_COLS_V2_0 /* maximum of above */
|
#define PG_STAT_MONITOR_COLS PG_STAT_MONITOR_COLS_V2_1 /* maximum of above */
|
||||||
|
|
||||||
#define PGSM_TEXT_FILE PGSTAT_STAT_PERMANENT_DIRECTORY "pg_stat_monitor_query"
|
#define PGSM_TEXT_FILE PGSTAT_STAT_PERMANENT_DIRECTORY "pg_stat_monitor_query"
|
||||||
|
|
||||||
|
@ -106,8 +106,8 @@ static struct rusage rusage_start;
|
||||||
static struct rusage rusage_end;
|
static struct rusage rusage_end;
|
||||||
|
|
||||||
/* Application name and length; set each time when an entry is created locally */
|
/* Application name and length; set each time when an entry is created locally */
|
||||||
char app_name[APPLICATIONNAME_LEN];
|
static char app_name[APPLICATIONNAME_LEN];
|
||||||
int app_name_len;
|
static int app_name_len;
|
||||||
|
|
||||||
|
|
||||||
/* Query buffer, store queries' text. */
|
/* Query buffer, store queries' text. */
|
||||||
|
@ -1334,6 +1334,12 @@ pgsm_hash_string(const char *str, int len)
|
||||||
static PgBackendStatus *
|
static PgBackendStatus *
|
||||||
pg_get_backend_status(void)
|
pg_get_backend_status(void)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
#if PG_VERSION_NUM >= 170000
|
||||||
|
return pgstat_get_beentry_by_proc_number(MyProcPid);
|
||||||
|
#elif PG_VERSION_NUM >= 160000
|
||||||
|
return &(pgstat_get_local_beentry_by_backend_id(MyBackendId)->backendStatus);
|
||||||
|
#else
|
||||||
LocalPgBackendStatus *local_beentry;
|
LocalPgBackendStatus *local_beentry;
|
||||||
int num_backends = pgstat_fetch_stat_numbackends();
|
int num_backends = pgstat_fetch_stat_numbackends();
|
||||||
int i;
|
int i;
|
||||||
|
@ -1341,11 +1347,8 @@ pg_get_backend_status(void)
|
||||||
for (i = 1; i <= num_backends; i++)
|
for (i = 1; i <= num_backends; i++)
|
||||||
{
|
{
|
||||||
PgBackendStatus *beentry;
|
PgBackendStatus *beentry;
|
||||||
#if PG_VERSION_NUM < 160000
|
|
||||||
local_beentry = pgstat_fetch_stat_local_beentry(i);
|
local_beentry = pgstat_fetch_stat_local_beentry(i);
|
||||||
#else
|
|
||||||
local_beentry = pgstat_get_local_beentry_by_index(i);
|
|
||||||
#endif
|
|
||||||
if (!local_beentry)
|
if (!local_beentry)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -1355,6 +1358,8 @@ pg_get_backend_status(void)
|
||||||
return beentry;
|
return beentry;
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1531,7 +1536,7 @@ pgsm_update_entry(pgsmEntry * entry,
|
||||||
/* Only should process this once when storing the data */
|
/* Only should process this once when storing the data */
|
||||||
if (kind == PGSM_STORE)
|
if (kind == PGSM_STORE)
|
||||||
{
|
{
|
||||||
if (app_name_len > 0 && !e->counters.info.application_name[0])
|
if (pgsm_track_application_names && app_name_len > 0 && !e->counters.info.application_name[0])
|
||||||
_snprintf(e->counters.info.application_name, app_name, app_name_len + 1, APPLICATIONNAME_LEN);
|
_snprintf(e->counters.info.application_name, app_name, app_name_len + 1, APPLICATIONNAME_LEN);
|
||||||
|
|
||||||
e->counters.info.num_relations = num_relations;
|
e->counters.info.num_relations = num_relations;
|
||||||
|
@ -1787,7 +1792,6 @@ pgsm_create_hash_entry(uint64 bucket_id, uint64 queryid, PlanInfo * plan_info)
|
||||||
pgsmEntry *entry;
|
pgsmEntry *entry;
|
||||||
int sec_ctx;
|
int sec_ctx;
|
||||||
bool found_client_addr = false;
|
bool found_client_addr = false;
|
||||||
char *app_name_ptr = app_name;
|
|
||||||
MemoryContext oldctx;
|
MemoryContext oldctx;
|
||||||
char *datname = NULL;
|
char *datname = NULL;
|
||||||
char *username = NULL;
|
char *username = NULL;
|
||||||
|
@ -1802,9 +1806,12 @@ pgsm_create_hash_entry(uint64 bucket_id, uint64 queryid, PlanInfo * plan_info)
|
||||||
*/
|
*/
|
||||||
GetUserIdAndSecContext((Oid *) &entry->key.userid, &sec_ctx);
|
GetUserIdAndSecContext((Oid *) &entry->key.userid, &sec_ctx);
|
||||||
|
|
||||||
|
if (pgsm_track_application_names)
|
||||||
|
{
|
||||||
/* Get the application name and set appid */
|
/* Get the application name and set appid */
|
||||||
app_name_len = pg_get_application_name(app_name, APPLICATIONNAME_LEN);
|
app_name_len = pg_get_application_name(app_name, APPLICATIONNAME_LEN);
|
||||||
entry->key.appid = pgsm_hash_string((const char *) app_name_ptr, app_name_len);
|
entry->key.appid = pgsm_hash_string((const char *) app_name, app_name_len);
|
||||||
|
}
|
||||||
|
|
||||||
/* client address */
|
/* client address */
|
||||||
if (!pgsm_client_ip_is_valid())
|
if (!pgsm_client_ip_is_valid())
|
||||||
|
|
|
@ -521,6 +521,7 @@ extern bool pgsm_enable_query_plan;
|
||||||
extern bool pgsm_enable_overflow;
|
extern bool pgsm_enable_overflow;
|
||||||
extern bool pgsm_normalized_query;
|
extern bool pgsm_normalized_query;
|
||||||
extern bool pgsm_track_utility;
|
extern bool pgsm_track_utility;
|
||||||
|
extern bool pgsm_track_application_names;
|
||||||
extern bool pgsm_enable_pgsm_query_id;
|
extern bool pgsm_enable_pgsm_query_id;
|
||||||
extern int pgsm_track;
|
extern int pgsm_track;
|
||||||
|
|
||||||
|
|
|
@ -24,4 +24,32 @@ SELECT pg_stat_monitor_reset();
|
||||||
|
|
||||||
(1 row)
|
(1 row)
|
||||||
|
|
||||||
|
SELECT 1 AS num;
|
||||||
|
num
|
||||||
|
-----
|
||||||
|
1
|
||||||
|
(1 row)
|
||||||
|
|
||||||
|
SET pg_stat_monitor.pgsm_track_application_names='no';
|
||||||
|
SELECT 1 AS num;
|
||||||
|
num
|
||||||
|
-----
|
||||||
|
1
|
||||||
|
(1 row)
|
||||||
|
|
||||||
|
SELECT query,application_name FROM pg_stat_monitor ORDER BY query, application_name COLLATE "C";
|
||||||
|
query | application_name
|
||||||
|
-------------------------------------------------------+-----------------------------
|
||||||
|
SELECT 1 AS num | pg_regress/application_name
|
||||||
|
SELECT 1 AS num |
|
||||||
|
SELECT pg_stat_monitor_reset() | pg_regress/application_name
|
||||||
|
SET pg_stat_monitor.pgsm_track_application_names='no' |
|
||||||
|
(4 rows)
|
||||||
|
|
||||||
|
SELECT pg_stat_monitor_reset();
|
||||||
|
pg_stat_monitor_reset
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
(1 row)
|
||||||
|
|
||||||
DROP EXTENSION pg_stat_monitor;
|
DROP EXTENSION pg_stat_monitor;
|
||||||
|
|
|
@ -17,7 +17,7 @@ ORDER
|
||||||
BY name
|
BY name
|
||||||
COLLATE "C";
|
COLLATE "C";
|
||||||
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
||||||
-------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
----------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
||||||
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
||||||
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
||||||
|
@ -33,8 +33,9 @@ COLLATE "C";
|
||||||
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
||||||
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
||||||
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
||||||
|
pg_stat_monitor.pgsm_track_application_names | on | | user | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_track_planning | off | | user | bool | default | | | | off | off | f
|
pg_stat_monitor.pgsm_track_planning | off | | user | bool | default | | | | off | off | f
|
||||||
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
||||||
(17 rows)
|
(18 rows)
|
||||||
|
|
||||||
DROP EXTENSION pg_stat_monitor;
|
DROP EXTENSION pg_stat_monitor;
|
||||||
|
|
|
@ -17,7 +17,7 @@ ORDER
|
||||||
BY name
|
BY name
|
||||||
COLLATE "C";
|
COLLATE "C";
|
||||||
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
||||||
-------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
----------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
||||||
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
||||||
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
||||||
|
@ -33,7 +33,8 @@ COLLATE "C";
|
||||||
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
||||||
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
||||||
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
||||||
|
pg_stat_monitor.pgsm_track_application_names | on | | user | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
||||||
(16 rows)
|
(17 rows)
|
||||||
|
|
||||||
DROP EXTENSION pg_stat_monitor;
|
DROP EXTENSION pg_stat_monitor;
|
||||||
|
|
|
@ -17,7 +17,7 @@ ORDER
|
||||||
BY name
|
BY name
|
||||||
COLLATE "C";
|
COLLATE "C";
|
||||||
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
||||||
-------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
----------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
||||||
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
||||||
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
||||||
|
@ -33,7 +33,8 @@ COLLATE "C";
|
||||||
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
||||||
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
||||||
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
||||||
|
pg_stat_monitor.pgsm_track_application_names | on | | user | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
||||||
(16 rows)
|
(17 rows)
|
||||||
|
|
||||||
DROP EXTENSION pg_stat_monitor;
|
DROP EXTENSION pg_stat_monitor;
|
||||||
|
|
|
@ -1,6 +1,14 @@
|
||||||
CREATE EXTENSION pg_stat_monitor;
|
CREATE EXTENSION pg_stat_monitor;
|
||||||
SELECT pg_stat_monitor_reset();
|
SELECT pg_stat_monitor_reset();
|
||||||
|
|
||||||
SELECT 1 AS num;
|
SELECT 1 AS num;
|
||||||
SELECT query,application_name FROM pg_stat_monitor ORDER BY query COLLATE "C";
|
SELECT query,application_name FROM pg_stat_monitor ORDER BY query COLLATE "C";
|
||||||
SELECT pg_stat_monitor_reset();
|
SELECT pg_stat_monitor_reset();
|
||||||
|
|
||||||
|
SELECT 1 AS num;
|
||||||
|
SET pg_stat_monitor.pgsm_track_application_names='no';
|
||||||
|
SELECT 1 AS num;
|
||||||
|
SELECT query,application_name FROM pg_stat_monitor ORDER BY query, application_name COLLATE "C";
|
||||||
|
SELECT pg_stat_monitor_reset();
|
||||||
|
|
||||||
DROP EXTENSION pg_stat_monitor;
|
DROP EXTENSION pg_stat_monitor;
|
||||||
|
|
|
@ -7,7 +7,7 @@ SELECT pg_stat_monitor_reset();
|
||||||
|
|
||||||
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
||||||
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
||||||
-------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
----------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
||||||
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
||||||
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
||||||
|
@ -23,9 +23,10 @@ SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals
|
||||||
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
||||||
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
||||||
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
||||||
|
pg_stat_monitor.pgsm_track_application_names | on | | user | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_track_planning | off | | user | bool | default | | | | off | off | f
|
pg_stat_monitor.pgsm_track_planning | off | | user | bool | default | | | | off | off | f
|
||||||
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
||||||
(17 rows)
|
(18 rows)
|
||||||
|
|
||||||
SELECT datname, substr(query,0,100) AS query, calls FROM pg_stat_monitor ORDER BY datname, query, calls DESC Limit 20;
|
SELECT datname, substr(query,0,100) AS query, calls FROM pg_stat_monitor ORDER BY datname, query, calls DESC Limit 20;
|
||||||
datname | query | calls
|
datname | query | calls
|
||||||
|
@ -36,7 +37,7 @@ SELECT datname, substr(query,0,100) AS query, calls FROM pg_stat_monitor ORDER B
|
||||||
|
|
||||||
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
||||||
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
||||||
-------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
----------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
||||||
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
||||||
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
||||||
|
@ -52,9 +53,10 @@ SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals
|
||||||
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
||||||
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
||||||
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
||||||
|
pg_stat_monitor.pgsm_track_application_names | on | | user | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_track_planning | off | | user | bool | default | | | | off | off | f
|
pg_stat_monitor.pgsm_track_planning | off | | user | bool | default | | | | off | off | f
|
||||||
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
||||||
(17 rows)
|
(18 rows)
|
||||||
|
|
||||||
SELECT pg_stat_monitor_reset();
|
SELECT pg_stat_monitor_reset();
|
||||||
pg_stat_monitor_reset
|
pg_stat_monitor_reset
|
||||||
|
|
|
@ -7,7 +7,7 @@ SELECT pg_stat_monitor_reset();
|
||||||
|
|
||||||
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
||||||
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
||||||
-------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
----------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
||||||
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
||||||
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
||||||
|
@ -23,8 +23,9 @@ SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals
|
||||||
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
||||||
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
||||||
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
||||||
|
pg_stat_monitor.pgsm_track_application_names | on | | user | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
||||||
(16 rows)
|
(17 rows)
|
||||||
|
|
||||||
SELECT datname, substr(query,0,100) AS query, calls FROM pg_stat_monitor ORDER BY datname, query, calls DESC Limit 20;
|
SELECT datname, substr(query,0,100) AS query, calls FROM pg_stat_monitor ORDER BY datname, query, calls DESC Limit 20;
|
||||||
datname | query | calls
|
datname | query | calls
|
||||||
|
@ -35,7 +36,7 @@ SELECT datname, substr(query,0,100) AS query, calls FROM pg_stat_monitor ORDER B
|
||||||
|
|
||||||
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, pending_restart FROM pg_settings WHERE name LIKE '%pg_stat_monitor%';
|
||||||
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
name | setting | unit | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | pending_restart
|
||||||
-------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
----------------------------------------------+---------+------+------------+---------+---------+---------+------------+----------------+----------+-----------+-----------------
|
||||||
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
pg_stat_monitor.pgsm_bucket_time | 60 | s | postmaster | integer | default | 1 | 2147483647 | | 60 | 60 | f
|
||||||
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_overflow | on | | postmaster | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_enable_pgsm_query_id | on | | user | bool | default | | | | on | on | f
|
||||||
|
@ -51,8 +52,9 @@ SELECT name, setting, unit, context, vartype, source, min_val, max_val, enumvals
|
||||||
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
pg_stat_monitor.pgsm_query_max_len | 2048 | | postmaster | integer | default | 1024 | 2147483647 | | 2048 | 2048 | f
|
||||||
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
pg_stat_monitor.pgsm_query_shared_buffer | 20 | MB | postmaster | integer | default | 1 | 10000 | | 20 | 20 | f
|
||||||
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
pg_stat_monitor.pgsm_track | top | | user | enum | default | | | {none,top,all} | top | top | f
|
||||||
|
pg_stat_monitor.pgsm_track_application_names | on | | user | bool | default | | | | on | on | f
|
||||||
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
pg_stat_monitor.pgsm_track_utility | on | | user | bool | default | | | | on | on | f
|
||||||
(16 rows)
|
(17 rows)
|
||||||
|
|
||||||
SELECT pg_stat_monitor_reset();
|
SELECT pg_stat_monitor_reset();
|
||||||
pg_stat_monitor_reset
|
pg_stat_monitor_reset
|
||||||
|
|
Loading…
Reference in New Issue