vkottler / runtimepy

A framework for implementing Python services.
MIT License
1 stars 0 forks source link

Telemetry client for remote channel environment #135

Open vkottler opened 9 months ago

vkottler commented 9 months ago

Need a "message type" prefixed messaging protocol.

Use the existing length-prefixed messaging protocol.

When initializing expect configuration data / messages to learn full set of channels, after initialization channels come using vtelem-style messages:

vkottler commented 9 months ago

For exposing/listening: configure a mapping of environment name + protocol/factory, start listeners when bringing application up (handled by runtimepy)

edit: a telemetry serving thing only needs to be given an environment name

vkottler commented 9 months ago

JSON server could be responsible for all "channel environment metadata" transfers, that we we only need the telemetry serialization / messaging.

the "channel IDs" "channel values" tech could just be a new connection type

vkottler commented 9 months ago

Should be able to:

it would nice to be able to query the server for telemetry ports?

maybe the telemetry connection should be multi-channel-environment?

vkottler commented 4 months ago

Event stream (both to and from): https://github.com/vkottler/runtimepy/pull/176

We should implement writing to and reading from a file. Realistically it will be more like writing an entire directory for each channel environment, for the JSON metadata.

Probably something like:

<env name 1>/
    file1.json
    file2.json
    ...
<env name 1>.bin
...
vkottler commented 4 months ago

Yeah may as well implement highest-possible fidelity "sample all events for all environments" option first, see how useful that is.