You can configure an HTTP/HTTPS proxy for an on-premise Controller. When you configure a proxy, the HTTP request actions or JIRA actions are routed through the HTTP proxy or the HTTPS proxy, depending on the endpoint. 

 Add HTTP Proxy Details to the Configuration File

The domain.xml configuration file is the global configuration for managed hosts. Add the HTTP proxy details to the domain.xml file as follows:

  1. Locate and edit domain.xml for the domain. 
    This is usually located under: <Controller-Installation-Directory>/appserver/glassfish/domains/domain1/config/domain.xml
    .
  2. Add the following JVM option to enable the HTTP proxy support for alerting actions:

    <jvm-options>-Dappdynamics.alerting.actions.http.enable.proxy=true</jvm-options>
    XML

    The HTTP proxy support for alerting actions is disabled by default.

    You can also enable the HTTP proxy support for alerting actions at, /private/ControllerFlagsServlet endpoint. You must have admin credentials to enable this option.

  3. Add the following JVM options to configure the HTTP and HTTPS proxy authentication parameters, namely, host, port, user, and password.

    <jvm-options>-Dhttp.proxyHost=$HOST</jvm-options> 
    <jvm-options>-Dhttp.proxyPort=$PORT</jvm-options> 
    <jvm-options>-Dhttp.proxyUser=$USER</jvm-options> 
    <jvm-options>-Dhttp.proxyPassword=$PASSWORD</jvm-options> 
    <jvm-options>-Dhttps.proxyHost=$HOST</jvm-options> 
    <jvm-options>-Dhttps.proxyPort=$PORT</jvm-options> 
    <jvm-options>-Dhttps.proxyUser=$USER</jvm-options> 
    <jvm-options>-Dhttps.proxyPassword=$PASSWORD</jvm-options>
    XML

    Ensure that you provide a plain text password only.
    Proxy parameter changes are not hot-swappable. This means that you need to restart the Controller to ensure that the changes are reflected.

    If you want to exclude some domains from being accessed via the proxy, add them as follows:

    <jvm-options>-Dhttp.nonProxyHosts=localhost|*.abcd.com|xyz.com</jvm-options>
    CODE