in geronimo-metrics-extensions/geronimo-metrics-sigar/src/main/java/org/apache/geronimo/microprofile/metrics/extension/sigar/SigarRegistrar.java [152:184]
private void addFileSystem(final Collection<Definition> definitions) {
try {
Stream.of(sigar.getFileSystemList())
.filter(it -> !it.getDirName().startsWith("/sys") &&
!it.getDirName().startsWith("/dev") &&
!it.getDirName().startsWith("/proc") &&
!it.getDirName().startsWith("/run") &&
!it.getDirName().startsWith("/snap"))
.map(FileSystem::getDevName)
.distinct()
.forEach(devName -> {
final String baseName = "sigar.net.disk." + devName.replace('/', '_').replaceFirst("^_", "") + ".";
definitions.add(new Definition(
baseName + "read.count", devName + " Reads",
"Reads on " + devName, "count",
() -> sigar.getDiskUsage(devName).getReads()));
definitions.add(new Definition(
baseName + "write.count", devName + " Writes",
"Writes on " + devName, "count",
() -> sigar.getDiskUsage(devName).getWrites()));
definitions.add(new Definition(
baseName + "read.bytes", devName + " Reads",
"Reads on " + devName, "bytes",
() -> sigar.getDiskUsage(devName).getReadBytes()));
definitions.add(new Definition(
baseName + "write.bytes", devName + " Writes",
"Writes on " + devName, "bytes",
() -> sigar.getDiskUsage(devName).getWriteBytes()));
});
} catch (final SigarException e) {
// no-op
}
}