annotate mod_statistics_cputotal/mod_statistics_cputotal.lua @ 5381:32a9817c7516

mod_firewall: Initialize compiled chunk just once for all handlers This should fix a case where some stateful dependencies (such as throttles) produce separate instances for every call to new_handler(), leading to surprising behaviour (e.g. rules executed via JUMP CHAIN vs ::deliver would have separate rate limits). This also adds better error handling in case the compiled code fails to run for some reason.
author Matthew Wild <mwild1@gmail.com>
date Fri, 28 Apr 2023 13:27:06 +0100
parents 4557ac5c205d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1378
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 -- Provides total CPU time, useful for DERIVE
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2
1386
4557ac5c205d mod_statistics_cputotal: Make global
Kim Alvefur <zash@zash.se>
parents: 1378
diff changeset
3 module:set_global();
4557ac5c205d mod_statistics_cputotal: Make global
Kim Alvefur <zash@zash.se>
parents: 1378
diff changeset
4
1378
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 module:provides("statistics", {
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 statistics = {
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 cpu_total = { -- milliseconds of CPU time used
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 get = function()
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 return os.clock() * 1000;
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 end
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 }
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 }
aa371405db34 mod_statistics_cputotal: Module that collects accumulated CPU usage statistics
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 });