Stefan Sauer
1a3e218b89
tracer: simplify hook api
...
Instead of a single invoke() function and a 'mask', register to individual
hooks. This avoids one level of indirection and allows us to remove the
hook enums. The message enms are now renamed to hook enums.
2015-10-05 20:59:39 +02:00
Stefan Sauer
7b24d76260
tracer: drop the HookId hid from the invoke method
...
The MessageId is more detailed and anyway needed to interpret the varargs.
2015-10-05 20:59:39 +02:00
Stefan Sauer
4ab1e6e3f7
stats: fixup doc name and remove commented code
2015-10-05 20:59:39 +02:00
Stefan Sauer
4f6f8cb811
tracers: add metadata for the logged values
2015-10-05 20:59:39 +02:00
Stefan Sauer
3baaa4ba6f
rusage: improve cpu load meassurements
...
Get the number of cpus and scale process cpu-load accordingly. Switch the
cpuload to be per-mille to get smoother graphs. Add a bit more logging and use
the _OBJECT variant.
2015-10-05 20:59:39 +02:00
Stefan Sauer
dbb1897e9b
rusage: implement windowing of cpuload
...
Add a local help to the rusage plugin that supports windowing of values. We want
to generalize this for use in other plugins.
2015-10-05 20:59:39 +02:00
Stefan Sauer
018858980b
rusage: announce the data format
...
Rusage will now announce what is meassures and how it is logged. Use the new format in stats.
Cleanup the the code and naming.
2015-10-05 20:59:39 +02:00
Stefan Sauer
c13ee1f2e9
stats: improve cpu load meassurements
...
Rename variables for clarity. Handle the initial disparity between debug time
and the time already spent in the proc and main thread.
2015-10-05 20:59:39 +02:00
Stefan Sauer
46ea9729df
tracer: split into tracer and tracerutils
...
Keep tracer base class in tracer and move core support into the utils module.
Add a unstable-api guard to the tracer.h so that external modules would need to
acknowledge the status by setting GST_USE_UNSTABLE_API.
2015-10-05 20:59:39 +02:00
Stefan Sauer
6ea2b41364
docs: add gtk-doc blobs
2015-10-05 20:59:39 +02:00
Stefan Sauer
757d3400cd
latency: take stop time when buffer is handled
...
Now we meassure time from 'before buffer transfer on src' to when the 'buffer is processed on sink'.
2015-10-05 20:59:39 +02:00
Stefan Sauer
7dfc0a8ead
tracers: add a logging helper to remove identical copies from the tracers
2015-10-05 20:59:39 +02:00
Stefan Sauer
635a4b5c00
tracers: tweak the get_real_pad_parent()
...
By using the we ended up on the actual element, not the parent.
2015-10-05 20:59:39 +02:00
Stefan Sauer
111b18115a
tracers: add a new latency tracer
...
Add a new tracer with pushes extra events to meassure src-to-sink processing latency.
2015-10-05 20:59:39 +02:00
Stefan Sauer
fc9392c10f
rusage: add a new rusage tracer
...
The tracer hooks up to all probes and logs resource usage figures.
2015-10-05 20:59:39 +02:00
Stefan Sauer
0c26387e62
stats: improve the handling of parentage
...
Log new object after we did the check for parents.
2015-10-05 20:59:39 +02:00
Stefan Sauer
b8eef6ba2c
stats: add a stats frontend
...
Parse the log and collect data from tracer messages.
2015-10-05 20:59:39 +02:00
Stefan Sauer
ac92e5674e
log: add query log category
2015-10-05 20:59:39 +02:00
Stefan Sauer
ce7ce2d866
tracer: add more hooks and handle it in the plugins
2015-10-05 20:59:39 +02:00
Stefan Sauer
37721fdc9d
stats: handle buffer lists
2015-10-05 20:59:39 +02:00
Stefan Sauer
75fb1f1a73
log: make the log tracer more verbose again
...
Define log formats per message type and print details.
2015-10-05 20:59:39 +02:00
Stefan Sauer
11d6e13d73
tracer: use a macros for the enabled check
...
Avoid a function call and check the variables from the macro.
2015-10-05 20:59:39 +02:00
Stefan Sauer
9d3975b5da
tracer: pass the timestamp directly
...
Avoid the structure mashalling (and weird field naming).
2015-10-05 20:59:39 +02:00
Stefan Sauer
d663b78612
stats: add a tracer that collects pipeline statistics
...
This is more or less equiv to the the statistics in gst-tracelib.
2015-10-05 20:59:39 +02:00
Stefan Sauer
2c6672435f
log: add cast macro
2015-10-05 20:59:39 +02:00
Stefan Sauer
c2d5b35332
tracer: pass the instance to the vmethod
2015-10-05 20:59:39 +02:00
Stefan Sauer
8a8f16863b
design: more planning
2015-10-05 20:59:39 +02:00
Stefan Sauer
68b1473846
tracer: add the hook-id to the invoke signature
...
Tracers that subscribe to multiple hooks can know what hook was used.
2015-10-05 20:59:39 +02:00
Stefan Sauer
4e5d586c7d
tracer: initial prototype for the tracing subsystem
2015-10-05 20:59:39 +02:00