Victor Julien
d2a9ef2680
counters: rename unparsable SCPCAElem to StatsLocalCounter
10 years ago
Victor Julien
752f03e7a4
counters: remaining s/SCPerf/Stats/g
10 years ago
Victor Julien
4362d0a6e9
counters: s/SCPerfPrivateContext/StatsPrivateThreadContext/g
10 years ago
Victor Julien
628c3b1bc7
counters: s/SCPerfPublicContext/StatsPublicThreadContext/g
10 years ago
Victor Julien
7e70f136ec
counters: various renames and cleanups
10 years ago
Victor Julien
30cce2bd29
counters: s/SCPerfCounterSetUI64/StatsSetUI64/g
10 years ago
Victor Julien
1c0b4ee0ae
counters: s/SCPerfCounterIncr/StatsIncr/g
10 years ago
Victor Julien
8992275b0c
counters: s/SCPerfCounterAddUI64/StatsAddUI64/g
10 years ago
Victor Julien
60d9eb6790
counters: clean up defines
10 years ago
Victor Julien
1ef786e7cb
counters: rename register API calls
...
Also remove 'type' parameter which was always the same.
10 years ago
Victor Julien
23f17950bc
counters: pass per thread stats to output api
...
As well as the global (merged) stats.
10 years ago
Victor Julien
de82b6d31e
counters: rename widely used pctmi var to sts (stats thread store)
10 years ago
Victor Julien
60c5ad4649
counters: call global counters funcs
10 years ago
Victor Julien
33756abd87
counters: split API init
...
Split into early ctx initialization and post-config setup.
10 years ago
Victor Julien
d05eed3735
counters: start using Stats prefix
10 years ago
Victor Julien
f300ad253e
counters: simplify and speedup counters sync
10 years ago
Victor Julien
0478407833
counters: remove threadvars arg from SCPerfAddToClubbedTMTable
10 years ago
Victor Julien
2346a88db7
counters: remove thread module name from counters API
10 years ago
Victor Julien
06461e37da
counters: global counters registration
10 years ago
Victor Julien
b293a4b7d0
counters: remove unused description
10 years ago
Victor Julien
711cd7b59b
counters: merge counters from threads for output
...
Merge counters so the table contains combined values from counters
from each thread.
Use global counter id's, track them in a hash.
Rename SCPCAElem members
Fix and improve average counters
10 years ago
Victor Julien
7da657dc3d
counters: remove unused public API calls and make them private
10 years ago
Victor Julien
ac6e24c06a
counters: make SCPerfSetupPrivate a function
10 years ago
Victor Julien
799640f906
counters: make threadvars::perf_private_ctx static
...
Update SCPerfGetAllCountersArray and add a UT workaround.
10 years ago
Victor Julien
55cfab89e4
counters: SCPerfGetLocalCounterValue cleanup
...
Return u64, update arguments.
10 years ago
Victor Julien
e9b067c1eb
counters: make increment call take threadvars
...
This hides the implementation from the caller.
10 years ago
Victor Julien
9a8bff7d96
counters: threadvars s/sc_perf_pca/perf_private_ctx/g
10 years ago
Victor Julien
50bb995458
counters: rename threadvars public counters
10 years ago
Victor Julien
6ffbc3a362
counters: s/SCPerfContext/SCPerfPublicContext/g
10 years ago
Victor Julien
0a5ae1b403
counters: s/SCPerfCounterArray/SCPerfPrivateContext/g
...
Goal is to make it's purpose clear.
10 years ago
Victor Julien
9f584483be
counters: minor cleanups
10 years ago
Victor Julien
fb479902e4
threading: explain purpose of threadvars mucond
10 years ago
Victor Julien
bc2c7f462e
stats api: call thread deinit API functions
...
Thread deinit funcs weren't called. This meant the lua scripts 'deinit'
functions weren't called either.
11 years ago
Victor Julien
8b2dd81628
stats: stats threads don't need packet pools
11 years ago
Victor Julien
51a540c27e
stats: disable stats if no loggers are enabled
11 years ago
Victor Julien
a95c95f74c
stats: introduce global config
...
As the stats api calls the loggers at a global interval, the global
interval should be configured globally.
# global stats configuration
stats:
enabled: yes
# The interval field (in seconds) controls at what interval
# the loggers are invoked.
interval: 8
If this config isn't found, the old config will be supported.
11 years ago
Victor Julien
e98346b555
Introduce stats log API, convert existing output
...
Convert regular 'stats.log' output to this new API.
In addition to the current stats value, also give the last value. This
makes it easy to display the difference.
11 years ago
Ken Steele
28ccea51d3
Add error checking for pthread_setspecific() and pthread_key_create().
11 years ago
Jason Ish
fc2014ab40
Unregister for file rotation notification when a context is
...
de-initialized. Required for unix-socket mode where
contexts come and go.
11 years ago
Jason Ish
e1b97fed70
Add signal based file rotation for:
...
- alert debug log
- fast log
- stats log
- dns log
- drop log
- file log
- http log
- tls log
- eve/json log
11 years ago
Victor Julien
399246881d
counters: fix 2 scan-build warnings
...
counters.c:1069:13: warning: Potential leak of memory pointed to by 'temp'
SCMutexUnlock(&sc_perf_op_ctx->pctmi_lock);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./threads.h:121:28: note: expanded from macro 'SCMutexUnlock'
^~~~~~~~~~~~~~~~~~~~
counters.c:1156:16: warning: Potential leak of memory pointed to by 'pca'
return NULL;
^~~~
/usr/include/clang/3.3/include/stddef.h:77:24: note: expanded from macro 'NULL'
^
2 warnings generated.
12 years ago
Eric Leblond
1f07d1521e
Fix realloc error handling
...
This patch is fixing realloc error handling. In case of a realloc
failure, it free the initial memory and continue existing error
handling.
The patch has been obtained via the following semantic patch and
a bit oh hand editing:
@@
expression x, E;
identifier f;
@@
f(...)
{
+ void *ptmp;
<+...
- x = SCRealloc(x, E);
+ ptmp = SCRealloc(x, E);
... when != x
- if (x == NULL)
+ if (ptmp == NULL)
{
+ SCFree(x);
+ x = NULL;
...
- }
+ } else {
+ x = ptmp;
+ }
...+>
}
@@
expression x, E;
identifier f;
statement ES;
@@
f(...) {
+ void *ptmp;
<+...
- x = SCRealloc(x, E);
+ ptmp = SCRealloc(x, E);
... when != x
- if (x == NULL) ES
+ if (ptmp == NULL) {
+ SCFree(x);
+ x = NULL;
+ ES
+ } else {
+ x = ptmp;
+ }
...+>
}
@@
expression x, E;
identifier f;
@@
f(...)
{
+ void *ptmp;
<+...
- x = SCRealloc(x, E);
+ ptmp = SCRealloc(x, E);
... when != x
- if (unlikely(x == NULL))
+ if (unlikely(ptmp == NULL))
{
+ SCFree(x);
+ x = NULL;
...
- }
+ } else {
+ x = ptmp;
+ }
...+>
}
@@
expression x, E;
identifier f;
statement ES;
@@
f(...) {
+ void *ptmp;
<+...
- x = SCRealloc(x, E);
+ ptmp = SCRealloc(x, E);
... when != x
- if (unlikely(x == NULL)) ES
+ if (unlikely(ptmp == NULL)) {
+ SCFree(x);
+ x = NULL;
+ ES
+ } else {
+ x = ptmp;
+ }
...+>
}
12 years ago
Eric Leblond
28c5c68192
error checking: add missing alloc error treatment
...
The return of some malloc like functions was not treated in some
places of the code.
12 years ago
Victor Julien
ed03196a20
Counter: fix accidental logic change
12 years ago
Victor Julien
45dfecafd4
Counters: remove unused updated field
12 years ago
Victor Julien
64f5129f12
Counters: remove unused tm_name comparison loops
12 years ago
Victor Julien
76c305c128
Counters: fix unix socket
12 years ago
Victor Julien
25aeeebdf7
Counters: merge SCPerfCounterName into SCPerfCounter as there was a 1 on 1 mapping
12 years ago
Victor Julien
3445d17ae5
Counters: remove SCPerfCounterValue struct as we no longer support multiple data types
12 years ago
Victor Julien
677cd03e52
Counters: more unused code removal
12 years ago