Skip to content

Commit 7b6ed02

Browse files
committed
add hits/misses for xref files
1 parent e5898cc commit 7b6ed02

File tree

1 file changed

+27
-6
lines changed

1 file changed

+27
-6
lines changed

opengrok-web/src/main/java/org/opengrok/web/PageConfig.java

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
*/
1919

2020
/*
21-
* Copyright (c) 2011, 2022, Oracle and/or its affiliates. All rights reserved.
21+
* Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
2222
* Portions Copyright (c) 2011, Jens Elkner.
2323
* Portions Copyright (c) 2017, 2020, Chris Fraire <[email protected]>.
2424
*/
@@ -56,6 +56,8 @@
5656
import java.util.regex.Pattern;
5757
import java.util.stream.Collectors;
5858

59+
import io.micrometer.core.instrument.Counter;
60+
import io.micrometer.core.instrument.MeterRegistry;
5961
import jakarta.servlet.ServletRequest;
6062
import jakarta.servlet.http.Cookie;
6163
import jakarta.servlet.http.HttpServletRequest;
@@ -64,6 +66,7 @@
6466
import org.jetbrains.annotations.Nullable;
6567
import org.jetbrains.annotations.VisibleForTesting;
6668
import org.opengrok.indexer.Info;
69+
import org.opengrok.indexer.Metrics;
6770
import org.opengrok.indexer.analysis.AbstractAnalyzer;
6871
import org.opengrok.indexer.analysis.AnalyzerGuru;
6972
import org.opengrok.indexer.analysis.ExpandTabsReader;
@@ -1199,15 +1202,33 @@ private static String trailingSlash(String path) {
11991202

12001203
@Nullable
12011204
private File checkFileInner(File file, File dir, String name) {
1202-
File f = new File(dir, name);
1203-
if (f.exists() && f.isFile()) {
1204-
if (f.lastModified() >= file.lastModified()) {
1205-
return f;
1205+
1206+
MeterRegistry meterRegistry = Metrics.getRegistry();
1207+
1208+
File xrefFile = new File(dir, name);
1209+
if (xrefFile.exists() && xrefFile.isFile()) {
1210+
if (xrefFile.lastModified() >= file.lastModified()) {
1211+
if (meterRegistry != null) {
1212+
Counter.builder("xref.file.get").
1213+
description("xref file get hits").
1214+
tag("what", "hits").
1215+
register(meterRegistry).
1216+
increment();
1217+
}
1218+
return xrefFile;
12061219
} else {
1207-
LOGGER.log(Level.WARNING, "file ''{0}'' is newer than ''{1}''", new Object[]{file, f});
1220+
LOGGER.log(Level.WARNING, "file ''{0}'' is newer than ''{1}''", new Object[]{file, xrefFile});
12081221
}
12091222
}
12101223

1224+
if (meterRegistry != null) {
1225+
Counter.builder("xref.file.get").
1226+
description("xref file get misses").
1227+
tag("what", "miss").
1228+
register(meterRegistry).
1229+
increment();
1230+
}
1231+
12111232
return null;
12121233
}
12131234

0 commit comments

Comments
 (0)