Different files are used to configure the HPA Agent :
-
Agent startup : connection to portal, infrastructure agent, Calypso startup scripts, Oracle
monitoring. All parameters from
hpa_agent_config.sh - Stall tracer : recording information during the stall detection
- Agent profile override override mechanism for profiles
- Agent config exporter Data collection session config exporter configuration
- Database export Data collection session database export configuration
Agent startup configuration
During installation, the hpa_agent_config.sh has been created and configured for your environment with :
export HPA_EM_HOST=<em host>:5443
export HPA_CALYPSO_ENV=v15-hex1-perf
As agent configuration files and paths are dedicated to one Calypso environment, you MUST create one agent folder per Calypso environment.
Especially in case several Calypso environments are running on the same hosts, dedicated ports sections, see following warnings :
/!\ If multiple Calypso environments........
Others parameters in hpa_agent_config.sh
HPA portal connection
| Variable | Usage |
|---|---|
| ENABLE | Enable or disable agent during Calypso startup. 1 to enable HPA. 0 to disable it. Default is 1 |
| HPA_CALYPSO_ENV | name of the Calypso environment. This one must match a key in HPA portal environments. |
| HPA_EM_HOST | Host of HPA portal server. Follow the pattern : ssl:// Where hpa-server-port is the value defined by HPA_EM_CHANNEL_PORT_SECURE in HPA portal configurationFor example : ssl://myserver:5443 |
HPA configuration on command line
| Variable | Usage |
|---|---|
| HPA_SET_JAVA_OPTS | if true, scripts will add HPA configuration to JAVA_OPTS.Default true. |
| HPA_SET_CALYPSO_OPTS | if true, scripts will add HPA configuration to CALYPSO_OPTS.Default false. |
| HPA_SET_CALYPSO_JAVA_MEM_OPTS | if true, scripts will add HPA configuration to CALYPSO_JAVA_MEM_OPTS.Default false. |
| HPA_FORCE_JBOSS_PRELOAD | if true, scripts will add specific Jboss configuration -Djboss.modules.system.pkgs=com.wily,com.wily.*,org.jboss.byteman.Default false. |
| RESET_VAR_EACH_TIME | if true CALYPSO_JAVA_MEM_OPTS and JAVA_OPTS are cleared before adding HPA parameters |
HPA Host monitoring
For Host monitoring
| Variable | Usage |
|---|---|
| HPA_CALYPSO_EPAGENT_PORT | A listening port on localhost for the EPAgent (internal use). Default is 48080 |
| HPA_CALYPSO_EPAGENT_COLLECTOR_PORT | A listening port on localhost for the EPAgent Collector (scripts can send metrics to HPA portal). Default is 5005 |
| HPA_CALYPSO_SYSEDGE | A listening port on localhost for the SystemEdge. Collect metrics on the host. Default is 1694 |
| HPA_INFRASTRUCTURE_ENABLED | Start automatically the infrastructure agent with the first Calypso module. 1 to launch automatically. 0 to disable it Default 0 |
/!\ If multiple Calypso environments are monitored on the same host, these ports must be changed do not conflict which each others
For Oracle Monitoring
| Variable | Usage |
|---|---|
| HPA_CALYPSO_DATABASE_ENABLED | see Oracle monitoring |
| HPA_CALYPSO_DATABASE_RAC_ENABLED | see Oracle monitoring |
| HPA_CALYPSO_DATABASE_INSTANCE_NAME | see Oracle monitoring |
| HPA_CALYPSO_DATABASE_HOST | see Oracle monitoring |
| HPA_CALYPSO_DATABASE_PORT | see Oracle monitoring |
| HPA_CALYPSO_DATABASE_USER | see Oracle monitoring |
For Data collection session process
| Variable | Usage |
|---|---|
| HPA_DEBUGSESSION_MONITOR_PORT | To ensure the data collection session monitor is unique for a host and a Calypso environment, this process listen on local port. Nothing can be done on this port. Default is 37491 |
/!\ If multiple Calypso environments are monitored on the same host, these ports must be changed do not conflict which each others
Stall configuration
Behavior
When a stall is detected (a request that runs longer than the configured threshold), the agent executes the following actions:
- Evaluate which action to take based on the metric name and agent name (if filtered)
- Record a stall metric and/or context tracer depending on the configured action
- Mark the execution to prevent duplicate processing in the next stall detection round
The service uses the configuration file:
-
<agent_home>/override_config/configuration_stall.ymlor by default: -
<agent_home>/default_config/configuration_stall.yml
Configuration file
The configuration file uses the actions-on-stall structure with:
- A default action with a default stall duration threshold
- Custom actions with specific configurations for different metrics
Section default-action
Defines the default behavior when a stall is detected:
-
action: the action to execute (NOTHING,METRIC, orMETRIC_AND_CONTEXT) -
stall-duration-in-seconds: duration threshold before marking as stalled -
agent-regexp(optional, since version 5.0): filter by agent name pattern
Section custom-actions
List of specific actions for different metrics:
-
action:NOTHING,METRIC, orMETRIC_AND_CONTEXT-
NOTHING: ignore the stall (no metric, no context) -
METRIC: capture stall metric only -
METRIC_AND_CONTEXT: capture stall metric and detailed context tracer
-
-
stall-duration-in-seconds: duration threshold for this specific action -
filter: how to match metrics-
DIRECT_VALUE: exact metric name match -
REGEXP: regular expression pattern match
-
-
metrics: list of metric names or patterns -
agent-regexp(optional, since version 5.0): filter by agent name pattern
Agent filtering (since version 5.0)
The optional agent-regexp property allows filtering stall actions by agent name:
- Apply specific stall configurations to different agent types (ScheduledTask, DataServer, etc.)
- Use regular expressions for flexible matching
- If not defined or empty: action applies to all agents
- Examples:
-
"ScheduledTask-.*": matches all ScheduledTask agents -
"DataServer-01": matches a specific agent
-
Use case: Define different stall thresholds for different Calypso components (Engines vs Navigators vs Scheduled Tasks)
Example configuration file
actions-on-stall:
default-action:
action: METRIC_AND_CONTEXT
stall-duration-in-seconds: 30
# agent-regexp: ".*" # Optional: applies to all agents by default
custom-actions:
- action: NOTHING
stall-duration-in-seconds: 60
filter: DIRECT_VALUE
metrics:
- Frontends|Apps|TimerThread
- Frontends|Apps|ProcessStreamReader
- action: METRIC
stall-duration-in-seconds: 180
filter: REGEXP
metrics:
- .*PThread.*
agent-regexp: "ScheduledTask-.*" # Only for ScheduledTask agents
- action: METRIC_AND_CONTEXT
stall-duration-in-seconds: 50
filter: DIRECT_VALUE
metrics:
- Frontends|Apps|LoadTradesCallable
agent-regexp: "(DataServer|Navigator)-.*" # Only for DataServer or Navigator agents
Context tracer collector
When context tracers are recorded (action METRIC_AND_CONTEXT), the data collected can be configured in:
-
<agent_home>/override_config/configuration_context_tracer.yml
See the Context Tracer section for details.
Agent profile override
Prerequisites
Agent is installed and configured for a standard installation.
In some case, some properties values from the profile files could be overriden.
Override config path
The modified files are stored in :
<agent_home>/override_config/profiles
In this directory, the following files are authorized :
- same name as the profiles file, example : IntroscopeAgent_navigator.profile, IntroscopeAgent_dataserver.profile
- IntroscopeAgent_common.profile
Override order
The properties in the files are loaded in this order :
- override profile specific
- override common file
- default profile file
An example with the navigator profile, loading order is :
-
<agent_home>/override_config/profiles/IntroscopeAgent_navigator.profile -
<agent_home>/override_config/profiles/IntroscopeAgent_common.profile -
<agent_home>/wily/core/config/IntroscopeAgent_navigator.profile
Override properties and hot reloading
The files are are reloaded automatically when they are modified, but not all properties are hot-reloadable. For example :
-
hpa.dumpDirectoryis not hot-reloadable -
hpa.sqlagent.statement.clampis hot-reloadable
Check documentation or ask support for specific property behavior.