summaryrefslogtreecommitdiffstats
path: root/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java
diff options
context:
space:
mode:
Diffstat (limited to 'node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java19
1 files changed, 9 insertions, 10 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java
index c5c8d0e121d..2c0fa439000 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java
@@ -4,7 +4,6 @@ package com.yahoo.vespa.hosted.node.admin.maintenance.coredump;
import com.yahoo.vespa.hosted.node.admin.container.ContainerOperations;
import com.yahoo.vespa.hosted.node.admin.nodeadmin.ConvergenceException;
import com.yahoo.vespa.hosted.node.admin.nodeagent.NodeAgentContext;
-import com.yahoo.vespa.hosted.node.admin.task.util.fs.ContainerPath;
import com.yahoo.vespa.hosted.node.admin.task.util.process.CommandResult;
import java.nio.file.Path;
@@ -57,8 +56,8 @@ public class CoreCollector {
return GDB_PATH_RHEL8;
}
- String readBinPathFallback(NodeAgentContext context, ContainerPath coredumpPath) {
- String command = getGdbPath(context) + " -n -batch -core " + coredumpPath.pathInContainer() + " | grep \'^Core was generated by\'";
+ String readBinPathFallback(NodeAgentContext context, Path coredumpPath) {
+ String command = getGdbPath(context) + " -n -batch -core " + coredumpPath + " | grep \'^Core was generated by\'";
String[] wrappedCommand = {"/bin/sh", "-c", command};
CommandResult result = docker.executeCommandInContainerAsRoot(context, wrappedCommand);
@@ -70,8 +69,8 @@ public class CoreCollector {
return matcher.group("path").split(" ")[0];
}
- String readBinPath(NodeAgentContext context, ContainerPath coredumpPath) {
- String[] command = {"file", coredumpPath.pathInContainer()};
+ String readBinPath(NodeAgentContext context, Path coredumpPath) {
+ String[] command = {"file", coredumpPath.toString()};
try {
CommandResult result = docker.executeCommandInContainerAsRoot(context, command);
if (result.getExitCode() != 0) {
@@ -95,9 +94,9 @@ public class CoreCollector {
return readBinPathFallback(context, coredumpPath);
}
- List<String> readBacktrace(NodeAgentContext context, ContainerPath coredumpPath, String binPath, boolean allThreads) {
+ List<String> readBacktrace(NodeAgentContext context, Path coredumpPath, String binPath, boolean allThreads) {
String threads = allThreads ? "thread apply all bt" : "bt";
- String[] command = {getGdbPath(context), "-n", "-ex", threads, "-batch", binPath, coredumpPath.pathInContainer()};
+ String[] command = {getGdbPath(context), "-n", "-ex", threads, "-batch", binPath, coredumpPath.toString()};
CommandResult result = docker.executeCommandInContainerAsRoot(context, command);
if (result.getExitCode() != 0)
@@ -106,8 +105,8 @@ public class CoreCollector {
return List.of(result.getOutput().split("\n"));
}
- List<String> readJstack(NodeAgentContext context, ContainerPath coredumpPath, String binPath) {
- String[] command = {"jhsdb", "jstack", "--exe", binPath, "--core", coredumpPath.pathInContainer()};
+ List<String> readJstack(NodeAgentContext context, Path coredumpPath, String binPath) {
+ String[] command = {"jhsdb", "jstack", "--exe", binPath, "--core", coredumpPath.toString()};
CommandResult result = docker.executeCommandInContainerAsRoot(context, command);
if (result.getExitCode() != 0)
@@ -122,7 +121,7 @@ public class CoreCollector {
* @param coredumpPath path to core dump file inside the container
* @return map of relevant metadata about the core dump
*/
- Map<String, Object> collect(NodeAgentContext context, ContainerPath coredumpPath) {
+ Map<String, Object> collect(NodeAgentContext context, Path coredumpPath) {
if (JAVA_HEAP_DUMP_PATTERN.matcher(coredumpPath.getFileName().toString()).find())
return JAVA_HEAP_DUMP_METADATA;