@Experimental(value=PORTABILITY) public interface SdkHarnessOptions extends PipelineOptions
| Modifier and Type | Interface and Description | 
|---|---|
| static class  | SdkHarnessOptions.DefaultMaxCacheMemoryUsageMbThe default implementation which detects how much memory to use for a process wide cache. | 
| static class  | SdkHarnessOptions.DefaultMaxCacheMemoryUsageMbFactoryA  DefaultValueFactorywhich constructs an instance of the class specified bymaxCacheMemoryUsageMbClassto compute the maximum amount of
 memory to allocate to the process wide cache within an SDK harness instance. | 
| static class  | SdkHarnessOptions.LogLevelThe set of log levels that can be used in the SDK harness. | 
| static interface  | SdkHarnessOptions.MaxCacheMemoryUsageMbSpecifies the maximum amount of memory to use within the current SDK harness instance. | 
| static class  | SdkHarnessOptions.SdkHarnessLogLevelOverridesDefines a log level override for a specific class, package, or name. | 
PipelineOptions.AtomicLongFactory, PipelineOptions.CheckEnabled, PipelineOptions.DirectRunner, PipelineOptions.JobNameFactory, PipelineOptions.UserAgentFactory| Modifier and Type | Method and Description | 
|---|---|
| SdkHarnessOptions.LogLevel | getDefaultSdkHarnessLogLevel()This option controls the default log level of all loggers without a log level override. | 
| int | getGroupingTableMaxSizeMb()Size (in MB) of each grouping table used to pre-combine elements. | 
| @NonNegative int | getMaxCacheMemoryUsageMb()Size (in MB) for the process wide cache within the SDK harness. | 
| java.lang.Class<? extends SdkHarnessOptions.MaxCacheMemoryUsageMb> | getMaxCacheMemoryUsageMbClass()An instance of this class will be used to specify the maximum amount of memory to allocate to a
 cache within an SDK harness instance. | 
| @NonNegative float | getMaxCacheMemoryUsagePercent()Size (in % [0 - 100]) for the process wide cache within the SDK harness. | 
| SdkHarnessOptions.SdkHarnessLogLevelOverrides | getSdkHarnessLogLevelOverrides()This option controls the log levels for specifically named loggers. | 
| void | setDefaultSdkHarnessLogLevel(SdkHarnessOptions.LogLevel logLevel) | 
| void | setGroupingTableMaxSizeMb(int value) | 
| void | setMaxCacheMemoryUsageMb(@NonNegative int value) | 
| void | setMaxCacheMemoryUsageMbClass(java.lang.Class<? extends SdkHarnessOptions.MaxCacheMemoryUsageMb> kls) | 
| void | setMaxCacheMemoryUsagePercent(@NonNegative float value) | 
| void | setSdkHarnessLogLevelOverrides(SdkHarnessOptions.SdkHarnessLogLevelOverrides value) | 
as, getJobName, getOptionsId, getRunner, getStableUniqueNames, getTempLocation, getUserAgent, outputRuntimeOptions, setJobName, setOptionsId, setRunner, setStableUniqueNames, setTempLocation, setUserAgentpopulateDisplayData@Default.Enum(value="INFO") SdkHarnessOptions.LogLevel getDefaultSdkHarnessLogLevel()
void setDefaultSdkHarnessLogLevel(SdkHarnessOptions.LogLevel logLevel)
SdkHarnessOptions.SdkHarnessLogLevelOverrides getSdkHarnessLogLevelOverrides()
Later options with equivalent names override earlier options.
See SdkHarnessOptions.SdkHarnessLogLevelOverrides for more information on how to configure logging on
 a per Class, Package, or name basis. If used from the command line, the
 expected format is {"Name":"LogLevel",...}, further details on SdkHarnessOptions.SdkHarnessLogLevelOverrides.from(java.util.Map<java.lang.String, java.lang.String>).
void setSdkHarnessLogLevelOverrides(SdkHarnessOptions.SdkHarnessLogLevelOverrides value)
@Default.Integer(value=100) int getGroupingTableMaxSizeMb()
CAUTION: If set too large, workers may run into OOM conditions more easily, each worker may have many grouping tables in-memory concurrently.
void setGroupingTableMaxSizeMb(int value)
@Default.InstanceFactory(value=SdkHarnessOptions.DefaultMaxCacheMemoryUsageMbFactory.class) @NonNegative int getMaxCacheMemoryUsageMb()
CAUTION: If set too large, SDK harness instances may run into OOM conditions more easily.
See SdkHarnessOptions.DefaultMaxCacheMemoryUsageMbFactory for details on how maxCacheMemoryUsageMb is computed if this parameter is
 unspecified.
void setMaxCacheMemoryUsageMb(@NonNegative int value)
@Default.Float(value=20.0f) @NonNegative float getMaxCacheMemoryUsagePercent()
This parameter will only be used if an explicit value was not specified for maxCacheMemoryUsageMb.
void setMaxCacheMemoryUsagePercent(@NonNegative float value)
@Default.Class(value=SdkHarnessOptions.DefaultMaxCacheMemoryUsageMb.class) java.lang.Class<? extends SdkHarnessOptions.MaxCacheMemoryUsageMb> getMaxCacheMemoryUsageMbClass()
This parameter will only be used if an explicit value was not specified for maxCacheMemoryUsageMb.
 
See SdkHarnessOptions.DefaultMaxCacheMemoryUsageMb for details on how maxCacheMemoryUsageMb is computed if this parameter is
 unspecified.
void setMaxCacheMemoryUsageMbClass(java.lang.Class<? extends SdkHarnessOptions.MaxCacheMemoryUsageMb> kls)