Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setting up diagnostics Domain for keeping track of some operational metrics #635

Open
CMCDragonkai opened this issue Nov 17, 2023 · 0 comments
Labels
development Standard development r&d:polykey:supporting activity Supporting core activity

Comments

@CMCDragonkai
Copy link
Member

Specification

Discussion about the #634 #628 and 223c367 has led to the idea of a diagnostics domain that is useful for keeping some operational metrics.

Note that I'm still of the position that operational logs, the kind that comes out of STDERR should be captured by an orchestrator and that orchestrator can do log analysis, storage, ETL, and visualisation using grafana. This stuff should not be in Polykey core. It just adds too much complexity.

However some level of internal diagnostics may be useful - especially in terms of remote debugging too. Since we have a JS runtime, it should be possible to expose some level of remote debugging, and then keep track of diagnostic statistics about various parts of PK.

A diagnostics domain can be an "internal" domain with no guarantee of API stability that allows us to throw whatever we want in. However from a security POV it's important this does not leak anything important or become a vulnerability.

Some interesting diagnostics will be about dimensionality of the system and the different domains of the system:

  1. Objects that are live
  2. Uptime of those objects
  3. Memory usage - for detecting memory leaks
  4. CPU usage... etc
  5. Exceptions

Additional context

Tasks

  1. ...
  2. ...
  3. ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development Standard development r&d:polykey:supporting activity Supporting core activity
Development

No branches or pull requests

1 participant