浏览代码

Trace Log Upload Timing in BlobStoreRepository (#84221)

We want more information on the write latencies. Lets trace log
the timing on uploading data blobs which involve almost no CPU during
uploading to gather some data.
Armin Braun 3 年之前
父节点
当前提交
64edfe7df5
共有 1 个文件被更改,包括 10 次插入1 次删除
  1. 10 1
      server/src/main/java/org/elasticsearch/repositories/blobstore/BlobStoreRepository.java

+ 10 - 1
server/src/main/java/org/elasticsearch/repositories/blobstore/BlobStoreRepository.java

@@ -3475,8 +3475,17 @@ public abstract class BlobStoreRepository extends AbstractLifecycleComponent imp
                     }
                 };
                 final String partName = fileInfo.partName(i);
-                logger.trace(() -> new ParameterizedMessage("[{}] Writing [{}] to [{}]", metadata.name(), partName, shardContainer.path()));
+                logger.trace("[{}] Writing [{}] to [{}]", metadata.name(), partName, shardContainer.path());
+                final long startMS = threadPool.relativeTimeInMillis();
                 shardContainer.writeBlob(partName, inputStream, partBytes, false);
+                logger.trace(
+                    "[{}] Writing [{}] of size [{}b] to [{}] took [{}ms]",
+                    metadata.name(),
+                    partName,
+                    partBytes,
+                    shardContainer.path(),
+                    threadPool.relativeTimeInMillis() - startMS
+                );
             }
             Store.verify(indexInput);
             snapshotStatus.addProcessedFile(fileInfo.length());