Mercurial > prosody-modules
annotate mod_http_libjs/mod_http_libjs.lua @ 4877:adc6241e5d16
mod_measure_process: Report the enforced limit
The soft limit is what the kernel actually enforces, while the hard
limit is is how far you can change the soft limit without privileges.
Unless the process dynamically adjusts the soft limit, knowing the hard
limit is not as useful as knowing the soft limit.
Reporting the soft limit and the number of in-use FDs allows placing
alerts on expressions like 'process_open_fds / process_max_fds >= 0.95'
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Tue, 18 Jan 2022 18:55:20 +0100 |
parents | f0efbb0b0b5b |
children | 75b6e5df65f9 |
rev | line source |
---|---|
4087
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 local mime_map = module:shared("/*/http_files/mime").types or { |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 css = "text/css", |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 js = "application/javascript", |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 }; |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 |
4095
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
6 local serve; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
7 if not pcall(function () |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
8 local http_files = require "net.http.files"; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
9 serve = http_files.serve; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
10 end) then |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
11 serve = module:depends"http_files".serve; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
12 end |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
13 |
4087
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 local libjs_path = module:get_option_string("libjs_path", "/usr/share/javascript"); |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 |
4604
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
16 do -- sanity check |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
17 local lfs = require "lfs"; |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
18 |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
19 local exists, err = lfs.attributes(libjs_path, "mode"); |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
20 if exists ~= "directory" then |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
21 module:log("error", "Problem with 'libjs_path': %s", err or "not a directory"); |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
22 end |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
23 end |
f0efbb0b0b5b
mod_http_libjs: Check that the path to serve exists
Kim Alvefur <zash@zash.se>
parents:
4095
diff
changeset
|
24 |
4087
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
25 module:provides("http", { |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
26 default_path = "/share"; |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
27 route = { |
4095
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4087
diff
changeset
|
28 ["GET /*"] = serve({ path = libjs_path, mime_map = mime_map }); |
4087
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
29 } |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
30 }); |