summaryrefslogtreecommitdiffstats
path: root/node-admin
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2021-10-13 12:34:25 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2021-10-13 14:12:41 +0200
commit74df86e04f42914589ff5b04404a30d118282479 (patch)
tree3a3fec275b348881f59781355489afbb02528195 /node-admin
parentd1aa1696df99be0841bcdacec6dd8b6882c4410b (diff)
Add extra helper methods and new option
Diffstat (limited to 'node-admin')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ArtifactProducer.java3
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ServiceDumpReport.java7
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImpl.java16
3 files changed, 25 insertions, 1 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ArtifactProducer.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ArtifactProducer.java
index 6afa44bcf58..e4a9e6aeea5 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ArtifactProducer.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ArtifactProducer.java
@@ -23,11 +23,14 @@ interface ArtifactProducer {
int servicePid();
CommandResult executeCommandInNode(List<String> command, boolean logOutput);
Path outputDirectoryInNode();
+ Path pathInNodeUnderVespaHome(String relativePath);
+ Path pathOnHostFromPathInNode(Path pathInNode);
Options options();
interface Options {
OptionalDouble duration();
boolean callGraphRecording();
+ boolean sendProfilingSignal();
}
}
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ServiceDumpReport.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ServiceDumpReport.java
index 09fac496b19..452f786301b 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ServiceDumpReport.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/ServiceDumpReport.java
@@ -111,19 +111,24 @@ class ServiceDumpReport extends BaseReport {
private static final String CALL_GRAPH_RECORDING_FIELD = "callGraphRecording";
private static final String DURATION_FIELD = "duration";
+ private static final String SEND_PROFILING_SIGNAL_FIELD = "sendProfilingSignal";
private final Boolean callGraphRecording;
private final Double duration;
+ private final Boolean sendProfilingSignal;
@JsonCreator
public DumpOptions(@JsonProperty(CALL_GRAPH_RECORDING_FIELD) Boolean callGraphRecording,
- @JsonProperty(DURATION_FIELD) Double duration) {
+ @JsonProperty(DURATION_FIELD) Double duration,
+ @JsonProperty(SEND_PROFILING_SIGNAL_FIELD) Boolean sendProfilingSignal) {
this.callGraphRecording = callGraphRecording;
this.duration = duration;
+ this.sendProfilingSignal = sendProfilingSignal;
}
@JsonGetter(CALL_GRAPH_RECORDING_FIELD) public Boolean callGraphRecording() { return callGraphRecording; }
@JsonGetter(DURATION_FIELD) public Double duration() { return duration; }
+ @JsonGetter(SEND_PROFILING_SIGNAL_FIELD) public Boolean sendProfilingSignal() { return sendProfilingSignal; }
}
@JsonIgnore public boolean isCompletedOrFailed() { return !isNullTimestamp(failedAt) || !isNullTimestamp(completedAt); }
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImpl.java
index 3fcaf0922a6..b4f2569c86f 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImpl.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImpl.java
@@ -223,6 +223,17 @@ public class VespaServiceDumperImpl implements VespaServiceDumper {
}
@Override public Path outputDirectoryInNode() { return outputDirectoryInNode; }
+
+ @Override
+ public Path pathInNodeUnderVespaHome(String relativePath) {
+ return nodeAgentCtx.pathInNodeUnderVespaHome(relativePath);
+ }
+
+ @Override
+ public Path pathOnHostFromPathInNode(Path pathInNode) {
+ return nodeAgentCtx.pathOnHostFromPathInNode(pathInNode);
+ }
+
@Override public Options options() { return this; }
@Override
@@ -238,6 +249,11 @@ public class VespaServiceDumperImpl implements VespaServiceDumper {
return dumpOptions().map(ServiceDumpReport.DumpOptions::callGraphRecording).orElse(false);
}
+ @Override
+ public boolean sendProfilingSignal() {
+ return dumpOptions().map(ServiceDumpReport.DumpOptions::sendProfilingSignal).orElse(false);
+ }
+
Optional<ServiceDumpReport.DumpOptions> dumpOptions() { return Optional.ofNullable(request.dumpOptions()); }
}
}