From efe3500ac2af31a8bc9086a95c0e8cd3ac22794f Mon Sep 17 00:00:00 2001 From: Shivansh Anand Srivastava Date: Wed, 19 Jun 2024 00:20:36 +0530 Subject: [PATCH] Add description to span exclusion rules --- .../schema/mutation/DeleteSpanProcessingRuleResponse.java | 2 ++ .../schema/mutation/ExcludeSpanRuleUpdate.java | 4 ++++ .../schema/mutation/SpanProcessingMutationSchema.java | 4 ++++ .../schema/query/ExcludeSpanRuleResultSet.java | 2 ++ .../schema/query/SpanProcessingQuerySchema.java | 2 ++ .../graphql/spanprocessing/schema/rule/ExcludeSpanRule.java | 3 +++ .../spanprocessing/schema/rule/ExcludeSpanRuleInfo.java | 5 +++++ .../schema/rule/filter/SpanProcessingLogicalFilter.java | 3 +++ .../schema/rule/filter/SpanProcessingRelationalFilter.java | 5 +++++ .../schema/rule/filter/SpanProcessingRuleFilter.java | 3 +++ 10 files changed, 33 insertions(+) diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/DeleteSpanProcessingRuleResponse.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/DeleteSpanProcessingRuleResponse.java index c66d830f..4a4e8413 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/DeleteSpanProcessingRuleResponse.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/DeleteSpanProcessingRuleResponse.java @@ -1,5 +1,6 @@ package org.hypertrace.graphql.spanprocessing.schema.mutation; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -12,5 +13,6 @@ public interface DeleteSpanProcessingRuleResponse { @GraphQLField @GraphQLNonNull @GraphQLName(DELETE_SPAN_PROCESSING_RULE_RESPONSE_SUCCESS) + @GraphQLDescription("Delete span processing rule is success or not") boolean success(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/ExcludeSpanRuleUpdate.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/ExcludeSpanRuleUpdate.java index 0c593bb9..0e88a4f0 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/ExcludeSpanRuleUpdate.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/ExcludeSpanRuleUpdate.java @@ -1,5 +1,6 @@ package org.hypertrace.graphql.spanprocessing.schema.mutation; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -17,16 +18,19 @@ public interface ExcludeSpanRuleUpdate extends Identifiable { @GraphQLField @GraphQLName(NAME_KEY) + @GraphQLDescription("Exclude span rule name") @GraphQLNonNull String name(); @GraphQLField @GraphQLName(SPAN_PROCESSING_FILTER_KEY) + @GraphQLDescription("Span processing rule filter") @GraphQLNonNull SpanProcessingRuleFilter spanFilter(); @GraphQLField @GraphQLName(DISABLED_KEY) + @GraphQLDescription("Exclude span rule is disabled or not") @GraphQLNonNull boolean disabled(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/SpanProcessingMutationSchema.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/SpanProcessingMutationSchema.java index e8a51b4a..ffa44786 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/SpanProcessingMutationSchema.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/mutation/SpanProcessingMutationSchema.java @@ -1,6 +1,7 @@ package org.hypertrace.graphql.spanprocessing.schema.mutation; import graphql.annotations.annotationTypes.GraphQLDataFetcher; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -16,6 +17,7 @@ public interface SpanProcessingMutationSchema { @GraphQLField @GraphQLName(CREATE_EXCLUDE_SPAN_RULE_MUTATION_NAME) + @GraphQLDescription("Create exclude span rule") @GraphQLNonNull @GraphQLDataFetcher(ExcludeSpanCreateRuleMutator.class) ExcludeSpanRule createExcludeSpanRule( @@ -24,6 +26,7 @@ ExcludeSpanRule createExcludeSpanRule( @GraphQLField @GraphQLName(UPDATE_EXCLUDE_SPAN_RULE_MUTATION_NAME) + @GraphQLDescription("Update exclude span rule") @GraphQLNonNull @GraphQLDataFetcher(ExcludeSpanUpdateRuleMutator.class) ExcludeSpanRule updateExcludeSpanRule( @@ -32,6 +35,7 @@ ExcludeSpanRule updateExcludeSpanRule( @GraphQLField @GraphQLName(DELETE_EXCLUDE_SPAN_RULE_MUTATION_NAME) + @GraphQLDescription("Delete exclude span rule") @GraphQLNonNull @GraphQLDataFetcher(ExcludeSpanDeleteRuleMutator.class) DeleteSpanProcessingRuleResponse deleteExcludeSpanRule( diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/ExcludeSpanRuleResultSet.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/ExcludeSpanRuleResultSet.java index 7bb6607d..ef5e3036 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/ExcludeSpanRuleResultSet.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/ExcludeSpanRuleResultSet.java @@ -1,5 +1,6 @@ package org.hypertrace.graphql.spanprocessing.schema.query; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -15,5 +16,6 @@ public interface ExcludeSpanRuleResultSet extends ResultSet { @GraphQLField @GraphQLNonNull @GraphQLName(RESULT_SET_RESULTS_NAME) + @GraphQLDescription("Exclude span rule list") List results(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/SpanProcessingQuerySchema.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/SpanProcessingQuerySchema.java index 60aa3e52..dee0b272 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/SpanProcessingQuerySchema.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/query/SpanProcessingQuerySchema.java @@ -1,6 +1,7 @@ package org.hypertrace.graphql.spanprocessing.schema.query; import graphql.annotations.annotationTypes.GraphQLDataFetcher; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -12,6 +13,7 @@ public interface SpanProcessingQuerySchema { @GraphQLField @GraphQLNonNull @GraphQLName(EXCLUDE_SPAN_RULES_QUERY_NAME) + @GraphQLDescription("Get all exclude span rules") @GraphQLDataFetcher(ExcludeSpanRulesFetcher.class) ExcludeSpanRuleResultSet excludeSpanRules(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRule.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRule.java index 1f8943a5..ca730bdb 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRule.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRule.java @@ -1,5 +1,6 @@ package org.hypertrace.graphql.spanprocessing.schema.rule; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -15,11 +16,13 @@ public interface ExcludeSpanRule extends Identifiable, ExcludeSpanRuleInfo { @GraphQLField @GraphQLName(CREATION_TIME_KEY) + @GraphQLDescription("Exclude span rule creation tme") @GraphQLNonNull Instant creationTime(); @GraphQLField @GraphQLName(LAST_UPDATED_TIME_KEY) + @GraphQLDescription("Exclude span rule last update tme") @GraphQLNonNull Instant lastUpdatedTime(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRuleInfo.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRuleInfo.java index 29a414b8..ecd08b24 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRuleInfo.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/ExcludeSpanRuleInfo.java @@ -1,5 +1,6 @@ package org.hypertrace.graphql.spanprocessing.schema.rule; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -16,21 +17,25 @@ public interface ExcludeSpanRuleInfo { @GraphQLField @GraphQLName(NAME_KEY) + @GraphQLDescription("Exclude span rule name") @GraphQLNonNull String name(); @GraphQLField @GraphQLName(SPAN_FILTER_KEY) + @GraphQLDescription("Span processing rule filter") @GraphQLNonNull SpanProcessingRuleFilter spanFilter(); @GraphQLField @GraphQLName(DISABLED_KEY) + @GraphQLDescription("Exclude span rule is disabled or not") @GraphQLNonNull boolean disabled(); @GraphQLField @GraphQLName(RULE_TYPE_KEY) + @GraphQLDescription("Exclude span rule type") // TODO: make this field non-nullable ExcludeSpanRuleRuleType ruleType(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingLogicalFilter.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingLogicalFilter.java index 991b5506..5586e915 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingLogicalFilter.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingLogicalFilter.java @@ -1,5 +1,6 @@ package org.hypertrace.graphql.spanprocessing.schema.rule.filter; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -15,11 +16,13 @@ public interface SpanProcessingLogicalFilter { @GraphQLField @GraphQLName(SPAN_PROCESSING_LOGICAL_OPERATOR_KEY) + @GraphQLDescription("Span processing logical operator") @GraphQLNonNull LogicalOperator logicalOperator(); @GraphQLField @GraphQLName(SPAN_PROCESSING_FILTERS_KEY) + @GraphQLDescription("Span processing filters") @GraphQLNonNull List spanFilters(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRelationalFilter.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRelationalFilter.java index ca3b8e50..084596f1 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRelationalFilter.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRelationalFilter.java @@ -2,6 +2,7 @@ import static org.hypertrace.core.graphql.common.schema.results.arguments.filter.FilterArgument.FILTER_ARGUMENT_VALUE; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; import graphql.annotations.annotationTypes.GraphQLNonNull; @@ -16,19 +17,23 @@ public interface SpanProcessingRelationalFilter { @GraphQLField @GraphQLName(SPAN_PROCESSING_FILTER_KEY_KEY) + @GraphQLDescription("Span processing filter key") String key(); @GraphQLField @GraphQLName(SPAN_PROCESSING_FILTER_FIELD_KEY) + @GraphQLDescription("Span processing filter field") SpanProcessingFilterField field(); @GraphQLField @GraphQLName(RELATION_OPERATOR_KEY) + @GraphQLDescription("Span processing relational operator") @GraphQLNonNull SpanProcessingRelationalOperator relationalOperator(); @GraphQLField @GraphQLName(FILTER_ARGUMENT_VALUE) + @GraphQLDescription("Span processing filter value") @GraphQLNonNull Object value(); } diff --git a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRuleFilter.java b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRuleFilter.java index 87f3b603..6c591ecf 100644 --- a/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRuleFilter.java +++ b/hypertrace-graphql-span-processing-schema/src/main/java/org/hypertrace/graphql/spanprocessing/schema/rule/filter/SpanProcessingRuleFilter.java @@ -1,5 +1,6 @@ package org.hypertrace.graphql.spanprocessing.schema.rule.filter; +import graphql.annotations.annotationTypes.GraphQLDescription; import graphql.annotations.annotationTypes.GraphQLField; import graphql.annotations.annotationTypes.GraphQLName; @@ -12,9 +13,11 @@ public interface SpanProcessingRuleFilter { @GraphQLField @GraphQLName(SPAN_PROCESSING_LOGICAL_FILTER_KEY) + @GraphQLDescription("Span processing logical filter") SpanProcessingLogicalFilter logicalSpanFilter(); @GraphQLField @GraphQLName(SPAN_PROCESSING_RELATIONAL_FILTER_KEY) + @GraphQLDescription("Span processing relational filter") SpanProcessingRelationalFilter relationalSpanFilter(); }