diff options
author | Toine Siebelink <toine.siebelink@est.tech> | 2023-03-13 14:09:27 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2023-03-13 14:09:27 +0000 |
commit | 490834698eef6c8c0ef31c9a50f8695487b7f961 (patch) | |
tree | c4594cf83f1b78a515cc95ad992503508b2c45da | |
parent | 8e08dc797c89f6e85347c10cc7a2e877c126432a (diff) | |
parent | 03ded02d63b196fed2724b1a541457525c3885bc (diff) |
Merge "Add new metrics to the get data node method"
4 files changed, 21 insertions, 1 deletions
diff --git a/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java b/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java index 80cfb8ce0b..edfeab33ec 100755 --- a/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java +++ b/cps-rest/src/main/java/org/onap/cps/rest/controller/DataRestController.java @@ -24,6 +24,7 @@ package org.onap.cps.rest.controller; +import io.micrometer.core.annotation.Timed; import java.time.OffsetDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; @@ -97,6 +98,8 @@ public class DataRestController implements CpsDataApi { } @Override + @Timed(value = "cps.data.controller.datanode.get.v1", + description = "Time taken to get data node") public ResponseEntity<Object> getNodeByDataspaceAndAnchor(final String dataspaceName, final String anchorName, final String xpath, final Boolean includeDescendants) { final FetchDescendantsOption fetchDescendantsOption = Boolean.TRUE.equals(includeDescendants) @@ -108,6 +111,8 @@ public class DataRestController implements CpsDataApi { } @Override + @Timed(value = "cps.data.controller.datanode.get.v2", + description = "Time taken to get data node") public ResponseEntity<Object> getNodeByDataspaceAndAnchorV2(final String dataspaceName, final String anchorName, final String xpath, final String fetchDescendantsOptionAsString) { diff --git a/cps-rest/src/main/java/org/onap/cps/rest/controller/QueryRestController.java b/cps-rest/src/main/java/org/onap/cps/rest/controller/QueryRestController.java index 81938dcd95..5f4283d0e4 100644 --- a/cps-rest/src/main/java/org/onap/cps/rest/controller/QueryRestController.java +++ b/cps-rest/src/main/java/org/onap/cps/rest/controller/QueryRestController.java @@ -22,6 +22,7 @@ package org.onap.cps.rest.controller; +import io.micrometer.core.annotation.Timed; import java.util.ArrayList; import java.util.Collection; import java.util.List; @@ -49,6 +50,8 @@ public class QueryRestController implements CpsQueryApi { private final PrefixResolver prefixResolver; @Override + @Timed(value = "cps.data.controller.datanode.query.v1", + description = "Time taken to query data nodes") public ResponseEntity<Object> getNodesByDataspaceAndAnchorAndCpsPath(final String dataspaceName, final String anchorName, final String cpsPath, final Boolean includeDescendants) { final FetchDescendantsOption fetchDescendantsOption = Boolean.TRUE.equals(includeDescendants) @@ -58,6 +61,8 @@ public class QueryRestController implements CpsQueryApi { } @Override + @Timed(value = "cps.data.controller.datanode.query.v2", + description = "Time taken to query data nodes") public ResponseEntity<Object> getNodesByDataspaceAndAnchorAndCpsPathV2(final String dataspaceName, final String anchorName, final String cpsPath, final String fetchDescendantsOptionAsString) { final FetchDescendantsOption fetchDescendantsOption = diff --git a/cps-ri/src/main/java/org/onap/cps/spi/impl/CpsDataPersistenceServiceImpl.java b/cps-ri/src/main/java/org/onap/cps/spi/impl/CpsDataPersistenceServiceImpl.java index 916baa8c23..593ed13344 100644 --- a/cps-ri/src/main/java/org/onap/cps/spi/impl/CpsDataPersistenceServiceImpl.java +++ b/cps-ri/src/main/java/org/onap/cps/spi/impl/CpsDataPersistenceServiceImpl.java @@ -25,6 +25,7 @@ package org.onap.cps.spi.impl; import com.google.common.collect.ImmutableSet; import com.google.common.collect.ImmutableSet.Builder; +import io.micrometer.core.annotation.Timed; import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; @@ -80,7 +81,7 @@ public class CpsDataPersistenceServiceImpl implements CpsDataPersistenceService private final JsonObjectMapper jsonObjectMapper; private final SessionManager sessionManager; - private static final String REG_EX_FOR_OPTIONAL_LIST_INDEX = "(\\[@[\\s\\S]+?]){0,1})"; + private static final String REG_EX_FOR_OPTIONAL_LIST_INDEX = "(\\[@[\\s\\S]+?])?)"; @Override public void addChildDataNode(final String dataspaceName, final String anchorName, final String parentNodeXpath, @@ -250,6 +251,8 @@ public class CpsDataPersistenceServiceImpl implements CpsDataPersistenceService } @Override + @Timed(value = "cps.data.persistence.service.datanode.get", + description = "Time taken to get a data node") public Collection<DataNode> getDataNodes(final String dataspaceName, final String anchorName, final String xpath, final FetchDescendantsOption fetchDescendantsOption) { @@ -263,6 +266,8 @@ public class CpsDataPersistenceServiceImpl implements CpsDataPersistenceService } @Override + @Timed(value = "cps.data.persistence.service.datanode.batch.get", + description = "Time taken to get data nodes") public Collection<DataNode> getDataNodesForMultipleXpaths(final String dataspaceName, final String anchorName, final Collection<String> xpaths, final FetchDescendantsOption fetchDescendantsOption) { @@ -330,6 +335,8 @@ public class CpsDataPersistenceServiceImpl implements CpsDataPersistenceService } @Override + @Timed(value = "cps.data.persistence.service.datanode.query", + description = "Time taken to query data nodes") public List<DataNode> queryDataNodes(final String dataspaceName, final String anchorName, final String cpsPath, final FetchDescendantsOption fetchDescendantsOption) { final DataspaceEntity dataspaceEntity = dataspaceRepository.getByName(dataspaceName); diff --git a/cps-service/src/main/java/org/onap/cps/api/impl/CpsQueryServiceImpl.java b/cps-service/src/main/java/org/onap/cps/api/impl/CpsQueryServiceImpl.java index 7b9043a608..a63faabac4 100644 --- a/cps-service/src/main/java/org/onap/cps/api/impl/CpsQueryServiceImpl.java +++ b/cps-service/src/main/java/org/onap/cps/api/impl/CpsQueryServiceImpl.java @@ -20,6 +20,7 @@ package org.onap.cps.api.impl; +import io.micrometer.core.annotation.Timed; import java.util.Collection; import lombok.RequiredArgsConstructor; import org.onap.cps.api.CpsQueryService; @@ -37,6 +38,8 @@ public class CpsQueryServiceImpl implements CpsQueryService { private final CpsValidator cpsValidator; @Override + @Timed(value = "cps.data.service.datanode.query", + description = "Time taken to query data nodes") public Collection<DataNode> queryDataNodes(final String dataspaceName, final String anchorName, final String cpsPath, final FetchDescendantsOption fetchDescendantsOption) { cpsValidator.validateNameCharacters(dataspaceName, anchorName); |