Merge "Adapt to changed API in Gerrit core for creating metric fields (part 2)"
diff --git a/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java b/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java
index bcbd429..071f782 100644
--- a/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java
+++ b/java/com/google/gerrit/plugins/checks/CombinedCheckStateCache.java
@@ -24,6 +24,7 @@
 import com.google.common.flogger.FluentLogger;
 import com.google.common.util.concurrent.AtomicLongMap;
 import com.google.gerrit.exceptions.StorageException;
+import com.google.gerrit.extensions.annotations.PluginName;
 import com.google.gerrit.metrics.Description;
 import com.google.gerrit.metrics.Description.Units;
 import com.google.gerrit.metrics.Field;
@@ -37,6 +38,7 @@
 import com.google.gerrit.server.cache.CacheModule;
 import com.google.gerrit.server.cache.serialize.EnumCacheSerializer;
 import com.google.gerrit.server.cache.serialize.ProtobufSerializer;
+import com.google.gerrit.server.logging.PluginMetadata;
 import com.google.inject.Inject;
 import com.google.inject.Module;
 import com.google.inject.Singleton;
@@ -80,14 +82,20 @@
     private final AtomicLongMap<Boolean> reloadCount;
 
     @Inject
-    Metrics(MetricMaker metricMaker) {
+    Metrics(@PluginName String pluginName, MetricMaker metricMaker) {
       reloadLatency =
           metricMaker.newTimer(
               "checks/reload_combined_check_state",
               new Description("Latency for reloading combined check state")
                   .setCumulative()
                   .setUnit(Units.MILLISECONDS),
-              Field.ofBoolean("updated")
+              Field.ofBoolean(
+                      "updated",
+                      (metadataBuilder, fieldValue) ->
+                          metadataBuilder
+                              .pluginName(pluginName)
+                              .addPluginMetadata(
+                                  PluginMetadata.create("updated", Boolean.toString(fieldValue))))
                   .description("whether reloading resulted in updating the cached value")
                   .build());
       reloadCount = AtomicLongMap.create();
diff --git a/java/com/google/gerrit/plugins/checks/db/CheckNotes.java b/java/com/google/gerrit/plugins/checks/db/CheckNotes.java
index ea58e9a..21996d3 100644
--- a/java/com/google/gerrit/plugins/checks/db/CheckNotes.java
+++ b/java/com/google/gerrit/plugins/checks/db/CheckNotes.java
@@ -16,9 +16,11 @@
 
 import com.google.common.collect.ImmutableMap;
 import com.google.gerrit.common.Nullable;
+import com.google.gerrit.extensions.annotations.PluginName;
 import com.google.gerrit.plugins.checks.CheckerRef;
 import com.google.gerrit.reviewdb.client.Change;
 import com.google.gerrit.reviewdb.client.Project;
+import com.google.gerrit.server.logging.Metadata;
 import com.google.gerrit.server.logging.TraceContext;
 import com.google.gerrit.server.logging.TraceContext.TraceTimer;
 import com.google.gerrit.server.notedb.AbstractChangeNotes;
@@ -37,6 +39,7 @@
     CheckNotes create(Change change);
   }
 
+  private final String pluginName;
   private final Change change;
 
   private ImmutableMap<ObjectId, NoteDbCheckMap> entities;
@@ -44,8 +47,9 @@
   private ObjectId metaId;
 
   @Inject
-  CheckNotes(Args args, @Assisted Change change) {
+  CheckNotes(Args args, @PluginName String pluginName, @Assisted Change change) {
     super(args, change.getId());
+    this.pluginName = pluginName;
     this.change = change;
   }
 
@@ -74,7 +78,12 @@
 
     try (TraceTimer ignored =
         TraceContext.newTimer(
-            "Load check notes", "changeId", getChangeId(), "projectName", getProjectName())) {
+            "Load check notes",
+            Metadata.builder()
+                .pluginName(pluginName)
+                .projectName(getProjectName().get())
+                .changeId(getChangeId().get())
+                .build())) {
       RevCommit tipCommit = handle.walk().parseCommit(metaId);
       ObjectReader reader = handle.walk().getObjectReader();
       revisionNoteMap =