From 75c56aef007e0f6cf59d009b6fa2fa731102c76e Mon Sep 17 00:00:00 2001 From: Josh Suereth Date: Wed, 24 Nov 2021 11:30:57 -0500 Subject: [PATCH 1/6] Limit view-rename capabilities in the presence of multi-select of instruments. --- specification/metrics/sdk.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/specification/metrics/sdk.md b/specification/metrics/sdk.md index 4380d824513..c4f96bcbdd5 100644 --- a/specification/metrics/sdk.md +++ b/specification/metrics/sdk.md @@ -172,6 +172,15 @@ are the inputs: This should be a factory or callback similar to aggregation which allows different reservoirs to be chosen by the aggregation. +The SDK MUST not allow the following configurations to be used together: + +- An instrument selection criteria lacking any parameters (matches everything) + combined with a specified `name` for the View. This leads to gauranteed + view conflicts between instruments. +- An instrument selection criteria with wildcard name support and no specified + instrument type and a specified `name` for the View. This leads to gauranteed + view conflicts between instruments. + The SDK SHOULD use the following logic to determine how to process Measurements made with an Instrument: @@ -196,6 +205,8 @@ made with an Instrument: default behavior off. * END. + + Here are some examples: ```python From 6972f6783e12532b04cc17ff153efd393f5967a0 Mon Sep 17 00:00:00 2001 From: Josh Suereth Date: Wed, 24 Nov 2021 12:49:11 -0500 Subject: [PATCH 2/6] Fixes from review. --- specification/metrics/sdk.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/metrics/sdk.md b/specification/metrics/sdk.md index c4f96bcbdd5..0407af8efa9 100644 --- a/specification/metrics/sdk.md +++ b/specification/metrics/sdk.md @@ -174,9 +174,9 @@ are the inputs: The SDK MUST not allow the following configurations to be used together: -- An instrument selection criteria lacking any parameters (matches everything) - combined with a specified `name` for the View. This leads to gauranteed - view conflicts between instruments. +- An instrument selection criteria lacking instrument type and instrument name + criteria combined with a specified `name` for the View. This leads to + gauranteed view conflicts between instruments. - An instrument selection criteria with wildcard name support and no specified instrument type and a specified `name` for the View. This leads to gauranteed view conflicts between instruments. From 1b3adf3a4ace52ddd9ff4819ff84077e3eb76b83 Mon Sep 17 00:00:00 2001 From: Josh Suereth Date: Fri, 3 Dec 2021 09:28:31 -0500 Subject: [PATCH 3/6] Fixes from reivew. --- specification/metrics/sdk.md | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/specification/metrics/sdk.md b/specification/metrics/sdk.md index 867e77e5719..201a6068f34 100644 --- a/specification/metrics/sdk.md +++ b/specification/metrics/sdk.md @@ -192,14 +192,11 @@ are the inputs: This should be a factory or callback similar to aggregation which allows different reservoirs to be chosen by the aggregation. -The SDK MUST not allow the following configurations to be used together: - -- An instrument selection criteria lacking instrument type and instrument name - criteria combined with a specified `name` for the View. This leads to - gauranteed view conflicts between instruments. -- An instrument selection criteria with wildcard name support and no specified - instrument type and a specified `name` for the View. This leads to gauranteed - view conflicts between instruments. +In order to avoid conflicts, views which specify a name should have an +instrument selector which selects at most one instrument. For the registration +mechanism described above, where selection is provided via configuration, the +SDK MUST NOT allow Views with a specified name to be declared with instrument +selectors which select by instrument type or wildcard. The SDK SHOULD use the following logic to determine how to process Measurements made with an Instrument: @@ -225,8 +222,6 @@ made with an Instrument: default behavior off. * END. - - Here are some examples: ```python From 82d637fc91ae3bd1311b2c41c9f42dce6bbf7dab Mon Sep 17 00:00:00 2001 From: Joshua MacDonald Date: Fri, 10 Dec 2021 11:04:02 -0800 Subject: [PATCH 4/6] Update specification/metrics/sdk.md Co-authored-by: Aaron Abbott --- specification/metrics/sdk.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/metrics/sdk.md b/specification/metrics/sdk.md index 201a6068f34..abc96b75801 100644 --- a/specification/metrics/sdk.md +++ b/specification/metrics/sdk.md @@ -192,7 +192,7 @@ are the inputs: This should be a factory or callback similar to aggregation which allows different reservoirs to be chosen by the aggregation. -In order to avoid conflicts, views which specify a name should have an +In order to avoid conflicts, views which specify a name SHOULD have an instrument selector which selects at most one instrument. For the registration mechanism described above, where selection is provided via configuration, the SDK MUST NOT allow Views with a specified name to be declared with instrument From a4519a4489cdf850917273709e8cb184614bb4ef Mon Sep 17 00:00:00 2001 From: Joshua MacDonald Date: Fri, 10 Dec 2021 11:06:37 -0800 Subject: [PATCH 5/6] Update specification/metrics/sdk.md --- specification/metrics/sdk.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/metrics/sdk.md b/specification/metrics/sdk.md index abc96b75801..d7a4355a17c 100644 --- a/specification/metrics/sdk.md +++ b/specification/metrics/sdk.md @@ -196,7 +196,7 @@ In order to avoid conflicts, views which specify a name SHOULD have an instrument selector which selects at most one instrument. For the registration mechanism described above, where selection is provided via configuration, the SDK MUST NOT allow Views with a specified name to be declared with instrument -selectors which select by instrument type or wildcard. +selectors that select by instrument type or wildcard. The SDK SHOULD use the following logic to determine how to process Measurements made with an Instrument: From e7e472e5851a3d7b23f3af023971b050266c9044 Mon Sep 17 00:00:00 2001 From: Joshua MacDonald Date: Fri, 10 Dec 2021 11:09:15 -0800 Subject: [PATCH 6/6] Update specification/metrics/sdk.md --- specification/metrics/sdk.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/metrics/sdk.md b/specification/metrics/sdk.md index d7a4355a17c..3d2ba923949 100644 --- a/specification/metrics/sdk.md +++ b/specification/metrics/sdk.md @@ -193,7 +193,7 @@ are the inputs: different reservoirs to be chosen by the aggregation. In order to avoid conflicts, views which specify a name SHOULD have an -instrument selector which selects at most one instrument. For the registration +instrument selector that selects at most one instrument. For the registration mechanism described above, where selection is provided via configuration, the SDK MUST NOT allow Views with a specified name to be declared with instrument selectors that select by instrument type or wildcard.