Annotate

mod_traceback/mod_traceback.lua @ 4542:fb4a50bf60f1

mod_prometheus: Invoke stats collection if in 'manual' mode Since 10d13e0554f9 a special value for statistics_interval "manual" exists, where a module is expected to invoke processing in connection to collection of stats. This makes internal collection and exporting to Prometheus happens at the same time with no chance of timers getting out of sync.
author Kim Alvefur <zash@zash.se>
date Tue, 13 Apr 2021 23:53:53 +0200
parent 2773:7a4e8dbbd30d
child 5875:dde9d21a599f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2773
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 module:set_global();
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 local traceback = require "util.debug".traceback;
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5 require"util.signal".signal(module:get_option_string(module.name, "SIGUSR1"), function ()
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
6 module:log("info", "Received SIGUSR1, writing traceback");
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7 local f = io.open(prosody.paths.data.."/traceback.txt", "a+");
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8 f:write(traceback(), "\n");
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
9 f:close();
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
10 end);
7a4e8dbbd30d mod_traceback: Write current stack trace to file on SIGUSR1
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11