profiling: add option to active rules profiling at start

When replaying a pcap file, it is not possible to get rules
profiling because it has to be activated from the unix socket.
This patch adds a new option to be able to activate profiling
collection at start so a pcap run can get rules profiling
information.
pull/11309/head
Eric Leblond 1 year ago committed by Victor Julien
parent bd9608771e
commit eecb3440e2

@ -1432,6 +1432,7 @@ void SCProfilingInit(void)
SC_ATOMIC_INIT(profiling_rules_active); SC_ATOMIC_INIT(profiling_rules_active);
SC_ATOMIC_INIT(samples); SC_ATOMIC_INIT(samples);
intmax_t rate_v = 0; intmax_t rate_v = 0;
ConfNode *conf;
(void)ConfGetInt("profiling.sample-rate", &rate_v); (void)ConfGetInt("profiling.sample-rate", &rate_v);
if (rate_v > 0 && rate_v < INT_MAX) { if (rate_v > 0 && rate_v < INT_MAX) {
@ -1448,6 +1449,11 @@ void SCProfilingInit(void)
else else
SCLogInfo("profiling runs for every packet"); SCLogInfo("profiling runs for every packet");
} }
conf = ConfGetNode("profiling.rules");
if (ConfNodeChildValueIsTrue(conf, "active")) {
SC_ATOMIC_SET(profiling_rules_active, 1);
}
} }
/* see if we want to profile rules for this packet */ /* see if we want to profile rules for this packet */

@ -1810,6 +1810,10 @@ profiling:
enabled: yes enabled: yes
filename: rule_perf.log filename: rule_perf.log
append: yes append: yes
# Set active to yes to enable rules profiling at start
# if set to no (default), the rules profiling will have to be started
# via unix socket commands.
#active:no
# Sort options: ticks, avgticks, checks, matches, maxticks # Sort options: ticks, avgticks, checks, matches, maxticks
# If commented out all the sort options will be used. # If commented out all the sort options will be used.

Loading…
Cancel
Save