Class LocalAgentLauncherImpl

java.lang.Object
com.netflix.genie.web.agent.launchers.impl.LocalAgentLauncherImpl
All Implemented Interfaces:
AgentLauncher, org.springframework.boot.actuate.health.HealthContributor, org.springframework.boot.actuate.health.HealthIndicator

public class LocalAgentLauncherImpl extends Object implements AgentLauncher
Implementation of AgentLauncher which launched Agent instances on the local Genie hardware.
Since:
4.0.0
  • Constructor Details

    • LocalAgentLauncherImpl

      public LocalAgentLauncherImpl(GenieWebHostInfo hostInfo, GenieWebRpcInfo rpcInfo, DataServices dataServices, LocalAgentLauncherProperties launcherProperties, ExecutorFactory executorFactory, com.netflix.genie.common.internal.tracing.brave.BraveTracingComponents tracingComponents, io.micrometer.core.instrument.MeterRegistry registry)
      Constructor.
      Parameters:
      hostInfo - The GenieWebHostInfo instance
      rpcInfo - The GenieWebRpcInfo instance
      dataServices - The DataServices encapsulation instance to use
      launcherProperties - The properties from the configuration that control agent behavior
      executorFactory - A ExecutorFactory to create Executor instances
      tracingComponents - The BraveTracingComponents instance to use
      registry - Metrics repository
  • Method Details

    • launchAgent

      public Optional<com.fasterxml.jackson.databind.JsonNode> launchAgent(@Valid @Valid ResolvedJob resolvedJob, @Nullable com.fasterxml.jackson.databind.JsonNode requestedLauncherExt) throws AgentLaunchException
      Launch an agent to execute the given ResolvedJob information.
      Specified by:
      launchAgent in interface AgentLauncher
      Parameters:
      resolvedJob - The ResolvedJob information for the agent to act on
      requestedLauncherExt - The launcher requested extension, or null
      Returns:
      an optional JsonNode with the launcher context about the launched job
      Throws:
      AgentLaunchException - For any error launching an Agent instance to run the job
    • health

      public org.springframework.boot.actuate.health.Health health()
      Specified by:
      health in interface org.springframework.boot.actuate.health.HealthIndicator