Commit graph

83 commits

Author SHA1 Message Date
emanuele-f
b1257cf3a4 Don't reuse Lua vm in Windows
Should address #3595
2020-03-20 13:01:21 +01:00
Luca Deri
49c80c4615 Win changes 2020-03-20 09:50:36 +01:00
Simone Mainardi
7b4bdfcf4a Fixes multiple schedules of delayed periodic activities 2020-03-06 14:48:50 +01:00
emanuele-f
c17ddb486e Ensure monotonic time in uSecDiffPeriodicActivityBody 2020-03-05 17:09:40 +01:00
emanuele-f
1c7dabf247 Pass current periodic activity time from C
This prevents possible inconsistencies between the C and lua time
2020-03-05 17:09:40 +01:00
Simone Mainardi
f3a8efdf73 Fixes certain periodicity calculations and adjust to localtime
Additional fix for #3512
2020-03-05 13:03:37 +01:00
Simone Mainardi
8d8cf6678e Fixes periodic scripts start time with certain timezones
Fixes #3512
Partially addresses #351
2020-03-05 12:26:41 +01:00
Simone Mainardi
1e82eb073b Adds and enforces periodic activities max duration
Implements #3477
2020-03-02 19:09:54 +01:00
Simone Mainardi
a288bbf40c Adds experimental RRD write queue 2020-02-28 19:47:44 +01:00
Luca Deri
517184c2aa Reworked thread pool assignment 2020-02-26 08:28:10 +01:00
Simone Mainardi
55cdb6c5ea Reworks slow rrd calc for periodic activites 2020-02-25 13:30:10 +01:00
emanuele-f
3cd4532b3e Improve periodic activities flags logic 2020-02-25 11:21:47 +01:00
emanuele-f
bd803e9ce2 Improve slow activity message 2020-02-24 15:35:39 +01:00
emanuele-f
72d8270084 Fix missing slow periodic activity warning when deadline is exceeded 2020-02-24 14:46:55 +01:00
Simone Mainardi
c82455b921 Adds total counters for slow and not executed periodic activities 2020-02-24 10:17:44 +01:00
emanuele-f
a428bb665f Add work completion indicator to ht_stats/stats/5min dump 2020-02-21 17:43:07 +01:00
emanuele-f
53c032f9f6 Add expected start/end time columns 2020-02-21 13:35:17 +01:00
Simone Mainardi
d1f11c7de7 Implements slow and not executed periodic activity alerts 2020-02-21 13:29:20 +01:00
emanuele-f
4944556992 Do not execute timeseries.lua if the driver is not InfluxDB 2020-02-21 12:08:07 +01:00
emanuele-f
96299661b3 Implement periodic activities status monitor 2020-02-20 16:59:11 +01:00
Simone Mainardi
4d07357f3c Shows second.lua stats under system 2020-02-20 16:34:29 +01:00
Simone Mainardi
3f735c01a8 Implements periodic activites last queued time 2020-02-20 16:05:29 +01:00
Simone Mainardi
133f9e80bb Implements sleeping/queued/running states for threaded activities 2020-02-20 15:48:41 +01:00
Simone Mainardi
1cd375d756 Implements per-activity rrd writes duration 2020-02-19 15:34:29 +01:00
Simone Mainardi
214d9185d4 Implements variable deadlines depending on script periodicities 2020-02-18 19:27:57 +01:00
Simone Mainardi
0e64fd94d6 Implements deadlines for periodic and user scripts 2020-02-18 18:44:41 +01:00
Simone Mainardi
7f449f8e64 Implements deadline-related ntopng methods 2020-02-18 15:47:28 +01:00
Simone Mainardi
583c34ea02 Fixes race conditions in ThreadPool enqueue/dequeue 2020-02-17 17:49:58 +01:00
Simone Mainardi
95bd9ace07 Implements duration stats for system periodic activities 2020-02-17 14:39:58 +01:00
Simone Mainardi
acffd2ea6f Adds in-progress stats to periodic activities
Attempts to add additional info for #3377
2020-02-13 17:02:51 +01:00
Simone Mainardi
6542516d27 System interface threaded activity fixes 2020-02-13 15:38:02 +01:00
Simone Mainardi
4134aa4e34 Fixes unhandled failing system tasks 2020-02-13 12:31:47 +01:00
Simone Mainardi
7d00041378 Fixes failing periodic activities to stay in an inconsistent state
Fix (tentative) for #3377
2020-02-12 12:27:38 +01:00
Luca Deri
57e6a93065 Improved scheduling algorithm to guarantee minimum service time when number of entries allow
Updated (C)
2020-01-06 23:36:36 +01:00
emanuele-f
458a773a93 Refactor internal scripts for cleaner code 2019-12-31 16:53:32 +01:00
emanuele-f
248e41d977 Fix scripts duration when LuaReusableEngine is used 2019-12-24 23:47:12 +01:00
emanuele-f
c74fa6e908 Implement reusable lua engine
The same Lua vm is now reused. After 5 minutes the vm is destroyed and
reloaded to prevent memory to grow too much. inotify is used to detected
changes in the filesystem (partially implemented, must implement a recursive
watch)

This optimizes periodic scripts calls by a 10x factor.
2019-12-24 18:35:58 +01:00
Simone Mainardi
c2ec640c3d Minor cleanup 2019-11-21 12:55:26 +01:00
Simone Mainardi
ff09e5b61f Allows flow lua scripts to be run on pcap dump interfaces 2019-11-21 12:53:25 +01:00
Simone Mainardi
9cb566ed41 Computes lua scripts deadlines in C to prevent missing scheduled activities 2019-11-19 13:02:13 +01:00
emanuele-f
d44dad6f31 Fix shutdown crash in PeriodicActivities
A use-after-free occurred since ThreadedActivity where destroyed while their task was possibly
still running into the ThreadPool thread.
2019-11-06 11:46:22 +01:00
emanuele-f
c6a87fbc69 Little fix to avoid possible race 2019-11-04 12:47:47 +01:00
emanuele-f
94643f1fe1 Fix system script concurrent run
Multiple instances of the housekeeping and timeseries scripts were launched
since commit 84bf948f0f .

Fixes #3035
2019-11-04 12:42:26 +01:00
Luca Deri
64e33a2018 Fixed script execution for pcap interfaces 2019-11-01 15:34:18 +01:00
Luca Deri
84bf948f0f Reworked thread handling policy 2019-11-01 12:15:08 +01:00
Luca Deri
aee1b3defb Split threaded activities in high and standard priority tasks 2019-11-01 11:03:56 +01:00
Simone Mainardi
5b4c31718f Handles threaded activities stats for up to MAX_NUM_INTERFACE_IDS
Fixes #3027
2019-10-30 15:53:13 +01:00
Simone Mainardi
09b5ec032f View interfaces updates and comments 2019-10-30 11:58:05 +01:00
Simone Mainardi
e8277e46ff Reworks view interfaces implementation 2019-10-30 11:47:56 +01:00
Simone Mainardi
dc748b1b6d Implements stats for periodic scripts duration 2019-10-28 17:10:03 +01:00