@Hidden public interface DataflowPipelineDebugOptions extends ExperimentalOptions, PipelineOptions
Modifier and Type | Interface and Description |
---|---|
static class |
DataflowPipelineDebugOptions.DataflowClientFactory
Returns the default Dataflow client built from the passed in PipelineOptions.
|
static class |
DataflowPipelineDebugOptions.StagerFactory
Creates a
Stager object using the class specified in getStagerClass() . |
PipelineOptions.AtomicLongFactory, PipelineOptions.CheckEnabled, PipelineOptions.DirectRunner, PipelineOptions.JobNameFactory, PipelineOptions.UserAgentFactory
STATE_CACHE_SIZE, STATE_SAMPLING_PERIOD_MILLIS
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getApiRootUrl()
The root URL for the Dataflow API.
|
Dataflow |
getDataflowClient()
An instance of the Dataflow client.
|
java.lang.String |
getDataflowEndpoint()
Dataflow endpoint to use.
|
java.lang.String |
getDataflowJobFile()
The path to write the translated Dataflow job specification out to at job submission time.
|
boolean |
getDumpHeapOnOOM()
If true, save a heap dump before killing a thread or process which is GC thrashing
or out of memory.
|
java.lang.Double |
getGCThrashingPercentagePerPeriod()
The GC thrashing threshold percentage.
|
int |
getJfrRecordingDurationSec() |
int |
getMaxBundlesFromWindmillOutstanding()
Maximum number of bundles outstanding from windmill before the worker stops requesting.
|
long |
getMaxBytesFromWindmillOutstanding()
Maximum number of bytes outstanding from windmill before the worker stops requesting.
|
int |
getNumberOfWorkerHarnessThreads()
Number of threads to use on the Dataflow worker harness.
|
java.lang.String |
getOverrideWindmillBinary()
Custom windmill_main binary to use with the streaming runner.
|
java.lang.Integer |
getReaderCacheTimeoutSec()
The amount of time before UnboundedReaders are considered idle and closed during streaming
execution.
|
boolean |
getRecordJfrOnGcThrashing()
If true, save a JFR profile when GC thrashing is first detected.
|
java.lang.String |
getSaveHeapDumpsToGcsPath()
CAUTION: This option implies dumpHeapOnOOM, and has similar caveats.
|
java.lang.String |
getSdkHarnessContainerImageOverrides()
Overrides for SDK harness container images.
|
Stager |
getStager()
The resource stager instance that should be used to stage resources.
|
java.lang.Class<? extends Stager> |
getStagerClass()
The class responsible for staging resources to be accessible by workers during job execution.
|
java.util.Map<java.lang.String,java.lang.String> |
getTransformNameMapping()
Mapping of old PTranform names to new ones, specified as JSON
{"oldName":"newName",...}
. |
java.lang.Integer |
getUnboundedReaderMaxElements()
The max elements read from an UnboundedReader before checkpointing.
|
java.lang.Integer |
getUnboundedReaderMaxReadTimeSec()
The max amount of time an UnboundedReader is consumed before checkpointing.
|
java.lang.Integer |
getUnboundedReaderMaxWaitForElementsMs()
The max amount of time waiting for elements when reading from UnboundedReader.
|
java.lang.String |
getWindmillServiceEndpoint()
Custom windmill service endpoint.
|
int |
getWindmillServicePort() |
java.lang.Integer |
getWorkerCacheMb()
The size of the worker's in-memory cache, in megabytes.
|
void |
setApiRootUrl(java.lang.String value) |
void |
setDataflowClient(Dataflow value) |
void |
setDataflowEndpoint(java.lang.String value) |
void |
setDataflowJobFile(java.lang.String value) |
void |
setDumpHeapOnOOM(boolean dumpHeapBeforeExit) |
void |
setGCThrashingPercentagePerPeriod(java.lang.Double value) |
void |
setJfrRecordingDurationSec(int value) |
void |
setMaxBundlesFromWindmillOutstanding(int value) |
void |
setMaxBytesFromWindmillOutstanding(long value) |
void |
setNumberOfWorkerHarnessThreads(int value) |
void |
setOverrideWindmillBinary(java.lang.String value) |
void |
setReaderCacheTimeoutSec(java.lang.Integer value) |
void |
setRecordJfrOnGcThrashing(boolean value) |
void |
setSaveHeapDumpsToGcsPath(java.lang.String gcsPath) |
void |
setSdkHarnessContainerImageOverrides(java.lang.String value) |
void |
setStager(Stager stager) |
void |
setStagerClass(java.lang.Class<? extends Stager> stagerClass) |
void |
setTransformNameMapping(java.util.Map<java.lang.String,java.lang.String> value) |
void |
setUnboundedReaderMaxElements(java.lang.Integer value) |
void |
setUnboundedReaderMaxReadTimeSec(java.lang.Integer value) |
void |
setUnboundedReaderMaxWaitForElementsMs(java.lang.Integer value) |
void |
setWindmillServiceEndpoint(java.lang.String value) |
void |
setWindmillServicePort(int value) |
void |
setWorkerCacheMb(java.lang.Integer value) |
addExperiment, getExperiments, getExperimentValue, hasExperiment, setExperiments
as, getJobName, getOptionsId, getRunner, getStableUniqueNames, getTempLocation, getUserAgent, outputRuntimeOptions, setJobName, setOptionsId, setRunner, setStableUniqueNames, setTempLocation, setUserAgent
populateDisplayData
@Default.String(value="https://dataflow.googleapis.com/") java.lang.String getApiRootUrl()
dataflowEndpoint
can override this value if it
contains an absolute URL, otherwise apiRootUrl
will be combined with dataflowEndpoint
to generate the full URL to communicate with the Dataflow API.void setApiRootUrl(java.lang.String value)
@Default.String(value="") java.lang.String getDataflowEndpoint()
Defaults to the current version of the Google Cloud Dataflow API, at the time the current SDK version was released.
If the string contains "://", then this is treated as a URL, otherwise getApiRootUrl()
is used as the root URL.
void setDataflowEndpoint(java.lang.String value)
java.lang.String getDataflowJobFile()
void setDataflowJobFile(java.lang.String value)
@Default.Class(value=GcsStager.class) java.lang.Class<? extends Stager> getStagerClass()
void setStagerClass(java.lang.Class<? extends Stager> stagerClass)
@Default.InstanceFactory(value=DataflowPipelineDebugOptions.StagerFactory.class) Stager getStager()
void setStager(Stager stager)
@Default.InstanceFactory(value=DataflowPipelineDebugOptions.DataflowClientFactory.class) Dataflow getDataflowClient()
void setDataflowClient(Dataflow value)
java.util.Map<java.lang.String,java.lang.String> getTransformNameMapping()
{"oldName":"newName",...}
. To mark a transform as deleted, make newName the empty string.void setTransformNameMapping(java.util.Map<java.lang.String,java.lang.String> value)
java.lang.String getOverrideWindmillBinary()
void setOverrideWindmillBinary(java.lang.String value)
java.lang.String getWindmillServiceEndpoint()
void setWindmillServiceEndpoint(java.lang.String value)
@Default.Integer(value=443) int getWindmillServicePort()
void setWindmillServicePort(int value)
int getNumberOfWorkerHarnessThreads()
void setNumberOfWorkerHarnessThreads(int value)
@Default.Integer(value=0) int getMaxBundlesFromWindmillOutstanding()
If <= 0, use the default value of 100 + getNumberOfWorkerHarnessThreads()
void setMaxBundlesFromWindmillOutstanding(int value)
@Default.Long(value=0L) long getMaxBytesFromWindmillOutstanding()
If <= 0, use the default value of 50% of jvm memory.
void setMaxBytesFromWindmillOutstanding(long value)
boolean getDumpHeapOnOOM()
CAUTION: Heap dumps can of comparable size to the default boot disk. Consider increasing the boot disk size before setting this flag to true.
void setDumpHeapOnOOM(boolean dumpHeapBeforeExit)
boolean getRecordJfrOnGcThrashing()
Note, JFR profiles are only supported on java 9 and up.
void setRecordJfrOnGcThrashing(boolean value)
@Default.Integer(value=60) int getJfrRecordingDurationSec()
void setJfrRecordingDurationSec(int value)
@Default.Double(value=50.0) java.lang.Double getGCThrashingPercentagePerPeriod()
If 100 is given as the value, MemoryMonitor will be disabled.
void setGCThrashingPercentagePerPeriod(java.lang.Double value)
@Default.Integer(value=100) java.lang.Integer getWorkerCacheMb()
Currently, this cache is used for storing read values of side inputs. as well as the state for streaming jobs.
void setWorkerCacheMb(java.lang.Integer value)
@Default.Integer(value=60) java.lang.Integer getReaderCacheTimeoutSec()
void setReaderCacheTimeoutSec(java.lang.Integer value)
@Default.Integer(value=10) java.lang.Integer getUnboundedReaderMaxReadTimeSec()
void setUnboundedReaderMaxReadTimeSec(java.lang.Integer value)
@Default.Integer(value=10000) java.lang.Integer getUnboundedReaderMaxElements()
void setUnboundedReaderMaxElements(java.lang.Integer value)
@Default.Integer(value=1000) java.lang.Integer getUnboundedReaderMaxWaitForElementsMs()
void setUnboundedReaderMaxWaitForElementsMs(java.lang.Integer value)
@Experimental java.lang.String getSaveHeapDumpsToGcsPath()
void setSaveHeapDumpsToGcsPath(java.lang.String gcsPath)
java.lang.String getSdkHarnessContainerImageOverrides()
void setSdkHarnessContainerImageOverrides(java.lang.String value)