diff options
author | Matthew Wild <mwild1@gmail.com> | 2016-07-27 15:05:54 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2016-07-27 15:05:54 +0100 |
commit | 52717fc086cb6453c0a5341c0cdc2d0cdba18b83 (patch) | |
tree | f9bc84d329f400068f3439ac86f1b62942f68eda | |
parent | 3a8e8da3dfd5635cbf67c9d9d1c768e07a53cee3 (diff) | |
parent | a5e5091b70b0b76d717bb387382b4be226e25f4c (diff) | |
download | prosody-52717fc086cb6453c0a5341c0cdc2d0cdba18b83.tar.gz prosody-52717fc086cb6453c0a5341c0cdc2d0cdba18b83.zip |
Merge 0.10->trunk
-rw-r--r-- | core/statsmanager.lua | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/core/statsmanager.lua b/core/statsmanager.lua index 9572f68d..19d5860e 100644 --- a/core/statsmanager.lua +++ b/core/statsmanager.lua @@ -56,15 +56,17 @@ if stats then end if stats_interval then - if stats.get_stats then - log("debug", "Statistics collection is enabled every %d seconds", stats_interval); + log("debug", "Statistics collection is enabled every %d seconds", stats_interval); - local mark_collection_start = measure("times", "stats.collection"); - local mark_processing_start = measure("times", "stats.processing"); + local mark_collection_start = measure("times", "stats.collection"); + local mark_processing_start = measure("times", "stats.processing"); - function collect() - local mark_collection_done = mark_collection_start(); - fire_event("stats-update"); + function collect() + local mark_collection_done = mark_collection_start(); + fire_event("stats-update"); + mark_collection_done(); + + if stats.get_stats then changed_stats, stats_extra = {}, {}; for stat_name, getter in pairs(stats.get_stats()) do local type, value, extra = getter(); @@ -77,17 +79,14 @@ if stats_interval then stats_extra[stat_name] = extra; end end - mark_collection_done(); local mark_processing_done = mark_processing_start(); fire_event("stats-updated", { stats = latest_stats, changed_stats = changed_stats, stats_extra = stats_extra }); mark_processing_done(); - return stats_interval; end - timer.add_task(stats_interval, collect); - prosody.events.add_handler("server-started", function () collect() end, -1); - else - log("error", "statistics_interval specified, but the selected statistics_provider (%s) does not support statistics collection", stats_provider_config or "internal"); + return stats_interval; end + timer.add_task(stats_interval, collect); + prosody.events.add_handler("server-started", function () collect() end, -1); end if not stats_interval and stats_provider == "util.statistics" then |