summaryrefslogtreecommitdiff
path: root/core/src/main/java/org/elasticsearch
diff options
context:
space:
mode:
authorAndreas Gebhardt <agebhar1@googlemail.com>2017-06-28 18:20:20 +0200
committerLuca Cavanna <javanna@users.noreply.github.com>2017-06-28 18:20:20 +0200
commita156ccd80ed7ef2dcc26b2ff1e9b6c9d5a831092 (patch)
tree6aab685d44fdd3a3abfa21dbb364839d25c20b67 /core/src/main/java/org/elasticsearch
parent5f8be0e090f788d9132c2c371f3ecb9c4129bd8e (diff)
Expand `/_cat/nodes` to return information about hard drive (#21775)
Expand `/_cat/nodes` with already present information about available disk space `diskAvail` (alias: `d`, `disk`) by: * `diskTotal` (alias `dt`): total disk space * `diskUsed` (alias `du`): used disk space (`diskTotal - diskAvail`) * `diskUsedPercent` (alias `dup`): used disk space percentage Note: The available disk space is the number of bytes available to the node's Java virtual machine. The size might be smaller than the real one. That means the used disk space (percentage) is larger. Closes #21679
Diffstat (limited to 'core/src/main/java/org/elasticsearch')
-rw-r--r--core/src/main/java/org/elasticsearch/rest/action/cat/RestNodesAction.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/core/src/main/java/org/elasticsearch/rest/action/cat/RestNodesAction.java b/core/src/main/java/org/elasticsearch/rest/action/cat/RestNodesAction.java
index 104ffe420a..07f39b54f6 100644
--- a/core/src/main/java/org/elasticsearch/rest/action/cat/RestNodesAction.java
+++ b/core/src/main/java/org/elasticsearch/rest/action/cat/RestNodesAction.java
@@ -35,6 +35,7 @@ import org.elasticsearch.common.Table;
import org.elasticsearch.common.network.NetworkAddress;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.TransportAddress;
+import org.elasticsearch.common.unit.ByteSizeValue;
import org.elasticsearch.http.HttpInfo;
import org.elasticsearch.index.cache.query.QueryCacheStats;
import org.elasticsearch.index.cache.request.RequestCacheStats;
@@ -124,7 +125,10 @@ public class RestNodesAction extends AbstractCatAction {
table.addCell("version", "default:false;alias:v;desc:es version");
table.addCell("build", "default:false;alias:b;desc:es build hash");
table.addCell("jdk", "default:false;alias:j;desc:jdk version");
- table.addCell("disk.avail", "default:false;alias:d,disk,diskAvail;text-align:right;desc:available disk space");
+ table.addCell("disk.total", "default:false;alias:dt,diskTotal;text-align:right;desc:total disk space");
+ table.addCell("disk.used", "default:false;alias:du,diskUsed;text-align:right;desc:used disk space");
+ table.addCell("disk.avail", "default:false;alias:d,da,disk,diskAvail;text-align:right;desc:available disk space");
+ table.addCell("disk.used_percent", "default:false;alias:dup,diskUsedPercent;text-align:right;desc:used disk space percentage");
table.addCell("heap.current", "default:false;alias:hc,heapCurrent;text-align:right;desc:used heap");
table.addCell("heap.percent", "alias:hp,heapPercent;text-align:right;desc:used heap ratio");
table.addCell("heap.max", "default:false;alias:hm,heapMax;text-align:right;desc:max configured heap");
@@ -267,7 +271,15 @@ public class RestNodesAction extends AbstractCatAction {
table.addCell(node.getVersion().toString());
table.addCell(info == null ? null : info.getBuild().shortHash());
table.addCell(jvmInfo == null ? null : jvmInfo.version());
+
+ long diskTotal = fsInfo.getTotal().getTotal().getBytes();
+ long diskUsed = diskTotal - fsInfo.getTotal().getAvailable().getBytes();
+ double diskUsedRatio = diskTotal == 0 ? 1.0 : (double) diskUsed / diskTotal;
+ table.addCell(fsInfo == null ? null : fsInfo.getTotal().getTotal());
+ table.addCell(fsInfo == null ? null : new ByteSizeValue(diskUsed));
table.addCell(fsInfo == null ? null : fsInfo.getTotal().getAvailable());
+ table.addCell(fsInfo == null ? null : String.format(Locale.ROOT, "%.2f", 100.0 * diskUsedRatio));
+
table.addCell(jvmStats == null ? null : jvmStats.getMem().getHeapUsed());
table.addCell(jvmStats == null ? null : jvmStats.getMem().getHeapUsedPercent());
table.addCell(jvmInfo == null ? null : jvmInfo.getMem().getHeapMax());