aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/mod_debug_sql.lua
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2016-02-21 19:29:31 +0100
committerKim Alvefur <zash@zash.se>2016-02-21 19:29:31 +0100
commit71d2dced8dd98ce1b1bf67e2ebbae981cf85287c (patch)
treee41e94e9210400187a3b597bc1ffb0fa20b0fd0f /plugins/mod_debug_sql.lua
parent70c1c2a643db61dbc65b4bf77996e8337d8612ed (diff)
downloadprosody-71d2dced8dd98ce1b1bf67e2ebbae981cf85287c.tar.gz
prosody-71d2dced8dd98ce1b1bf67e2ebbae981cf85287c.zip
mod_debug_sql: Small plugin that enables raw SQL query logging (for debugging)
Diffstat (limited to 'plugins/mod_debug_sql.lua')
-rw-r--r--plugins/mod_debug_sql.lua25
1 files changed, 25 insertions, 0 deletions
diff --git a/plugins/mod_debug_sql.lua b/plugins/mod_debug_sql.lua
new file mode 100644
index 00000000..7bbbbd88
--- /dev/null
+++ b/plugins/mod_debug_sql.lua
@@ -0,0 +1,25 @@
+-- Enables SQL query logging
+--
+-- luacheck: ignore 213/uri
+
+local engines = module:shared("/*/sql/connections");
+
+for uri, engine in pairs(engines) do
+ engine:debug(true);
+end
+
+setmetatable(engines, {
+ __newindex = function (t, uri, engine)
+ engine:debug(true);
+ rawset(t, uri, engine);
+ end
+});
+
+function module.unload()
+ setmetatable(engines, nil);
+ for uri, engine in pairs(engines) do
+ engine:debug(false);
+ end
+end
+
+