Using Configuration Variables Templates with Microservices Runtime
About Configuration Variables Templates
Microservices Runtime provides the ability to create a Docker image from an installed and configured instance of Microservices Runtime. The Docker image contains the Microservices Runtime application including packages and Microservices Runtime assets such as ports, JMS connection aliases, keystores, and JDBC pools. Because you can execute multiple Docker containers from a single Docker image, a Docker image for a Microservices Runtime instance might be used across development, testing, and production environments. While the microservices and accompanying artifacts are the same across the running containers and stages, configuration information might be different. For example, user name and password combinations, proxy server host and port, remote server host and port, and global variable values might be different across different instances of running Docker containers. While a Microservices Runtime stores configuration information inside its file system and therefore inside any Docker image created from the Microservices Runtime, some configuration information can be externalized and passed to the Microservices Runtime at startup. With Microservices Runtime you can accomplish this through use of a configuration variables template and environment variables.
A configuration variables template contains configuration properties that map to properties on the Microservices Runtime. The property values can be set externally in the template and then passed to a Microservices Runtime when it starts up. As part of the startup process, Microservices Runtime loads the information from the configuration variables template and replaces the configuration information stored in the file system.
By externalizing configuration information, a single Docker image created for a Microservices Runtime can be used across multiple environments, including different stages of the production cycle. For example, you might use different templates for specific environments such as testing versus production. Or you might use the same template for all environments but use environment variables to vary the configuration in each environment.
While the primary purpose of configuration variables is to extend the usefulness of single Microservices Runtime image by making it possible to reuse a single Docker image across multiple stages in the production cycle, you can also use configuration variables templates in situations where other deployment options are too heavyweight.
What Does a Configuration Variables Template Look Like?
A configuration variables template is a
properties file that contains configuration data as a series of
key-value pairs where the key name reflects the asset and particular
asset property for which you can supply a value. For example, jndi.DEFAULT_IS_JNDI_PROVIDER.providerURL=nsp://myHost:9000 indicates
that the JNDI provider alias named DEFAULT_IS_JNDI_PROVIDER has
a URL of nsp://myHost:9000.
When a configuration variables template is generated from an existing Microservices Runtime, the template is populated with configuration data from the Microservices Runtime instance. The template content reflects the Microservices Runtime configuration at the time Microservices Runtime generated the template. For example, the configuration variables template lists a key-value pair for each defined global variable.
The generated configuration variables template does not contain key-value pairs for all of configuration information for Microservices Runtime.
Below is an excerpt of a configuration variables template:
#Sample Generated Template
#Wed Jun 20 17:13:40 EDT 2018
email.WmRoot.myEmailPort.host=exchange
email.WmRoot.myEmailPort.password={AES}VphDydln9QyvLIGf+FASxw\=\=
email.WmRoot.myEmailPort.server_port=7891
email.WmRoot.myEmailPort.user=user123ispasswordexpirationsettings.
jms.DEFAULT_IS_JMS_CONNECTION.clientID=DEFAULT_IS_JMS_CLIENT
jndi.DEFAULT_IS_JNDI_PROVIDER.providerURL=nsp\://localhost\:9000
settings.watt.server.compile=C\:\\IS_10-3\\June6\\jvm\\jvm\\bin\\javac -
classpath {0} -d {1} {2}
settings.watt.ssh.jsch.ciphers=aes256-ctr,aes192-
ctr,arcfour,arcfour128,arcfour256,aes128-ctr,aes128-cbc,3des-ctr,3des-
cbc,blowfish-cbc,aes192-cbc,aes256-cbc
Only specific values can be supplied via the template for an asset. For example, for a JMS connection alias a configuration variables template lists a key-value pair for the clientID, user, and password properties. The template omits key-value pairs for all other properties.
In the template, each property name follows
this pattern:
assetType.assetName.propertyName=value
where
assetType
is
the type of administrative asset,
assetName
is
the name given to the asset such as an alias name, and
propertyName
is the
asset property for which you can set a value.
For example, following are key-value pairs
for a global variable named serverhost,
a global variable named serverport,
the DEFAULT_IS_JMS_CONNECTION connection alias, and the JDBC pool
alias named webMPool:
globalvariable.serverhost.value=server123.example.com
globalvariable.serverport.value=5555
jms.DEFAULT_IS_JMS_CONNECTION.clientID=DEFAULT_IS_JMS_CLIENT
jms.DEFAULT_IS_JMS_CONNECTION.password=encryptedValue
jms.DEFAULT_IS_JMS_CONNECTION.user= userA
jdbc.webMPool.dbURL=jdbc:wm:oracle://testserver:1521;serviceName=webm
jdbc.webMPool.password={AES}CszC/Yl1w1XqEK0B17RFucP0kgMHNt823RUU6ad39tw\=
jdbc.webMPool.userid=jdbcuserTest
To change the assigned values in a configuration variables template, use a text editor to open the template and make changes. Any value you specify for a property must adhere to the requirements for that property. For example, the global variable value cannot exceed 255 characters. For passwords or other types of values that should be encrypted, Microservices Runtime Administrator provides a utility to encrypt a value. Microservices Runtime Administrator uses password handles and the Password-Based Encryption technology installed with Microservices Runtime for encryption.
You can also add an asset by editing the configuration variables template. Not all assets for which you can edit configuration in a configuration variables template can be created via a template.
As an alternative to “hard coding” a value
for a property in a template, you can specify an environment variable
(ENV variable) as the value of a property in the configuration variables
template. The following line specifies that the JDBC pool URL for
the alias webMPool should be set to the value of the environment
variable named JDBC_URL: jdbc.webMPool.dbURL=$env{JDBC_URL}
If you opt to use an ENV variable as a value for configuration variables, make sure that you specify the values for ENV variables defined in the configuration variables template. Refer to the Docker documentation or the documentation for your container orchestration tool for more information about how to specify the ENV variables for Docker containers.
When Is the Template Applied?
Microservices Runtime applies a configuration variables template at startup. When Microservices Runtime starts, either in a Docker container or on-premises, Microservices Runtime looks for a configuration variables template in the following locations in the specified order.
- The location
identified by the
SAG_IS_CONFIG_PROPERTIESenvironment variable. - Integration Server_directory /instances/instanceName/application.properties
- Integration Server_directory /application.properties
Once Microservices Runtime locates a template, Microservices Runtime does not look for a template in any remaining locations.
Microservices Runtime processes the template, updating the configuration information in Microservices Runtime with the information in the template. While processing the template, Microservices Runtime writes log messages to the logs/configurationvariables.log to reflect the progress of the variable substitution. When updating is complete, Microservices Runtime proceeds with startup.
How the Configuration Is Updated when IS_10.5_Core_Fix7 Is Applied
When updating the configuration, if Microservices Runtime encounters an asset that does not exist and IS_10.5_Core_Fix7 or higher is applied, one of the following happens:
- If the asset is one of the types that can be created through a configuration variables template, Microservices Runtime creates it using the supplied key-value pairs. Only a subset of all the properties for an asset can be set in a configuration variables template. Microservices Runtime uses default values for all other asset properties. For a list of assets that can be created via application of a configuration variables templates, see Creating New Assets with the Configurations Variable Template.
- If an asset type cannot be created through a configuration variables template, Microservices Runtime ignores properties and values that do not correspond to existing assets on the Microservices Runtime.
During substitution or asset creation, Microservices Runtime sets values for properties that
are specified in the template but not set on the Microservices Runtime. For example, suppose the configuration
variables template file specifies the following for a JMS connection
alias named myAlias:
jms.myAlias.clientID=abc
jms.myAlias.password=encryptedValue
jms.myAlias.user= userA
If the Microservices Runtime contains a JMS connection alias
named “myAlias” and that alias specifies a Connection Client ID value
of “xyz”, at startup, Microservices Runtime substitutes “abc” for “xyz”. If
the myAlias connection alias does not specify values for Username or Password, Microservices Runtime substitutes the values set in jms.myAlias.password and jms.myAlias.user in
the application properties template for the JMS connection alias Username and Password fields.
How the Configuration Is Updated When IS_10.5_Core_Fix7 Is Not Applied
While substituting variable values and IS_10.5_Core_Fix7 or higher is not applied, Microservices Runtime ignores properties and values that do not correspond to existing assets on the Microservices Runtime. A configuration variables template can be used to change the configuration information only for assets that already exist on Microservices Runtime. That is, you cannot add assets to a Microservices Runtime by adding key-value pairs to a template
During substitution, Microservices Runtime ignores any values for properties
that are not set on the Microservices Runtime. For example, suppose the configuration
variables template file specifies the following for a JMS connection
alias named myAlias:
jms.myAlias.clientID=abc
jms.myAlias.password=encryptedValue
jms.myAlias.user= userA
If the Microservices Runtime contains a JMS connection alias
named “myAlias” and that alias specifies a Connection Client ID value
of “xyz”, at startup, Microservices Runtime substitutes “abc” for “xyz”. If
the myAlias connection alias does not specify values for Username or Password, Microservices Runtime does not substitute the values set
in jms.myAlias.password or
jms.myAlias.user.
Approaches for Using a Configuration Variables Template with Microservices Runtime
Because a configuration variables template can be used with a Microservices Runtime running in a Docker container or an on-premises Microservices Runtime, there are multiple approaches to using the template. The approach you select determines the template file name, the template file location, whether the template file is part of a Docker image, and how to start the Microservices Runtime so that Microservices Runtime applies the template.
To help determine which approach to use, decide the following:
- Will the Microservices Runtime with which you want to use the template run in a Docker container or on-premises (outside of a Docker contaier)?
- If Microservices Runtime runs in a Docker container, do you want to include the template as part of the Docker image or external to the image?
- Do you want to hard code values for variables in the template or use environment (ENV) variables to specify some or all values?
The answers to the above questions help determine which approach to use, which in turn, determines the files that you need to create, where you place the configuration variables template, the name of the file, and how to start the Microservices Runtime so that Microservices Runtime applies the template values.
The following table describes the possible approaches for using a configuration variables template with Microservices Runtime
| Approach | Description and requirements |
|---|---|
| Docker image does not include template which does not use ENV variables |
Microservices Runtime runs in a Docker container, the
template is not included in the Docker image, and configuration
variables values are hard coded in the template only. The template
does not use ENV variables. Template file name: application.properties or a user-defined name Template location: A location that is accessible to the Docker container. Start up: The |
| Docker image does not include template and template uses ENV variables |
Microservices Runtime runs in a Docker container, the
template is not included in the Docker image, and configuration
variable values are hard coded in the template and/or the template
uses environment variables. Template file name: application.properties or a user-defined name Template location: A location that is accessible to the Docker container. If you are using ENV variables for some or all of the variable values, refer to the Docker documentation or the documentation for your container orchestration tool for more information about how to specify the ENV variables for Docker containers. Start up: The |
| Docker image includes template which uses ENV variables |
Microservices Runtime runs in a Docker container, the
configuration variables template is part of the Docker image, and
the template uses environment variables for some or all the values
in the template. Template name: application.properties Template location is one of the following:
If you are using ENV variables for some or all of the variable values, refer to the Docker documentation or the documentation for your container orchestration tool for more information about how to specify the ENV variables for Docker containers. Start up: The |
| On-premises Microservices Runtime installation does not include template and template does not use ENV variables. |
Microservices Runtime runs on-premises, configuration
variables values are hard coded in the template only, and the template
is not included in the Microservices Runtime file system. The template does not
use ENV variables. Template name: application.properties or a user-defined name Template location: A location that is accessible to the Microservices Runtime. Start
up: Microservices Runtime start up includes the |
| On-premises Microservices Runtime includes template which does not use ENV variables. |
Microservices Runtime runs on-premises and a configuration
variables template defines all the values. The template does not
use ENV variables. Template name: application.properties Template location is one of the following:
Start up: This approach does not require any special steps at start up. |
| On-premises Microservices Runtime includes template which uses ENV variables |
Microservices Runtime runs on-premises and a configuration
variables template hard codes the values and/or uses environment
variables for the values. Template name: application.properties Template location
is one of the following:
Environment variables can be specified in Integration Server_directory /bin/setenv.bat(sh) files or ENV variables can be pre-defined in your environment. For an Integration Server with an Microservices Runtime license, environment variables can be specified in Integration Server_directory profiles/IS_instanceName/bin/custom_setenv.bat(sh) files or ENV variables can be pre-defined in your environment. Start up: This approach does not require any special steps at start up. |
Overview of Building a Configuration Variables Template
Preparing a configuration variables template for use with Microservices Runtime consists of a series of general tasks. The order in which you complete these tasks may be affected by whether you intend to use the template with a Microservices Runtime in a Docker container or an on-premises Microservices Runtime.
The following table identifies the general tasks that you complete for preparing a configuration variables template for use with Microservices Runtime.
| Task | Description |
|---|---|
| 1 | Decide how you want to use the configuration variables template and how you want to supply values. Do you want to use the template with a Microservices Runtime running in a Docker container or an on-premises Microservices Runtime? Do you want to supply all the variable values in the template or do you want to use an environment variables as well? For more information, see Approaches for Using a Configuration Variables Template with Microservices Runtime. |
| 2 | Configure a Microservices Runtime such that the generated template will contain the properties that you want to control. When generating a template, the Microservices Runtime includes properties only for those assets which exist on the Microservices Runtime. That is, you cannot use a configuration variables template to add assets to the Microservices Runtime. |
| 3 | Generate the configuration variables template for the Microservices Runtime. For more information about creating a configuration variables template, see Generating a Configuration Variables Template. |
| 4 | Edit the configuration variables template to contain the property values that you want the Microservices Runtime to modify at startup. For more information about this stage, see Editing a Configuration Variables Template. If you want to add assets to Microservices Runtime by applying configuration variables template, add the key-value pairs for the asset and its properties to the template. Keep in mind that you can use a configuration variables template to add only certain asset types to the Microservices Runtime. For more information about adding assets, see Creating New Assets with the Configurations Variable Template. |
| 5 | Place the configuration
variables template in the correct location with the appropriate
name. The template location depends on whether or not you are using
the template with a Docker image or on-premises Microservices Runtime and if the template is part of the
image or file system. For more information, see Approaches for Using a Configuration Variables Template with Microservices Runtime. If you are using ENV variables as values in the configuration variables template, refer to the Docker documentation or the documentation for your container orchestration tool for more information about how to specify the ENV variables for Docker containers. |
| 6 | If you are using the
template in a Docker container and the template resides inside the Microservices Runtime file system, build the Docker image. For more information about creating a Docker image, see Using with Docker . For more information about creating a Docker image, see the webMethods Integration Server Administrator’s Guide |
Generating a Configuration Variables Template
About this task
Microservices Runtime provides a utility to generate a configuration variables template based on the configuration of a running Microservices Runtime. This configuration variables template reflects the current configuration of the Microservices Runtime.
After the Microservices Runtime is configured, you can use the utility to generate the template. The resulting template serves as the starting point for creating a customized configuration variables template.
Because a configuration variables template can be used to modify existing configuration on Microservices Runtime only, make sure you fully configure the Microservices Runtime for all facilities and features that you wish to be modified dynamically. This applies only if IS_10.5_Core_Fix7 or later, which includes PIE-65555, is not applied.
Before you generate the configuration variables template from a Microservices Runtime, you might want to:
- Make sure that the Settings > Extended page displays all of the server configuration parameters that you want to set with the template. To show settings, use Microservices Runtime Administrator to navigate to Settings > Extended > Show and Hide Keys. Select the check box next to each server configuration parameter that you want to appear in the template, and click Save Changes.
- Ensure that the keystores and truststores are loaded. When a keystore or truststore is loaded it indicates that the keystore or truststore configuration is valid and that the Microservices Runtime initialized the keystore or truststore alias successfully. To see if a keystore or truststore is loaded, navigate to the Security > Keystore page and ensure that the Loaded column displays Yes.
To generate a configuration variables template
Procedure
What to do next
The generated application.proeperties file includes the following:
- The date and time that Microservices Runtime generated the template.
- Key-value pairs for asset properties for
which a value is specified on the Microservices Runtime. The template does not include variables
for assets that do not exist or for asset properties that are not
specified.
For a list of assets and properties for which Microservices Runtime generates configuration variables see Configuration Variables Template Assets.
Note: In the template, any key that contain a period (.) as part of its name is escaped using another period. For example, for a JMS connection alias namedmy.JMS.alias, the template property corresponding to the Client ID in the alias the name:jms.my..JMS..alias.clientID=value - Key-value pairs for the server configuration parameters that were configured to show on the Extended Settings page only.
- Keystore and truststore alias properties for keystores and truststores that were loaded at the time of template generation only.
- Encrypted values for any passwords that appear as property values in the template.
-
For a configured asset, the configuration variables template lists properties only for which a value is specified. For example, if you specify a client ID for a JMS connection alias, but do not specify a user name or password for use with the JMS connection alias, the configuration variables template contains
jms.aliasName.clientID=valuebut notjms.aliasName.passwordorjms.aliasName.user.
Editing a Configuration Variables Template
About this task
Keep the following information in mind when you edit a configuration variables template.
- Any value that you specify must meet the requirements for the associated property. For example, global variable values cannot exceed 255 characters. If the value is not valid, failures will occur at runtime, either during server initialization or when clients start sending in requests.
- A configuration variables template can be used to change the configuration information for assets that already exist on the Microservices Runtime only.
- You can add assets for some asset types to a Microservices Runtime by adding key-value pairs to a template. Any asset that you create must meet the naming requirements for the asset. If it does not, the improperly configured asset might result in Microservices Runtime failure at start up or during operations. For a list of assets that you can add, Overview of Building a Configuration Variables Template
- The
configuration variables template lists only assets that existed
on the Microservices Runtime from which you generated the template.
You can add an asset for an asset type for which asset creation
is allowed via a configuration variables template. If asset creation
is not allowed for that type but you know the asset will exist on
the Microservices Runtime that will use the template, you
can add the asset and the necessary key-value pairs to the template.
At startup, if the template specifies a value for a non-existent
asset, the Microservices Runtime logs a message to the configuration
variables log.
For more information about assets and properties and the corresponding key name, see Configuration Variables Template Assets.
- When Microservices Runtime generates an application.properties
template, any properties that contain an alias name with a period
(.) include another period as an escape character. For example,
for a JMS connection alias named
my.JMS.alias, the template property corresponding to the Client ID in the alias the name:jms.my..JMS..Alias.clientID=valueDo not remove the period (.) acting as the escape character.
If you edit the template by adding a key-value pair for an asset property and the asset property includes an alias name with a period (.), make sure to add another period to serve as the escape character.
To supply a value in the template
Procedure
Encrypting Values for the Variables Template
About this task
For encryption, Microservices Runtime uses password handles and the Password-Based Encryption technology installed with Microservices Runtime. A password handles associate a password on the host Microservices Runtime with a corresponding key (or handle). The handle is encrypted as an outbound password using the Password-Based Encryption (PBE) technology.
Software AG recommends that you encrypt all passwords and other sensitive data in your configuration variables templates.
To encrypt a value
Procedure
Using a Kubernetes Secret with a Configuration Variables Template
About this task
Microservices Runtime supports one Secret per container (each Secret can contain multiple entries often called keys) and a Secret of type Opaque only.
Prior to using a Secret with a configuration variables files (application.properties), you must do the following:
- Create the Secret with Kubernetes
- Mount the Secret as a data volume
To use a Kubernetes Secret for a property value in a configuration variables file, set the key-value pair for the asset property using the following format:
key=$secret{SecretName}
Where the
SecretName
is
the key for the secret whose value you want to use. For example:
truststore.DEFAULT_JVM_TRUSTSTORE.ksPassword=$secret{TruststorePasswordSecretName}
user.userName.password=$secret{mySecretPassword}
When you start the container, you can set
the SECRET_PATH environment
variable to the path where the Secret will be present inside the
container. You do not need to specify this environment variable
if the Secret is mounted at /etc/secrets.
When Microservices Runtime applies the configuration variables
file, Microservices Runtime looks for the location of the Secret
by first checking if the SECRET_PATH environment
variable is present. If so, then Microservices Runtime reads the Secret from the path present
in this environment variable. If the SECRET_PATH environment variable
was not provided when the container started, then Microservices Runtime expects the Secret will be mounted
at /etc/secrets and will read the Secret from there.
If Microservices Runtime cannot find the Secret used in the configuration variables file (the Secret is not present or access to the file is restricted due to file permissions), the following Info level message will be written to the configurationvariables.log:
[ISS.0028.0039I] Exception occurred while reading secret file: <pathToFile>
Creating New Assets with the Configurations Variable Template
For some asset types, you can add assets to Microservices Runtime by adding key-value pairs to the configuration variables template that is applied at start up. Any asset that you create must meet the naming requirements for the asset. An incorrectly configured asset can cause Microservices Runtime start up fail or result in failure during later server operations.
To add an asset to a configuration variables template, follow the procedure and guidelines in Editing a Configuration Variables Template.
The following list identifies the asset types for which you can create an asset through application of a configuration variables template:
- Consul
- Email port
- File polling port
- Global variable
- JDBC pool alias
- JMS connection alias
- JNDI provider alias
- Keystore alias
- LDAP configuration
- Proxy server alias
- Remote server alias
- SFTP server alias
- SFTP user alias
- Truststore alias
- Universal Messaging connection alias (webMethods messaging)
- User account
Template File Locations
When the configuration variables template is ready for use with a Microservices Runtime, you need to save the template to a place accessible to Microservices Runtime upon startup. Where you place the configuration variables template file and any accompanying environment variables list depends on whether you are using the template with Microservices Runtime running in a Docker container or on-premises.
You can place the template file in one of the following locations.
- The location to be identified by the SAG_IS_CONFIG_PROPERTIES environment variable.
-
Integration Server_directory
/instances/instanceName
For this option, the configuration variables template must be a file named application.properties. If you use this location with Microservices Runtime running in a Docker container, create the Docker image after completing the template and placing it here.
-
Integration Server_directory
For this option, the configuration variables template must be a file named application.properties. If you use this location with Microservices Runtime running in a Docker container, create the Docker image after completing the template and placing it here.
For more details about where to place the configuration variables template and an environment variables list, if you are using one, see Approaches for Using a Configuration Variables Template with Microservices Runtime.
Providing a Configuration Variables Template when Starting a Docker Container
When running a Microservices Runtime image in a Docker container, you
can specify the configuration variables template and/or environment
(ENV) variables in the docker
run command.
Example
The following docker run command
uses the SAG_IS_CONFIG_PROPERTIES ENV
variable to specify the name and location of the configuration variables
template. In this example, the Docker image for the Microservices Runtime is named is:microPkg and exposes
ports 5555 and 9999. Additionally, the customApplication.properties
file location is accessible by the Docker container using Docker
volume.
docker run -d --name IS_Default -p 5555 -p 9999
-v /opt/softwareag/customApplication.properties:/opt/softwareag/customApplication.properties
-e SAG_IS_CONFIG_PROPERTIES=/opt/softwareag/customApplication.properties
is:microPkg
Example
The following docker run command
uses the SAG_IS_CONFIG_PROPERTIES ENV
variable to specify the name and location of the configuration variables
template and uses the --env-file option
to specify the list of ENV variables that are used in the configuration variables
template. In this example, the Docker image for the Microservices Runtime is named is:microPkg and exposes
ports 5555 and 9999.
docker run -d --name IS_Default -p 5555 -p 9999
-e SAG_IS_CONFIG_PROPERTIES=/opt/softwareag/customApplication.properties
-v /opt/softwareag/customApplication.properties:/opt/softwareag/customApplication.properties
--env-file env.list is:microPkg
Configuration Variables Logging
When Microservices Runtime applies the configuration variables template at startup, Microservices Runtime has not yet initialized the journal logger which is used for the server log. For this reason, Microservices Runtime uses a separate logging capability for logging Microservices Runtime messages related to processing a configuration variables template. The configuration variables log contains messages about the operations, warnings, and errors that occur while Microservices Runtime applies the template.
Below is an excerpt from the configuration variables log:
2018-06-18 15:34:10 EDT [ISS.0028.0016I] Configuration variables template file
found at C:\SoftwareAG\IntegrationServer\application.properties will be used for
processing.
2018-06-18 15:34:12 EDT [ISS.0028.0007I] Changed property in
C:\SoftwareAG\IntegrationServer\instances\default\config\server.cnf. Old value:
localhost. New value: localhost,127.0.0.1. Configuration variable key:
watt.net.proxySkipList.
2018-06-18 15:34:12 EDT [ISS.0028.0017W] Encryptor is creating password handle
because the given password handle
wm.is.admin.WSEndpoint.message.CONSUMER.HTTPS.ws_cons_https does not exist in
the password store.
2018-06-18 15:34:12 EDT [ISS.0028.0008I] Set password in secure password store.
Password handle: wm.is.admin.WSEndpoint.message.CONSUMER.HTTPS.ws_cons_https
2018-06-18 15:34:12 EDT [ISS.0028.0017W] Encryptor is creating password handle
because the given password handle
wm.is.admin.WSEndpoint.transport.CONSUMER.HTTPS.ws_cons_https does not exist in the password store.
2018-06-18 15:34:12 EDT [ISS.0028.0008I] Set password in secure password store.
Password handle: wm.is.admin.WSEndpoint.transport.CONSUMER.HTTPS.ws_cons_https
2018-06-18 15:34:12 EDT [ISS.0028.0008I] Set password in secure password store.
Password handle: wm.is.admin.WSEndpoint.message.CONSUMER.HTTPS.ws_cons_https
2018-06-18 15:34:12 EDT [ISS.0028.0007I] Changed property in
C:\SoftwareAG\IntegrationServer\instances\default\config\kerberos.cnf. Old
value: . New value:
Each log message is prefixed with the time stamp and a message ID that includes the logging facility (0028), message code, and the severity level. The severity levels are described in the following table:
| Level | Description | Example | |
|---|---|---|---|
| C | Critical | Could not execute the configuration variables processing or an error occurred that caused Microservices Runtime initialization to stop. | Configuration file C:\SoftwareAG\IntegrationServer\instances\default\packages\WmPublic\config\listeners.cnf not found. |
| E | Error | One or more of the intended configuration changes could not be applied | java.io.FileNotFoundException: C:\SoftwareAG\IntegrationServer\instances\default\config\jndi\jndi_BasicAuth.properties (The system cannot find the file specified) |
| W | Warning | A configuration variable was applied, but there is something about which you should be aware. | Property corresponding to key username not found in XML file proxy.cnf. |
| I | Information | Informational messages about the progress of configuration variables processing. | Changed property in C:\SoftwareAG\IntegrationServer\instances\default\config\server.cnf. Old value: localhost. New value: localhost,127.0.0.1. Configuration variable key: watt.net.proxySkipList. |
| D | Debug | Low level messages, helpful for troubleshooting. | Processor found for the assetType truststore. |
Microservices Runtime does not support filtering the contents
of the configuration variables log based on logging level. By default,
the configuration variables log includes all messages with a severity
of Information or higher. To include debug messages in the log,
you must set the SAG_IS_CONFIG_VARIABLES_DEBUG environment
variable to true at startup.
Microservices Runtime writes the configuration variables log messages to the console (STDOUT) and/or to the location: Integration Server_directory /instances/instanceName/logs/configurationvariables.log. A Microservices Runtime running in a Docker container always writes the configuration variables log messages to both locations.
When starting an on-premises Microservices Runtime from the command line, you can specify
the destination for the configuration variables log using the -log switch.
The following table identifies the command line options for specifying the destination of the configuration variables log file.
| Command Line Option | Log Destination |
|---|---|
-log none |
The console (STDOUT). |
-log both |
The console (STDOUT) and Integration Server_directory /instances/instanceName/logs/configurationvariables.log. |
|
Note: If the
-log switch is not
specified, Microservices Runtime writes the log messages to this
location only:
Integration Server_directory
/instances/instanceName/logs/configurationvariables.log |
|
Starting Microservices Runtime from the command line is the same as starting Integration Server from the command line.
For information about starting Integration Server from the command line, see webMethods Integration Server Administrator’s Guide.
For information about starting Integration Server from the command line, see Starting a Server Instance from the Command Prompt .
Microservices Runtime does not preserve the contents of the configurations variable log across restarts. When running on-premises Microservices Runtime overwrites the existing configurations variable log upon startup.
Viewing the Applied Template for a Microservices Runtime
About this task
To view the applied configuration variables template