public class SimulatedVanillaSoftwareProcessImpl extends VanillaSoftwareProcessImpl
VanillaSoftwareProcess
entity.
It is assumed that the ssh commands for install, launch, etc will be written with testability in mind.
For example, they might just be echo
statements, because there is insufficient resources to
run 100s of processes.
It is thus possible to simulate aspects of the behaviour, for performance and load testing purposes.
There is configuration for:
skipSshOnStart
simulateEntity
simulateExternalMonitoring
simulateEntity==true
it will execute comparable commands (e.g. execute a command of the same
size over ssh or do a comparable number of http GET requests).
simulateEntity==false
then normal monitoring will be done.
Modifier and Type | Class and Description |
---|---|
static class |
SimulatedVanillaSoftwareProcessImpl.SimulatedVanillaSoftwareProcessSshDriver |
SoftwareProcessImpl.ServiceNotUpDiagnosticsCollector, SoftwareProcessImpl.UpdatingNotUpFromServiceProcessIsRunning
AbstractEntity.BasicConfigurationSupport, AbstractEntity.BasicEnricherSupport, AbstractEntity.BasicGroupSupport, AbstractEntity.BasicPolicySupport, AbstractEntity.BasicSensorSupport, AbstractEntity.BasicSubscriptionSupport
SoftwareProcess.ChildStartableMode, SoftwareProcess.RestartSoftwareParameters, SoftwareProcess.StopSoftwareParameters
Entity.AdjunctSupport<T extends EntityAdjunct>, Entity.EnricherSupport, Entity.GroupSupport, Entity.PolicySupport, Entity.SensorSupport
BrooklynObject.RelationSupport<T extends BrooklynObject>, BrooklynObject.SubscriptionSupport, BrooklynObject.TagSupport
Configurable.ConfigurationSupport
Startable.RestartEffectorBody, Startable.StartEffectorBody, Startable.StopEffectorBody
EntityInternal.EnricherSupportInternal, EntityInternal.EntitySubscriptionSupportInternal, EntityInternal.FeedSupport, EntityInternal.GroupSupportInternal, EntityInternal.PolicySupportInternal, EntityInternal.SensorSupportInternal
BrooklynObjectInternal.ConfigurationSupportInternal, BrooklynObjectInternal.RelationSupportInternal<T extends BrooklynObject>, BrooklynObjectInternal.SubscriptionSupportInternal
Modifier and Type | Field and Description |
---|---|
static ConfigKey<java.lang.Boolean> |
EXEC_SSH_ON_START |
static ConfigKey<Duration> |
FUNCTION_FEED_POLL_PERIOD |
static ConfigKey<Duration> |
HTTP_FEED_POLL_PERIOD |
static ConfigKey<java.net.URI> |
HTTP_FEED_URI |
static ConfigKey<java.lang.Boolean> |
USE_SSH_MONITORING |
APPLICATION_ID, CATALOG_ID, CHILD_ADDED, CHILD_REMOVED, CONFIG_KEY_ADDED, CONFIG_KEY_REMOVED, DEFAULT_DISPLAY_NAME, EFFECTOR_ADDED, EFFECTOR_CHANGED, EFFECTOR_REMOVED, ENTITY_ID, GROUP_ADDED, GROUP_REMOVED, LOCATION_ADDED, LOCATION_REMOVED, POLICY_ADDED, POLICY_REMOVED, SENSOR_ADDED, SENSOR_REMOVED
CHECK_RUNNING_COMMAND, CUSTOMIZE_COMMAND, DOWNLOAD_URL, INSTALL_COMMAND, LAUNCH_COMMAND, STOP_COMMAND, SUGGESTED_VERSION
ADD_OPEN_INBOUND_PORTS_EFFECTOR, ADDRESS, ARCHIVE_DIRECTORY_NAME_FORMAT, CHILDREN_STARTABLE_MODE, CUSTOMIZE_FILES, CUSTOMIZE_LATCH, CUSTOMIZE_TEMPLATES, DONT_REQUIRE_TTY_FOR_SUDO, DOWNLOAD_ADDON_URLS, ENTITY_STARTED, EXPANDED_INSTALL_DIR, HOSTNAME, INBOUND_PORTS_AUTO_INFER, INBOUND_PORTS_CONFIG_REGEX, INSTALL_DIR, INSTALL_FILES, INSTALL_LATCH, INSTALL_RESOURCES_LATCH, INSTALL_TEMPLATES, INSTALL_UNIQUE_LABEL, LAUNCH_LATCH, LIFECYCLE_EFFECTOR_TASKS, MAXIMUM_REBIND_SENSOR_CONNECT_DELAY, OPEN_IPTABLES, PID_FILE, POST_CUSTOMIZE_COMMAND, POST_INSTALL_COMMAND, POST_LAUNCH_COMMAND, PRE_CUSTOMIZE_COMMAND, PRE_INSTALL_COMMAND, PRE_INSTALL_FILES, PRE_INSTALL_TEMPLATES, PRE_LAUNCH_COMMAND, PROVISIONING_LOCATION, PROVISIONING_PROPERTIES, REQUIRED_OPEN_LOGIN_PORTS, RETRIEVE_USAGE_METRICS, RUN_DIR, RUNTIME_FILES, RUNTIME_RESOURCES_LATCH, RUNTIME_TEMPLATES, SERVICE_PROCESS_IS_RUNNING, SERVICE_PROCESS_IS_RUNNING_POLL_PERIOD, SERVICE_STATE_ACTUAL, SERVICE_STATE_EXPECTED, SETUP_LATCH, SHELL_ENVIRONMENT, SKIP_ENTITY_START_IF_RUNNING, SKIP_INSTALLATION, START_LATCH, START_TIMEOUT, STOP_IPTABLES, STOP_LATCH, SUBNET_ADDRESS, SUBNET_HOSTNAME, TEMPLATE_SUBSTITUTIONS
RESTART, SERVICE_UP, START, STOP
Constructor and Description |
---|
SimulatedVanillaSoftwareProcessImpl() |
Modifier and Type | Method and Description |
---|---|
java.lang.Class<?> |
getDriverInterface() |
void |
init()
Default entity initialization sets ID sensors and calls
AbstractEntity.initEnrichers() . |
getDriver, onManagementStarted, onManagementStarting, populateServiceNotUpDiagnostics, rebind, restart, start, stop, waitForEntityStart, waitForServiceUp, waitForServiceUp, waitForServiceUp, waitForServiceUp
addChild, addChild, addFeed, addLocations, addLocationsWithoutPublishing, clearLocations, clearParent, config, configure, configure, destroy, enrichers, equals, feeds, firstLocation, getApplication, getApplicationId, getAttribute, getChildren, getConfig, getConfig, getCreationTime, getDisplayName, getEffector, getEntityType, getExecutionContext, getIconUrl, getLocations, getManagementContext, getManagementSupport, getMutableEntityType, getParent, getProxy, getProxyIfAvailable, getRebindSupport, groups, hashCode, invalidateReferences, invoke, invoke, invoke, onManagementBecomingMaster, onManagementNoLongerMaster, onManagementStopped, policies, relations, removeChild, removeLocations, requestPersist, resetProxy, sensors, setConfigEvenIfOwned, setConfigEvenIfOwned, setDisplayName, setManagementContext, setParent, setProxy, subscriptions, toMetadataRecord, toString
addSearchPath, getCatalogItemId, getCatalogItemIdSearchPath, getId, setCatalogItemId, setCatalogItemIdAndSearchPath, stackCatalogItemId, tags
populateServiceNotUpDiagnostics
addChild, addChild, addFeed, clearParent, enrichers, getApplication, getApplicationId, getAttribute, getChildren, getConfig, getCreationTime, getDisplayName, getEntityType, getIconUrl, getId, getLocations, getParent, groups, invoke, policies, relations, removeChild, sensors, setDisplayName, setParent
getCatalogItemId, getCatalogItemIdSearchPath, subscriptions, tags
config, getConfig
restart, start, stop
addSearchPath, setCatalogItemId, setCatalogItemIdAndSearchPath, stackCatalogItemId
public static final ConfigKey<java.lang.Boolean> EXEC_SSH_ON_START
public static final ConfigKey<java.net.URI> HTTP_FEED_URI
public static final ConfigKey<java.lang.Boolean> USE_SSH_MONITORING
public void init()
AbstractEntity
AbstractEntity.initEnrichers()
.init
in class SoftwareProcessImpl
public java.lang.Class<?> getDriverInterface()
getDriverInterface
in interface DriverDependentEntity
getDriverInterface
in class VanillaSoftwareProcessImpl