...
Properties section has subsections where Component Instance values can be edited based on the requirement, such as General, Deployment, Execution, Log Manager, Log Module Instances, and Runtime Arguments.
Anchor | ||||
---|---|---|---|---|
|
...
Component Instance Properties
Component instance properties appear in the Properties pane when a component present in the Fiorano Orchestrator is selected. These properties and the attributes present under it are explained in the sections below.
...
Anchor |
---|
...
|
This group contains general properties that identify the component instance or affect the appearance of the component instance.
...
Select this check box to use external Configuration Property Sheet (CPS) on a separate JVM instead of the interface available in eStudio. When you open the CPS from the Fiorano Orchestrator after selecting this option, the external CPS opens up. This option can be used when loading the default eStudio CPS is complex and takes up too much memory.
...
Anchor |
---|
...
|
It contains the deployment information of the component, which affect the way components are deployed in Fiorano environment. The Peer Server node on which the component has to be launched, and the can be configured here.
...
no
The resources required for execution by the component instance are fetched from the Enterprise Server to the Peer Server every time the CRC operation is performed.Note If there are changes done to the component resources, this property should be set to no before performing the CRC operation and can be reset to yes later.
...
Anchor |
---|
...
|
This group contains properties that affect launch behavior of the component.
...
Info |
---|
Enterprise server will take care of creating Service Handles along with Connection Factory Settings and passing these properties to the respective peers upon restart. |
Anchor | ||||
---|---|---|---|---|
|
Contains logging information as described below.
- Type: Type of log handler, for example, File, Console.
- Class Name: Class name of the specific Log Type.
- Directory: Name of the directory where Log files are stored.
- File Size: The maximum file size after which a new Log file has to be created.
- # of files: Maximum number of Log files to be maintained.
- Include Time Stamp: To include Time-stamp in Log Message
- Time Stamp Format: To set the format in which time stamp needs to appear in the Logs. Default value is "MM/dd/yyyy HH:mm:ss"
...
Anchor |
---|
...
|
This group contains different loggers that are used and their log level configuration.
All the loggers that are used by the component instance are shown as properties in this section. The level at which logging should be performed for each logger is defined below.
...
For information about log levels and the effect they have on logs generated, please refer to http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/Level.html.
...
Anchor |
---|
...
|
Contains the information about the runtime arguments for the service. It has a single property JVM_PARAMS which contains all command line parameters that are passed to launch the component.
...
Figure 13: Select Service Instances
Anchor | ||||
---|---|---|---|---|
|
...
|
Component port properties can be configured by choosing the port and configuring the appropriate property in the Properties panel.
Anchor | ||||
---|---|---|---|---|
|
...
Input Port Properties
Input port properties appear in the Properties pane when the input port of a component instance is selected.
...
Input port properties for an SMTP component are explained below.
Anchor | ||||
---|---|---|---|---|
|
Figure 15: Input port General properties for a sample component instance
...
Figure 17: Execution properties under Property panel
...
Anchor |
---|
...
|
This group contains properties related to destinations created for the ports of the component.
...
Choose yes to allow padding to the key to match the value required for the mentioned algorithm.
...
Anchor |
---|
...
|
This group contains properties related to JMS messaging concepts. In general, pre-built components provided by Fiorano use a single connection and share the same session for reading messages in the input port and sending messages to the output port.
...
Specifies a condition (JMS Message Selector) to select only a particular set of messages.
Anchor | ||||
---|---|---|---|---|
|
Helps to manage the Application Context that is configured for the application / Event Process.
...
Uses the default Application Context instead of the one created separately
Anchor | ||||
---|---|---|---|---|
|
Messages can be filtered by providing a specific name and value to it under the Name and Value columns respectively.
...
Note |
---|
For an Input Port with a Message Filter, make sure that you set the same values in the Output port if the Input Port needs to accept the message. |
Anchor | ||||
---|---|---|---|---|
|
...
Output Port Properties
Output port properties appear in the Properties pane when an output of a component instance is selected.
...
Output port properties for an SMTP component are shown below.
Anchor | ||||
---|---|---|---|---|
|
Figure 24: Output port General properties for a sample component instance
General Properties of Output Port have the same functions as that of the General Properties of Input Port.
...
Anchor |
---|
...
|
This group contains properties related to destinations created for the ports of the component. For more information, refer to JMS Destination section under Input Port Properties.
...
Anchor |
---|
...
|
Figure 25: Messaging properties in the Output Port Properties panel
...
Specifies whether the producer on this port sends persistent messages or not. If this property is set to yes, all messages are persisted to message store. If this property is set to no, the messages are not persisted and there may be message loss noticed during the HA failover of the Peer Server.
...
Anchor |
---|
...
|
To avoid message loss in Fiorano Event Processes, change the following properties -
- On each output port, set the value of property Persistent to yes.
- On each route, set the value of property Durable to yes.
- On each input port that is a topic, set the value of property Durable Subscription to yes.
- Whenever a JMS* component is used, make sure all messages sent are persistent and all subscriptions to topics are durable. These properties can be set in CPS of JMS components.
...
Anchor |
---|
...
|
Some of the less used components in Fiorano have Acknowledgement Mode, Transaction Type, and Transaction Size implicitly defined and will not pick the values from the input port.
Component | Acknowledgement Mode | Transaction Type | Transaction Size |
---|---|---|---|
Aggregator | AUTO_ACKNOWLEDGE | false | 1 |
Chat | AUTO_ACKNOWLEDGE | false | 1 |
DiskUsageMonitorService | AUTO_ACKNOWLEDGE | true | 1 |
Display | AUTO_ACKNOWLEDGE | false | 1 |
ExceptionListener | AUTO_ACKNOWLEDGE | false | 1 |
Feeder | AUTO_ACKNOWLEDGE | false | 1 |
HTTPReceive | AUTO_ACKNOWLEDGE | false | 1 |
HTTPStub | DUPS_OK_ACKNOWLEDGE | false | 1 |
Join | AUTO_ACKNOWLEDGE | from command line | 1 |
SAPR3Monitor | AUTO_ACKNOWLEDGE | false | 1 |
Sleep | AUTO_ACKNOWLEDGE | false | 1 |
Timer | AUTO_ACKNOWLEDGE | true | 1 |
WSStub | DUPS_OK_ACKNOWLEDGE | false | 1 |
XMLVerification | AUTO_ACKNOWLEDGE | true | 1 |
Anchor | ||||
---|---|---|---|---|
|
In the Output Port Application Context, you have an option to choose the Component Instance from the Configuration drop-down if it was saved after creating the Application Context. Rest of the options are the same as in Input Port properties.
Figure 26: Application Context properties in the Output Port Properties panel
Anchor | ||||
---|---|---|---|---|
|
Refer the content in Message Filters under Input Port properties.
...
Info |
---|
|
...
Anchor |
---|
...
|
Connection Properties
Anchor | ||||
---|---|---|---|---|
|
...
Info |
---|
When the property Use Connection details from input is chosen, an element ProxySettings will be added to the schema of the input port of the component as shown in the figure below to provide the proxy details in the input message.
|
Anchor | ||||
---|---|---|---|---|
|
...
SSL Security
Click the SSL Security ellipsis button to launch the editor to set SSL configurations.
...
Note |
---|
SSL Security can be managed by configuring the system property (JVM) also instead of overwriting SSL socket creation in the CPS. For example, to use TLS 1.1 protocol, change the default value (TLSv1.0) of the '-Dsecurity.protocol' system property to "TLSv1.1". Hence, SSL can be managed without configuring it in the CPS. |
Anchor | ||||
---|---|---|---|---|
|
...
Interaction Configurations
Note |
---|
The properties explained below fall under Expert Property; enable Show Expert Properties check box on the upper-left part of the CPS to work on these properties. |
...
Tip |
---|
Refer the Monitoring Performance section to see how performance is monitored in the Dashboard. |
Anchor | ||||
---|---|---|---|---|
|
...
Scheduler Configurations
A component can be scheduled to execute a specific request at configured intervals of time. When the component is configured to run in Scheduler mode, the component will not have input port (separate input need not be sent to the component in order to send message). However, messaging properties that are usually configured on the input port can be configured in Transport Configurations panel.
...
Info |
---|
When finite repeat count and end date are both used, the scheduling will stop based on which event happens earlier. |
Anchor | ||||
---|---|---|---|---|
|
...
Transport Configurations
Transport Configurations panel is used to configure messaging properties when the component is configured in Scheduling mode.
...
Note |
---|
When the component is not in scheduling mode, properties are configured on the Input Port Properties. |
Anchor | ||||
---|---|---|---|---|
|
...
Error Handling
Errors that occur in the component are classified into five categories – JMS Error, Response Generation Error, Request Processing Error, Connection Error and Invalid Request Error. Actions that have to be taken when an error occurs are defined in the Error Handling panel.
...
Figure 49: Error handling
...
Anchor |
---|
...
|
This property in Error Handling Panel will be visible only if the Managed Connection Factory panel is present. Presence of Managed Connection Factory implies that the component makes a connection to external system.
...
- Try reconnection: The component will re-execute the input request with a new connection, if this action is enabled. The number of times it should try and the time interval between two successive retries can be configured in Advanced Setting Panel of this panel. Configuring for retries is explained in Retry Configuration section.
Discard Connection: The component removes the connection from the connection pool as soon as a connection error occurs. If the processing of input request fails due to connection error then component will discard that connection object. The component will try with another connection object from the connection pool, if there are no connections in the connection pool then the component will create a new connection, and this connection is used to process the input request.
Note If the Try reconnection property is not set, then this property will be ignored.
Stop Service: The component is stopped when an error occurs if this action is enabled.
...
Anchor |
---|
...
|
Errors that occur in transport (JMS)
...
- Log to error logs: Logs the exception and trace to error logs.
- Stop service: The component is stopped when an error occurs if this action is enabled.
...
Anchor |
---|
...
|
Errors that occur while building a response for the processed request.
...
- Log to error logs: Logs the exception and trace to error logs.
Send to error port: when an invalid input is given to the component, it sends the error on the ON_EXCEPTION output port of the component if this action is enabled. By default, ON_EXCEPTION port is present in all components that support error handling.
Note Retries before sending error property in Advanced Settings group is disabled if this option is unchecked.
...
Anchor |
---|
...
|
Request Processing Errors are categorized based on the following conditions:
...
- Throw fault on warnings: In some cases, a problem in the component which is not severe is treated as a warning. Such warnings are just logged by default. The component will treat such warnings as errors, if this property is enabled.
Example: When the FileReader is configured to read files with a particular pattern for file names, a warning is logged if there are no files whose names match the pattern configured. If the FileReader is polling a directory, then it is an inherent assumption that files are not always present and hence treating it as warning is appropriate. But if the file reader is not in scheduler mode, then absence of files has to be treated as an error.
...
Anchor |
---|
...
|
Errors that occur when parsing the input request are categorized under Invalid Request Error. Remedial actions are different for EDBC and BC components.
...
- Do not stop service: If this property is not checked, when an invalid input is sent to the component, the component will be stopped immediately. This property is checked by default.
Example: In case of SMTP, if the input message is not valid according to the schema set on its IN_PORT, an exception occurs and the component will be stopped only if this property is unchecked.
...
Anchor |
---|
...
|
When Re-execute Request is enabled for Request Processing Error or when Try Reconnection is enabled for Connection Error, the Advanced Settings group containing configurations for retries is visible.
...
On clicking Fetch from Connected Source button, a list of ports (which have schema set on them) of the components connected to this component are displayed. Application Context of the event process is also listed, if defined. On selecting one of the ports or application context, the schema present will be set as schema in the schema editor.
...
Anchor |
---|
...
|
Schema Repository is used to store schemas that are imported in schemas used by different components/event processes. The imported schemas referred from anywhere in an
...
- In Studio, navigate to Tools > Schema Repository. This opens a Schema Repository editor using which schemas can be added to schema repository.
Figure 55: Schema repository editor - Click the Add Button to add schemas to the repository, Customize Add... editor.
Figure 56: Adding XSD to the schema repository - Click the ellipsis button
to browse the required XSD.
- Select an XSD and click OK
The values URI, Location, schema name will be automatically updated.- The URI value should not be an empty field. In case, if the schema has a target namespace, URI should be same as the target namespace of the XSD.
- The Location field displays the absolute path of the schema file.
- If the schema is to be copied and saved in the location <FIORANO_HOME>/xml-catalog/user, select the field Save to Catalog folder with name and specify a name with which the file has to be saved.
- If Save to Catalog folder with name is not selected, the file is not copied to the location <FIORANO_HOME>/xml-catalog/user and will be referred from its original location.
- Click OK to close Customize Add editor.
A new row specifying the URI and Location of the XSD will be added in the table.- To remove a schema from the schema repository, select a row from the table and click Remove.
Figure 57: Removing XSD from the schema repository - The option 'Delete schema file' specifies whether to delete the file from the system or just to remove the schema from xml-catalog. Select the check box to remove the file completely.
- In case, if the file is not copied to <FIORANO_HOME>/xml-catalog/user, the file will be deleted from its original location if this option is selected.
- To remove a schema from the schema repository, select a row from the table and click Remove.
...
Anchor |
---|
...
|
Figure 58: XPath Editor
XPath Editor can be used for specifying path expressions to identify nodes in an XML document and for specifying conditions. The list of elements from schema provided are shown in the left panel of the editor. An XPath Editor with sample schema is shown below.
...
The figure above illustrates a sample Xpath expression using a '+' operator. It contains two numeric constant values which are passed as arguments to the operator.
Anchor | ||||
---|---|---|---|---|
|
...
Named Configurations in CPS
Named Configurations may be used in eStudio CPS of components. Configurations can either be loaded from or saved to the repository from CPS itself.
If named configuration is not to be used in the CPS, the text box against Named Configuration shown in the below figures should be left blank and no Named Configuration will be used.
...
Figure 70: UI disabled after loading Named Configuration
Anchor | ||||
---|---|---|---|---|
|
...
Save Named Configuration
To save a new Named Configuration to the repository, specify a name against Named Configuration, which is not present in the drop-down list and provide the configuration details that need to be saved.
...
Figure 71: Save Named Configuration
Anchor | ||||
---|---|---|---|---|
|
...
Encrypt Decrypt Configuration
XML Messages received by and sent from components in event processes can be encrypted and/or decrypted so that sensitive data will be more secure and be protected from being accessible to everyone, and hence enable authorized usage.
This can be done by providing a global encryption key and selecting the elements in XML messages that are to be encrypted/decrypted in component configuration.
...
- In eStudio, open Configuration Repository panel and right-click Resource. Click Add Configuration to add new Resource Configuration. Select the Resource type as "Keystore" as shown below.
Gallery sort name include CommonConfig_KeyStoreConfig_3.png, CommonConfig_KeyStoreConfig_2.png, CommonConfig_KeyStoreConfig_1.png
Figure 79: Adding Resource Configuration - Click Next to get the add AES Encryption Key. Enter any String of your choice (recommended minimum of 6 characters for better security) and click Finish to save the keystore which will be used as the key for encryption/decryption of data.
Figure 80: Adding Encryption Key
Anchor | ||||
---|---|---|---|---|
|
...
Custom Encryption of Passwords
Components in Fiorano Event Processes contain passwords of External Systems like Databases, FTP Servers as part of their configuration. Using this feature, users can use their own keys and algorithms to encrypt passwords.
...
If this check box is selected, you have to enter key instead of password in password field(s). getPasswdFromVault(String key) method from CustomClass (which is implementor of IcustomEncryptor) gets the passwords by taking keys as params..
Below is the sample class that reverses the password(s) and saves password(s) in configuration. Follow the below steps for testing:
...
Code Block | ||||
---|---|---|---|---|
| ||||
import com.fiorano.util.crypto.ICustomEncryptor; import com.fiorano.util.crypto.StringEncrypter; import java.util.HashMap; public class MyCustomEncryptor implements ICustomEncryptor { private static HashMap<String,String> passwordMap = new HashMap<String, String>(); public MyCustomEncryptor() { } static { passwordMap.put("ftppasswd","fiorano13"); passwordMap.put("dbpasswd","fiorano13"); passwordMap.put("HttpAuthPasswd","fiorano13"); } public String getPasswdFromVault(String key){ String passwd = passwordMap.get(key); if(passwd == null) passwd = key; return passwd; } /** * returns encrypted string * * @param unencryptedString Unencrypted String * @return encrypted string * @throws StringEncrypter.EncryptionException EncryptionException */ public String encrypt(String unencryptedString) throws StringEncrypter.EncryptionException { String cipher = ""; char[] c = unencryptedString.toCharArray(); for(int i=c.length;i>0;i-- ){ cipher += c[i-1]; } return cipher; } /** * Returns decrypted string for an encrypted String * * @param encryptedString Encrypted String * @return Decrypted String * @throws StringEncrypter.EncryptionException EncryptionException */ public String decrypt(String encryptedString) throws StringEncrypter.EncryptionException { String password = ""; char[] c = encryptedString.toCharArray(); for(int i=c.length;i>0;i-- ){ password += c[i-1]; } return password; } } public String getEncryptionKey() { return null; } public void setEncryptionKey(String encryptionKey) { } public String getEncryptionScheme() { return null; } public void setEncryptionScheme(String encryptionScheme) { } } |
Anchor | ||||
---|---|---|---|---|
|
To make External CPS (components like RESTStub, RestConsumer, XMLSplitter, Aggregator etc) work in Solaris operating system, make changes in java.security (location: $JAVA_HOME/jre/lib/security) as mentioned in the following link: http://ccortezsv.blogspot.in/2014/03/sunsecuritypkcs11configurationexception.html
...