RMS icon indicating copy to clipboard operation
RMS copied to clipboard

Telemetry for capture module

Open adalava opened this issue 4 years ago • 0 comments

This is a work in progress (draft pull request)

Implements "telemetry" module so external applications can retrieve data from current capture session without disturbing it. The data can be used by a monitoring application to generate statistics and also detect failures. As example, it could detect last frame block was processed a long time ago, so capture is stuck and action is required.

command:

$ curl http://127.0.0.1:2100

output:

{
	"status": "capturing",
	"fps_expected": 25.0,
	"fps_estimated": 19.7,
	"block_frames": 256,
	"dropped_frames": 85,
	"frame_time_average": 0.049,
	"capture_start_time": "2021-05-18T06:12:44.820058",
	"last_frame_block": "2021-05-18T06:13:28.868691"
}

TODO wish list:

  • add config option to enable/disable web service
  • add config option to customize web service listen IP and port
  • add a webservice endpoint to retrieve the last frame in the 256 block (http://127.0.0.1/last_frame)
  • retrieve data from Stars and Meteor detection engine (number of stars and meteor count)
  • limit number of connections to avoid DoS

adalava avatar May 18 '21 06:05 adalava