StatsSystem
Jump to navigation
Jump to search
Contents
Requirements
Goal
Central system for storing statistics and timings
Stored data
What we might want to collect:
- per-stream/global decoded, dropped frames
- per-stream/global packets read/errors
- per-stream/global packets sent/errors (if sout)
- stats about httpd/vod, per access
Each thing could be stored as average, max, counter, ...
Data access
- Access stats from the GUI (simple)
- Dump HTTP server access data
- Dump some raw access data to output
Design
Data storage
Stats object
Stored as a singleton in p_libvlc
Counters
counter_sample_t {
value date
}
counter_elem_t {
name type pp_samples / i_samples
}
Name contains the originating object id, like "267.frames_decoded"
Timing
timing_elem_t {
name
last_time,
total_time, total_samples,
running, start_time
}
Reporting
- In GUI:
- Integrated in streams and media information for relevant items (make it available for VLM streams too)
- Where to put global data ?
- Data log:
- Make global options to enable and driver logger module
- Add some logging facility to httpd
- RRD output (muwahahahaha)