-
Notifications
You must be signed in to change notification settings - Fork 1
Very relaxed json for ldmsd
This is a sketch of possible config file alternative to the genders format of ldmsd v2/v3/v4.
It suggests a very-relaxed-json format (as described below).
The files here define an ldmsd configuration for daemon instance and node type.
It is assumed a cluster-oriented configuration deployment that differentiates on node type will deploy %INSTANCE.$nodetype.vrjson to the standard location where an [email protected] systemd script will find it.
Within the mycluster cluster, there are 'local' and 'agg' ldmsd daemon instances.
On host myl2, there is an L2 daemon instance ldmsd@mycluster using the mycluster.vrjson content in the standard location where an ldmsd systemd service script will find it.
- p2 genders v0 an example genders file informing what services are expected
- p2 local.compute.vrjson v0 the ldmsd@local collector configuration file for compute nodes of mycluster
- p2 local.admin.vrjson v0 the ldmsd@local collector configuration file for admin nodes of mycluster
- p2 local.login.vrjson v0 the ldmsd@local collector configuration file for login nodes of mycluster
- p2 local.gateway.vrjson v0 the ldmsd@local collector configuration file for lustre gateway nodes of mycluster
- p2 agg.admin.vrjson v0 the L1 ldmsd@agg aggregator/store configuration file for admin nodes of mycluster
- p2 mycluster.vrjson v0 the L2 ldmsd@mycluster aggregator/store configuration file for remote host myl2
We see in the vrjson files that there's a lot of repetitiveness in plug-in configuration. The current example is based on a real v3 ldmsd deployment. In v5, we could have plug-in 'base' be where we set the defaults for things like jobset : ${HOSTNAME}/job_info and eliminate the repetition. Whether 'job' should be in the sampler base is out of scope for this discussion.
The json simplifications are:
- There are no data types, so the only time you need quotes ("") is when you need to protect whitespace or a free-standing colon that is somehow data. The configured software is expected to manage any string to binary conversions.
- Commas are not required between list items, as whitespace including line breaks is an item separator. Missing colons are an error. Commas, braces and square brackets surrounded by non-whitespace characters are part of the string, not punctuation of the data.
- Comments start with # at the beginning of a line or '(whitespace)#'. String embedded # is not a comment
- Variable expansion on the values is performed by the configured software.
- Conversion to json is that all strings and long strings get double quoted and all lists get commas inserted.
- Long strings that can extend across line-ends are delimited by """ as in python, and it is up to the configured software to determine what is done with the internal line-ends.
- Home
- Search
- Feature Overview
- LDMS Data Facilitates Analysis
- Contributing patches
- User Group Meeting Notes - BiWeekly!
- Publications
- News - now in Discussions
- Mailing Lists
- Help
Tutorials are available at the conference websites
- Coming soon!
- Testing Overview
- Test Plans & Documentation: ldms-test
- Man pages currently not posted, but they are available in the source and build
V3 has been deprecated and will be removed soon
- Configuring
- Configuration Considerations
- Running