in graphql-dgs-spring-boot-micrometer/src/main/kotlin/com/netflix/graphql/dgs/metrics/micrometer/DgsGraphQLMetricsInstrumentation.kt [219:234]
override fun beginExecuteOperation(
parameters: InstrumentationExecuteOperationParameters,
state: InstrumentationState,
): InstrumentationContext<ExecutionResult>? {
require(state is MetricsInstrumentationState)
if (parameters.executionContext.getRoot<Any>() == null) {
state.operationValue = parameters.executionContext.operationDefinition.operation
if (state.operationNameValue == null) {
state.operationNameValue = parameters.executionContext.operationDefinition.nameOrFallback
}
}
if (properties.tags.complexity.enabled) {
state.queryComplexityValue = ComplexityUtils.resolveComplexity(parameters)
}
return super.beginExecuteOperation(parameters, state)
}