wasmCloud/wascc-host

Distributed bus should emit events for monitoring/observation

Closed this issue · 0 comments

There are a number of events that might be of interest to observers in lattice and each wascc host should emit those when appropriate:

  • Host Up
  • Host Down
  • Actor Starting
  • Actor Started
  • Actor Stopped
  • Actor Updating (live update/swap)
  • Actor Updated (live update/swap)
  • Provider Loaded (includes both portable and native)
  • Provider Removed
  • Dispatch Failed
  • Actor Call Failed
  • Actor Binding Created
  • Actor Binding Removed
  • Actor Became Unhealthy
  • Actor Became Healthy

These events should probably go on a subject like wasmbus.events, with obvious restrictions in deployed scenarios as to which user credentials are allowed to subscribe to this. For production security purposes, I would recommend that the leaf node credentials used by the leaf node to which wascc hosts connect have publish only rights to the wasmbus.events, which would prevent someone who compromises a leaf node from being able to subscribe to this subject.

It might also make sense to publish these as JSON on the subject in a CloudEvents envelope.