You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by si...@apache.org on 2018/12/12 01:20:56 UTC

[bookkeeper] branch master updated: [STATS] [DOC] Add @StatsDoc annotation for interleaved ledger storage stats

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 132ecd7  [STATS] [DOC] Add @StatsDoc annotation for interleaved ledger storage stats
132ecd7 is described below

commit 132ecd74906d2336c31eaaa9ceb529c5cf26efdc
Author: Sijie Guo <gu...@gmail.com>
AuthorDate: Wed Dec 12 09:20:52 2018 +0800

    [STATS] [DOC] Add @StatsDoc annotation for interleaved ledger storage stats
    
    Descriptions of the changes in this PR:
    
    *Motivation*
    
    As part of [BP-36](https://github.com/apache/bookkeeper/issues/1785), this PR is to document interleaved ledger storage stats.
    
    *Changes*
    
    - convert interleaved ledger storage stats to use StatsDoc for documenting metrics
    
    Master Issue: #1785
    
    
    
    
    Reviewers: Enrico Olivelli <eo...@gmail.com>
    
    This closes #1877 from sijie/interleaved_stats
---
 .../bookkeeper/bookie/InterleavedLedgerStorage.java  | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java
index 4a96ece..0a0e60d 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/InterleavedLedgerStorage.java
@@ -22,6 +22,9 @@
 package org.apache.bookkeeper.bookie;
 
 import static com.google.common.base.Preconditions.checkNotNull;
+import static org.apache.bookkeeper.bookie.BookKeeperServerStats.BOOKIE_READ_ENTRY;
+import static org.apache.bookkeeper.bookie.BookKeeperServerStats.BOOKIE_SCOPE;
+import static org.apache.bookkeeper.bookie.BookKeeperServerStats.CATEGORY_SERVER;
 import static org.apache.bookkeeper.bookie.BookKeeperServerStats.ENTRYLOGGER_SCOPE;
 import static org.apache.bookkeeper.bookie.BookKeeperServerStats.STORAGE_GET_ENTRY;
 import static org.apache.bookkeeper.bookie.BookKeeperServerStats.STORAGE_GET_OFFSET;
@@ -53,6 +56,7 @@ import org.apache.bookkeeper.meta.LedgerManager;
 import org.apache.bookkeeper.proto.BookieProtocol;
 import org.apache.bookkeeper.stats.OpStatsLogger;
 import org.apache.bookkeeper.stats.StatsLogger;
+import org.apache.bookkeeper.stats.annotations.StatsDoc;
 import org.apache.bookkeeper.util.MathUtils;
 import org.apache.bookkeeper.util.SnapshotMap;
 import org.apache.commons.lang.mutable.MutableBoolean;
@@ -66,6 +70,11 @@ import org.slf4j.LoggerFactory;
  * <p>This ledger storage implementation stores all entries in a single
  * file and maintains an index file for each ledger.
  */
+@StatsDoc(
+    name = BOOKIE_SCOPE,
+    category = CATEGORY_SERVER,
+    help = "Bookie related stats"
+)
 public class InterleavedLedgerStorage implements CompactableLedgerStorage, EntryLogListener {
     private static final Logger LOG = LoggerFactory.getLogger(InterleavedLedgerStorage.class);
 
@@ -88,7 +97,18 @@ public class InterleavedLedgerStorage implements CompactableLedgerStorage, Entry
     private final AtomicBoolean somethingWritten = new AtomicBoolean(false);
 
     // Expose Stats
+    @StatsDoc(
+        name = STORAGE_GET_OFFSET,
+        help = "Operation stats of getting offset from ledger cache",
+        parent = BOOKIE_READ_ENTRY
+    )
     private OpStatsLogger getOffsetStats;
+    @StatsDoc(
+        name = STORAGE_GET_ENTRY,
+        help = "Operation stats of getting entry from entry logger",
+        parent = BOOKIE_READ_ENTRY,
+        happensAfter = STORAGE_GET_OFFSET
+    )
     private OpStatsLogger getEntryStats;
     private OpStatsLogger pageScanStats;