Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions server/src/main/java/org/elasticsearch/monitor/Probes.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,29 @@

package org.elasticsearch.monitor;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import java.lang.management.OperatingSystemMXBean;
import java.lang.reflect.Method;

public class Probes {
private static final Logger logger = LogManager.getLogger(Probes.class);

public static short getLoadAndScaleToPercent(Method method, OperatingSystemMXBean osMxBean) {
logger.debug("Starting probe of method {} on osMxBean {}", method, osMxBean);
if (method != null) {
try {
double load = (double) method.invoke(osMxBean);
if (load >= 0) {
return (short) (load * 100);
}
} catch (Exception e) {
logger.info(() -> "failed to invoke method [" + method + "] on osMxBean [" + osMxBean + "]", e);
return -1;
}
}
logger.debug("Method is null. Returning default value.");
return -1;
}
}