summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Wong <mark.wong@myemma.com>2013-04-19 11:00:34 -0700
committerMark Wong <markwkm@gmail.com>2013-04-19 18:16:03 -0700
commitfb92cdd1c70b527ccb6091f327e0e75a0b194eea (patch)
tree17abe3ac52b7944427f7c2729bd00326ac6045cd
parent827644ad7b44fce3a4073ab67a3f30bb112b6f8a (diff)
Display current query with remote monitoring
Add logic to the remote machine code to be able to toggle the display of the current query.
-rw-r--r--machine/m_remote.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/machine/m_remote.c b/machine/m_remote.c
index 78c19a5..6f3e2ce 100644
--- a/machine/m_remote.c
+++ b/machine/m_remote.c
@@ -32,6 +32,13 @@
" syscr, syscw, reads, writes, cwrites\n" \
"FROM pg_proctab()"
+#define QUERY_PROCTAB_QUERY \
+ "SELECT a.pid, comm, query, a.state, utime, stime, priority, nice,\n" \
+ " starttime, vsize, rss, uid, username, rchar, wchar,\n" \
+ " syscr, syscw, reads, writes, cwrites\n" \
+ "FROM pg_proctab() a LEFT OUTER JOIN pg_stat_activity b\n" \
+ " ON a.pid = b.pid"
+
#define QUERY_PG_PROC \
"SELECT COUNT(*)\n" \
"FROM pg_catalog.pg_proc\n" \
@@ -590,7 +597,14 @@ get_process_info_r(struct system_info *si, struct process_select *sel,
pgconn = connect_to_db(conninfo);
if (pgconn != NULL)
{
- pgresult = PQexec(pgconn, QUERY_PROCTAB);
+ if (sel->fullcmd == 2)
+ {
+ pgresult = PQexec(pgconn, QUERY_PROCTAB_QUERY);
+ }
+ else
+ {
+ pgresult = PQexec(pgconn, QUERY_PROCTAB);
+ }
rows = PQntuples(pgresult);
}
else