Configuration of reporting schema
- current default xenstore schema, known as
std
for now, matches the expectation from past and current (24.x) XAPI versions, and releasing 1.0 with this may not be ideal for a tool whose goal is to suit the needs of the larger Xen community - some level of additional configurability was requested during a past Community Call (to avoid downstream Xen distros having to fork the code to get it to suit their own needs)
Envisioned plan:
- change the
publisher_xenstore
/xenstore_schema_*
interface to be a mapping between "collectable data" items and xenstore paths - "collectable data" items will only get collected when the current schema references them
- current
std
schema will be rebranded toxapi24
or similar (likely an earlier version would suit better?) - items in default schema will be added after discussion on xen-devel
- specific schema can be selected in several ways:
- (preferred) written to xenstore by the toolstack before starting the domain
- (compatibility) read from an in-guest configuration file on agent if the xenstore key is not set (suitable for use with "legacy" distros not setting it)
- (flexible) actual collectable-to-path mapping read from config file or written to xenstore (maybe for post-1.0 implementation)
Note: the "flexible written to xenstore" system would need to be a "best effort" on agent side, as the toolstack would have no way to determine what's available in the guest; but then the schemas available to the in-guest agent would similarly limit application of the toolstack-selected one. How can we make the whole thing future-proof?