Mercurial > prosody-modules
annotate mod_traceback/mod_traceback.lua @ 3842:501c7edc8c37
mod_rest: Encode errors as JSON
This applies to *all* errors in the entire HTTP server, which might be a
bit awkward.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Wed, 15 Jan 2020 21:38:03 +0100 |
| parents | 7a4e8dbbd30d |
| children | dde9d21a599f |
| 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 |
