This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git


The following commit(s) were added to refs/heads/master by this push:
     new 2caa01dabe Add log for Endpoint direct topN query. (#13371)
2caa01dabe is described below

commit 2caa01dabed68ce2896cc8ba5d2bb605b63a547f
Author: Wan Kai <[email protected]>
AuthorDate: Thu Jul 17 05:49:54 2025 +0800

    Add log for Endpoint direct topN query. (#13371)
---
 docs/en/setup/backend/storages/banyandb.md                        | 4 +++-
 .../storage/plugin/banyandb/BanyanDBAggregationQueryDAO.java      | 8 ++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/docs/en/setup/backend/storages/banyandb.md 
b/docs/en/setup/backend/storages/banyandb.md
index 50afe083f1..45b3968b1f 100644
--- a/docs/en/setup/backend/storages/banyandb.md
+++ b/docs/en/setup/backend/storages/banyandb.md
@@ -64,7 +64,9 @@ global:
   asyncProfilerTaskQueryMaxSize: 
${SW_STORAGE_BANYANDB_ASYNC_PROFILER_TASK_QUERY_MAX_SIZE:200}
   # If the BanyanDB server is configured with TLS, configure the TLS cert file 
path and enable TLS connection.
   sslTrustCAPath: ${SW_STORAGE_BANYANDB_SSL_TRUST_CA_PATH:""}
-
+  # Cleanup TopN rules in BanyanDB server that are not configured in the 
bydb-topn.yml config.
+  cleanupUnusedTopNRules: ${SW_STORAGE_BANYANDB_CLEANUP_UNUSED_TOPN_RULES:true}
+  
 groups:
   # The group settings of record.
   #  - "ShardNum": Number of shards in the group. Shards are the basic units 
of data storage in BanyanDB. Data is distributed across shards based on the 
hash value of the series ID.
diff --git 
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBAggregationQueryDAO.java
 
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBAggregationQueryDAO.java
index 3a3399297d..004698da67 100644
--- 
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBAggregationQueryDAO.java
+++ 
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/BanyanDBAggregationQueryDAO.java
@@ -19,6 +19,7 @@
 package org.apache.skywalking.oap.server.storage.plugin.banyandb;
 
 import com.google.common.collect.ImmutableSet;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.skywalking.banyandb.database.v1.BanyandbDatabase;
 import org.apache.skywalking.banyandb.model.v1.BanyandbModel;
 import org.apache.skywalking.banyandb.v1.client.AbstractQuery;
@@ -29,6 +30,7 @@ import 
org.apache.skywalking.banyandb.v1.client.TimestampRange;
 import org.apache.skywalking.banyandb.v1.client.TopNQueryResponse;
 import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
 import org.apache.skywalking.oap.server.core.query.enumeration.Order;
+import org.apache.skywalking.oap.server.core.query.enumeration.Scope;
 import org.apache.skywalking.oap.server.core.query.input.AttrCondition;
 import org.apache.skywalking.oap.server.core.query.input.Duration;
 import org.apache.skywalking.oap.server.core.query.input.TopNCondition;
@@ -45,6 +47,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Set;
 
+@Slf4j
 public class BanyanDBAggregationQueryDAO extends AbstractBanyanDBDAO 
implements IAggregationQueryDAO {
     private static final Set<String> TAGS = ImmutableSet.of(Metrics.ENTITY_ID);
 
@@ -139,6 +142,11 @@ public class BanyanDBAggregationQueryDAO extends 
AbstractBanyanDBDAO implements
 
     List<SelectedRecord> directMetricsTopN(boolean isColdStage, TopNCondition 
condition, MetadataRegistry.Schema schema, String valueColumnName, 
MetadataRegistry.ColumnSpec valueColumnSpec,
                                            TimestampRange timestampRange, 
List<KeyValue> additionalConditions) throws IOException {
+        if (log.isDebugEnabled()
+            && condition.getScope().equals(Scope.Endpoint)) {
+            log.debug("Endpoint direct TopN query, TopNCondition: {}, 
AdditionalConditions: {}, TimestampRange: {}",
+            condition, additionalConditions, timestampRange);
+        }
         MeasureQueryResponse resp = queryDebuggable(isColdStage, schema, TAGS, 
Collections.singleton(valueColumnName),
                 timestampRange, new QueryBuilder<MeasureQuery>() {
                     @Override

Reply via email to