| Oracle® CEP IDE Developer's Guide for Eclipse Release 11gR1 (11.1.1) Part Number E14301-02 |
|
|
View PDF |
This appendix describes the elements of the wlevs_application_config.xsd schema.
For more information, see:
Section C.1, "Overview of the Oracle CEP Component Configuration Elements"
Section B.1, "Component Configuration Schema wlevs_application_config.xsd".
Oracle CEP provides a number of component configuration elements that you use to define the characteristics of the of the components you declare in the EPN assembly file.
The top-level Oracle CEP component configuration elements are organized into the following hierarchy:
config
adapter (see Example C-1)
http-pub-sub-adapter (see Example C-2)
jms-adapter (see Example C-3)
processor (see Example C-4 and Example C-5)
stream (see Example C-6)
channel (see Example C-7)
event-bean (see Example C-8)
caching-system (see Example C-9)
coherence-caching-system (see Example C-10)
diagnostic-profiles (see Example C-11)
Example C-1 adapter Element Hierarchy
adapter name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration symbols symbol work-manager-name netio provider-name num-threads accept-backlog
Example C-2 http-pub-sub-adapter Element Hierarchy
http-pub-sub-adapter name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration symbols symbol work-manager-name netio provider-name num-threads accept-backlog One of: server-context-path server-url channel (http-pub-sub-adapter Child Element) event-type user One of: password encrypted-password
Example C-3 jms-adapter Element Hierarchy
jms-adapter name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration event-type jndi-provider-url jndi-factory connection-jndi-name One of: destination-jndi-name destination-name user One of: password encrypted-password connection-user One of: connection-password connection-encrypted-password work-manager concurrent-consumers message-selector session-ack-mode-name session-transacted delivery-mode
Example C-4 processor (EPL) Element Hierarchy
processor (EPL) name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration rules rule query view database bindings binding params
Example C-5 processor (Oracle CQL) Element Hierarchy
processor (Oracle CQL) name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration rules rule query view
Example C-6 stream Element Hierarchy
stream name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration max-size max-threads
Example C-7 channel Element Hierarchy
channel name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-threads max-size time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration max-size max-threads selector heartbeat-timeout
Example C-8 event-bean Element Hierarchy
event-bean name record-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration batch-size batch-time-out playback-parameters dataset-name event-type-list event-type provider-name store-policy-parameters parameter name value max-size max-threads time-range start end time-range-offset start duration schedule-time-range start end schedule-time-range-offset start duration
Example C-9 caching-system Element Hierarchy
caching-system name cache name max-size eviction-policy time-to-live idle-time One of: write-none write-through write-behind work-manager-name batch-size buffer-size buffer-write-attempts buffer-write-timeout work-manager-name listeners
Example C-10 coherence-caching-system Element Hierarchy
coherence-caching-system name coherence-cache-config coherence-cluster-config
Example C-11 diagnostic-profiles Element Hierarchy
diagnostic-profiles name profile name enabled start-stage max-latency name collect-interval amount unit start-location application stage direction end-location application stage direction average-latency name collect-interval amount unit start-location application stage direction end-location application stage direction threshhold throughput name throughput-interval amount unit average-interval amount unit location application stage direction
The following sample component configuration file from the HelloWorld application shows how to use many of the Oracle CEP elements:
<?xml version="1.0" encoding="UTF-8"?>
<n1:config xmlns:n1="http://www.bea.com/ns/wlevs/config/application"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<processor>
<name>helloworldProcessor</name>
<rules>
<query id="helloworldRule">
<![CDATA[ select * from helloworldInputChannel [Now] ]]>
</query>
</rules>
</processor>
<channel>
<name>helloworldInputChannel</name>
<max-size>10000</max-size>
<max-threads>2</max-threads>
</channel>
<channel>
<name>helloworldOutputChannel</name>
<max-size>10000</max-size>
<max-threads>2</max-threads>
</channel>
</n1:config>
Use this element to define the maximum number of pending connections allowed on a socket. This element is only applicable in a netio element.
Use this element to define a custom adapter component. For an HTTP publish-subscribe or JMS adapter, use the specific http-pub-sub-adapter and jms-adapter elements.
For more information, see Chapter 8, "Configuring Custom Adapters, Event Beans, and Spring Beans".
The adapter component configuration element supports the following child elements:
Use this element to define the a time duration of a diagnostic profile. This element is applicable in any of the following elements:
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The following example shows how to use the amount element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define the type of application Oracle CEP server applies to a foreign stage. In a diagnostic profile, this element always has a value of diagnostic.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The following example shows how to use the application element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define the time interval for which you want to gather metrics.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The average-interval component configuration element supports the following child elements:
The following example shows how to use the average-interval element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<throughput>
<throughput-interval>
<amount>100000</amount>
<unit>MICROSECONDS</unit>
</throughput-interval>
<average-interval>
<amount>100000000</amount>
<unit>NANOSECONDS</unit>
</average-interval>
<location>
<application>diagnostic</application>
<stage>AlertEventStream</stage>
<direction>INBOUND</direction>
</location>
</throughput>
</profile>
</diagnostic-profiles>
Use this element to define an average latency calculation in a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The average-latency component configuration element supports the following child elements:
The following example shows how to use the average-latency element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<average-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
<threshhold>
<amount>100</amount>
<unit>MILLISECONDS</unit>
</threshhold>
</average-latency>
</profile>
</diagnostic-profiles>
Use this element to define the number of updates that are picked up from the store buffer to write back to the backing store. This element may be changed dynamically.
The following example shows how to use the batch-size element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define The number of seconds event buffer will wait to accumulate batch-size number of events before to write to the event store.
The following example shows how to use the batch-time-out element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define values for a parameterized EPL rule in an EPL processor component.
For more information, see "Parameterized Queries" in the Oracle CEP EPL Language Reference.
The binding component configuration element supports the following child elements:
The following example shows how to use the binding element in the component configuration file:
<processor>
<name>processor1</name>
<record-parameters>
<dataset-name>test1data</dataset-name>
<event-type-list>
<event-type>SimpleEvent</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
<rules>
<rule id="rule1"><![CDATA[
select stockSymbol, avg(price) as percentage
from StockTick retain 5 events
where stockSymbol=?
having avg(price) > ? or avg(price) < ?
]]></rule>
</rules>
<bindings>
<binding id="rule1">
<params>BEAS,10.0,-10.0</params>
<params id="IBM">IBM,5.0,5.0</params>
</binding>
</bindings>
</processor>
Use this element to define bindings for one or more parameterized EPL rules in an EPL processor component.
For more information, see "Parameterized Queries" in the Oracle CEP EPL Language Reference.
The bindings component configuration element supports the following child elements:
The following example shows how to use the bindings element in the component configuration file:
<processor>
<name>processor1</name>
<record-parameters>
<dataset-name>test1data</dataset-name>
<event-type-list>
<event-type>SimpleEvent</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
<rules>
<rule id="rule1"><![CDATA[
select stockSymbol, avg(price) as percentage
from StockTick retain 5 events
where stockSymbol=?
having avg(price) > ? or avg(price) < ?
]]></rule>
</rules>
<bindings>
<binding id="rule1">
<params>BEAS,10.0,-10.0</params>
<params id="IBM">IBM,5.0,5.0</params>
</binding>
</bindings>
</processor>
Use this element to define the size of the internal store buffer that's used to temporarily hold asynchronous updates that need to be written to the store. Does not support dynamic updates.
The following example shows how to use the buffer-size element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<batch-size>100</batch-size>
<buffer-size>100</buffer-size>
<buffer-write-attempts>100</buffer-write-attempts>
<buffer-write-timeout>100</buffer-write-timeout>
</write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define the number of attempts that the user thread will make to write to the store buffer. The user thread is the thread that creates or updates a cache entry. If the user thread cannot write to the store buffer (all write attempts fail), it will invoke the store synchronously. This element may be changed dynamically.
The buffer-write-attempts component configuration element has no child elements.
The following example shows how to use the buffer-write-attempts element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<batch-size>100</batch-size>
<buffer-size>100</buffer-size>
<buffer-write-attempts>100</buffer-write-attempts>
<buffer-write-timeout>100</buffer-write-timeout>
</write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define the time in milliseconds that the user thread will wait before aborting an attempt to write to the store buffer. The attempt to write to the store buffer fails only in case the buffer is full. After the timeout, further attempts may be made to write to the buffer based on the value of buffer-write-attempts. This element may be changed dynamically.
The buffer-write-timeout component configuration element has no child elements.
The following example shows how to use the buffer-write-timeout element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<batch-size>100</batch-size>
<buffer-size>100</buffer-size>
<buffer-write-attempts>100</buffer-write-attempts>
<buffer-write-timeout>100</buffer-write-timeout>
</write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define a cache for a component. A cache is a temporary storage area for events, created exclusively to improve the overall performance of your Oracle CEP application; it is not necessary for the application to function correctly. Oracle CEP applications can optionally publish or consume events to and from a cache to increase the availability of the events and increase the performance of their applications.
For more information, see Section 12.2, "Configuring an Oracle CEP Local Caching System and Cache".
The cache component configuration element supports the following child elements:
The following example shows how to use the cache element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-none/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define an Oracle CEP local caching system component. A caching system refers to a configured instance of a caching implementation. A caching system defines a named set of configured caches as well as the configuration for remote communication if any of the caches are distributed across multiple machines.
For more information, see Section 12.2.1, "Configuring an Oracle CEP Local Cache as an Event Listener".
The caching-system component configuration element supports the following child elements:
The following example shows how to use the caching-system element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-none/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
In the example, the channel's unique identifier is providerCachingSystem.
Use this element to define a channel component. An Oracle CEP application contains one or more channel components that represent the physical conduit through which events flow between other types of components, such as between adapters and processors, and between processors and event beans (business logic POJOs).
The channel component configuration element supports the following child elements:
The following example shows how to use the channel element in the component configuration file:
<channel>
<name>MatchOutputChannel</name>
<max-size>0</max-size>
<max-threads>0</max-threads>
<selector>match</selector>
</channel>
In the example, the channel's unique identifier is MatchOutputChannel.
Use the channel element to specify the channel that the http-pub-sub-adapter publishes or subscribes to, whichever is appropriate, for all http-pub-sub-adapter, whether they are local or remote or for publishing or subscribing.
The following example shows how to use the channel element in the component configuration file:
<http-pub-sub-adapter>
<name>localPublisher</name>
<server-context-path>/pubsub</server-context-path>
<channel>/channel2</channel>
</http-pub-sub-adapter>
In the example, the localPublisher pub-sub adapter publishes to a local channel with pattern /channel2.
Use this element to define the Oracle Coherence cache configuration for a coherence-caching-system.
For more information, see Section 12.2, "Configuring an Oracle CEP Local Caching System and Cache".
The coherence-cache-config component configuration element has no child elements.
The following example shows how to use the coherence-cache-config element in the component configuration file:
<coherence-caching-system>
<name>nativeCachingSystem</name>
<coherence-cache-config>
applications/cache_cql/coherence/coherence-cache-config.xml
</coherence-cache-config></coherence-caching-system>
Use this element to define an Oracle Coherence caching system component. A caching system refers to a configured instance of a caching implementation. A caching system defines a named set of configured caches as well as the configuration for remote communication if any of the caches are distributed across multiple machines.
For more information, see Section 12.3, "Configuring an Oracle Coherence Caching System and Cache".
The coherence-caching-system component configuration element supports the following child elements:
The following example shows how to use the coherence-caching-system element in the component configuration file:
<coherence-caching-system>
<name>nativeCachingSystem</name>
<coherence-cache-config>
applications/cache_cql/coherence/coherence-cache-config.xml
</coherence-cache-config>
</coherence-caching-system>
In the example, the channel's unique identifier is nativeCachingSystem.
Use this element to define the Oracle Coherence cluster configuration for a coherence-caching-system.
For more information, see "Overview of Oracle CEP Multi-Server Domain Administration" in the Oracle CEP Administrator's Guide.
The coherence-cache-config component configuration element has no child elements.
The following example shows how to use the coherence-cache-config element in the component configuration file:
<coherence-caching-system>
<name>nativeCachingSystem</name>
<coherence-cluster-config>
applications/cluster_cql/coherence/coherence-cluster-config.xml
</coherence-cluster-config></coherence-caching-system>
Use this element to define the collection interval of an average-latency or max-latency element in a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The collect-interval component configuration element supports the following child elements:
The following example shows how to use the collect-interval element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define the number of consumers to create. Default value is 1. If you set this value to number greater than one, be sure that your converter bean is thread-safe. This is because the converter bean will be shared among the consumers.
The concurrent-consumers component configuration element has no child elements.
The following example shows how to use the concurrent-consumers element in the component configuration file:
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted></jms-adapter>
Use this optional element to define a JNDI name of the JMS connection factory. Default value is weblogic.jms.ConnectionFactory for Oracle CEP server JMS.
The connection-jndi-name component configuration element has no child elements.
The following example shows how to use the connection-jndi-name element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<concurrent-consumers>1</concurrent-consumers>
<session-transacted>false</session-transacted>
</jms-adapter>
Use the connection-encrypted-password element to define the encrypted jms-adapter password that Oracle CEP uses when it acquires a connection to the JMS service provider.
When Oracle CEP calls the createConnection method on the javax.jms.ConnectionFactory to create a connection to the JMS destination (JMS queue or topic), it uses the connection-user and connection-password or connection-encrypted-password element, if configured. Otherwise, Oracle CEP uses the user and password (or encrypted-password) elements.
Use either connection-encrypted-password or connection-password but not both.
For more information, see Section 6.2.4, "Encrypting Passwords in the JMS Adapter Configuration File".
The connection-encrypted-password component configuration element has no child elements.
The following example shows how to use the connection-encrypted-password element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://localhost:9002/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<password>wlevs</password>
<connection-user>wlevscon</user>
<encrypted-password>{Salted-3DES}s4YUEvH4Wl2DAjb45iJnrw==</encrypted-password>
</http-pub-sub-adapter>
Use the connection-password element to define the jms-adapter password that Oracle CEP uses when it acquires a connection to the JMS service provider.
When Oracle CEP calls the createConnection method on the javax.jms.ConnectionFactory to create a connection to the JMS destination (JMS queue or topic), it uses the connection-user and connection-password or connection-encrypted-password element, if configured. Otherwise, Oracle CEP uses the user and password (or encrypted-password) elements.
Use either connection-password or connection-encrypted-password but not both.
The connection-password component configuration element has no child elements.
The following example shows how to use the connection-password element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://localhost:9002/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<password>wlevs</password>
<connection-user>wlevscon</user>
<connection-password>wlevscon</password>
</http-pub-sub-adapter>
Use the connection-user element to define the jms-adapter user name that Oracle CEP uses when it acquires a connection to the JMS service provider.
When Oracle CEP calls the createConnection method on the javax.jms.ConnectionFactory to create a connection to the JMS destination (JMS queue or topic), it uses the connection-user and connection-password or connection-encrypted-password element, if configured. Otherwise, Oracle CEP uses the user and password (or encrypted-password) elements.
You can use the connection-user and connection-password (or connection-encrypted-password) settings in applications where one security provider is used for JNDI access and a separate security provider is used for JMS access.
The following example shows how to use the connection-user element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://localhost:9002/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<password>wlevs</password>
<connection-user>wlevscon</user>
<connection-password>wlevscon</password>
</http-pub-sub-adapter>
Use this element to define a database reference for an EPL processor component.
For more information, see Chapter 11, "Configuring EPL Processors".
The following example shows how to use the database element in the component configuration file:
<processor>
<name>proc</name>
<rules>
<rule id="rule1"><![CDATA[
SELECT symbol, price
FROM ExchangeEvent retain 1 event,
StockDb ('SELECT symbol FROM Stock WHERE symbol = ${symbol}')
]]></rule>
</rules>
<database name="StockDb" data-source-name="StockDs" />
</processor>
Use this element to define the group of data that the user wants to group together. In the case of the Oracle RDBMS-based provider, it specifies the database area, or schema, in which the tables that store the recorded events are created. When configuring the Oracle RDBMS-based provider, you are required to specify this element.
The following example shows how to use the dataset-name element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define the delivery mode for a jms-adapter.
Valid values are:
persistent (default)
nonpersistent
The following example shows how to use the delivery-mode element in the component configuration file:
<jms-adapter>
<name>jmsOutbound-map</name>
<event-type>JMSTestEvent</event-type>
<jndi-provider-url>t3://localhost:7001</jndi-provider-url>
<destination-jndi-name>Topic1</destination-jndi-name>
<delivery-mode>nonpersistent</delivery-mode>
</jms-adapter>
Use this required element to define the JMS destination name for a jms-adapter.
Specify either the JNDI name or the actual destination-name, but not both.
The destination-jndi-name component configuration element has no child elements.
The following example shows how to use the destination-jndi-name element in the component configuration file:
<jms-adapter>
<name>jmsOutbound-map</name>
<event-type>JMSTestEvent</event-type>
<jndi-provider-url>t3://localhost:7001</jndi-provider-url>
<destination-jndi-name>Topic1</destination-jndi-name>
<delivery-mode>nonpersistent</delivery-mode>
</jms-adapter>
Use this required element to define the JMS destination name for a jms-adapter.
Specify either the actual destination name or the destination-jndi-name, but not both.
The following example shows how to use the destination-name element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<concurrent-consumers>1</concurrent-consumers>
<session-transacted>false</session-transacted>
</jms-adapter>
Use this element to define one or more Oracle CEP diagnostic profiles.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The diagnostics-profiles component configuration element supports the following child elements:
The following example shows how to use the diagnostics-profiles element in the component configuration file:
<diagnostics-profiles>
<name>myDiagnosticProfiles</name>
<profile>
...
</profile>
</diagnostics-profiles>
In the example, the channel's unique identifier is myDiagnosticProfiles.
Use this element to define the direction for a diagnostic profile end-location or start-location.
Valid values are:
INBOUND
OUTBOUND
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The following example shows how to use the direction element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define a time duration for a schedule-time-range-offset or time-range-offset element in the form:
HH:MM:SS
Where: HH is a number of hours, MM is a number of minutes, and SS is a number of seconds.
The following example shows how to use the duration element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<time-range-offset>
<start>04-07-2009:06:00:00</start>
<duration>03:00:00</duration>
</time-range-offset>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define whether or not a diagnostic profile is enabled.
Valid values are:
true
false
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The following example shows how to use the enabled element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use the encrypted-password element in the following parent elements:
http-pub-sub-adapter: Use the encrypted-password element to define the encrypted password if the HTTP pub-sub server to which the Oracle CEP application is publishing requires user authentication.
jms-adapter: When Oracle CEP acquires the JNDI InitialContext, it uses the user and password (or encrypted-password) elements. When Oracle CEP calls the createConnection method on the javax.jms.ConnectionFactory to create a connection to the JMS destination (JMS queue or topic), it uses the connection-user and connection-password (or connection-encrypted-password element), if configured. Otherwise, Oracle CEP the user and password (or encrypted-password) elements.
Use either encrypted-password or password but not both.
For more information, see Section 6.2.4, "Encrypting Passwords in the JMS Adapter Configuration File".
The following example shows how to use the encrypted-password element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://localhost:9002/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<encrypted-password>{Salted-3DES}s4YUEvH4Wl2DAjb45iJnrw==</encrypted-password>
</http-pub-sub-adapter>
Use this element to define an end time for a time-range element using the following format:
MM-DD-YYYY:HH:MM:SS
Where MM is the two-digit month, DD is the two-digit day of the month, YYYY is the four-digit year, HH is the hour (in 24-hour format), MM is the two-digit minutes, and SS is the two-digit seconds.
The following example shows how to use the end element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<time-range>
<start>04-07-2009:06:00:00</start>
<end>04-10-2009:22:00:00</end>
</time-range>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define the end location of a average-latency or max-latency element in a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The end-location component configuration element supports the following child elements:
The following example shows how to use the end-location element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define an event bean component.
For more information, see Chapter 8, "Configuring Custom Adapters, Event Beans, and Spring Beans".
The event-bean component configuration element supports the following child elements:
Use the event-type element in the following parent elements:
http-pub-sub-adapter: Use the event-type element to specify the JavaBean to which incoming messages are mapped for an http-pub-sub-adapter you configured for subscribing. This setting is mandatory.
You can also optionally use the event-type element in a pub-sub adapter for publishing if you want to limit the types of events that are published to just those specified by the event-type elements. Otherwise, all events sent to the pub-sub adapter are published. For example:
At runtime, Oracle CEP uses the incoming key-value pairs in the message to map the message data to the specified event type.
jms-adapter: Use the event-type element to specify an event type whose properties match the JMS message properties. Specify this child element only if you want Oracle CEP to automatically perform the conversion between JMS messages and events. If you have created your own custom converter bean, then do not specify this element.
record-parameters: Use the event-type element to specify an event that you want to record.
The value of the event-type element must be one of the event types you defined in your event type repository. For more information, see Section 1.1.2, "Event Types".
The following example shows how to use the event-type element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define one or more events for record or playback for a component.
The event-type-list component configuration element supports the following child elements:
The following example shows how to use the event-type-list element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define the eviction policy the cache uses when max-size is reached.
Valid values are:
FIFO: first in, first out.
LRU: least recently used
LFU: least frequently used (default)
NRU: not recently used
The following example shows how to use the eviction-policy element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-none/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define a heartbeat timeout for a system-timestamped channel component.
For system-timestamped relations or streams, time is dependent upon the arrival of data on the relation or stream data source. Oracle CEP generates a heartbeat on a system timestamped relation or stream if there is no activity (no data arriving on the stream or relation's source) for more than this number of nanoseconds. Either the relation or stream is populated by its specified source or Oracle CEP generates a heartbeat every heartbeat-timeout number of nanoseconds.
The heartbeat child element applies to system-timestamped relations or streams only when no events arrive in the event channels that are feeding the processors and the processor has been configured with a statement that includes some temporal operator, such as a time-based window or a pattern matching with duration.
Note:
This attribute is only applicable when a non-streaming source is connected to the channelThe following example shows how to use the channel element in the component configuration file:
<channel>
<name>MatchOutputChannel</name>
<max-size>0</max-size>
<max-threads>0</max-threads>
<selector>match</selector>
<heartbeat-timeout>10000</heartbeat-timeout>
</channel>
In the example, the channel's unique identifier is MatchOutputChannel.
Use this element to define an HTTP publish-subscribe server adapter component.
For more information, see Chapter 7, "Configuring HTTP Publish-Subscribe Server Adapters".
The http-pub-sub-adapter component configuration element supports the following child elements:
The following example shows how to use the http-pub-sub-adapter element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://localhost:9002/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<password>wlevs</password>
</http-pub-sub-adapter>
In the example, the adapter's unique identifier is remotePub.
Use this element to define the number of milliseconds a cache entry may not be accessed before being actively removed from the cache. By default, there is no idle-time set. This element may be changed dynamically.
The following example shows how to use the idle-time element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-none/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define a JMS adapter component.
For more information, see Chapter 6, "Configuring JMS Adapters".
The jms-adapter component configuration element supports the following child elements:
One of:
One of:
One of:
The following example shows how to use the jms-adapter element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<jndi-provider-url>t3://localhost:7001</jndi-provider-url>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<concurrent-consumers>1</concurrent-consumers>
<session-transacted>false</session-transacted>
</jms-adapter>
In the example, the adapter's unique identifier is jmsInbound-text.
Use this optional element to define a JNDI factory for a jms-adapter. The JNDI factory name. Default value is weblogic.jndi.WLInitialContextFactory, for Oracle CEP server JMS
The following example shows how to use the jndi-provider-url element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<jndi-factory>weblogic.jndi.WLInitialContextFactory</jndi-factory>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<concurrent-consumers>1</concurrent-consumers>
<session-transacted>false</session-transacted>
</jms-adapter>
Use this required element to define a JNDI provider URL for a jms-adapter.
The following example shows how to use the jndi-provider-url element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<jndi-provider-url>t3://localhost:7001</jndi-provider-url>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<concurrent-consumers>1</concurrent-consumers>
<session-transacted>false</session-transacted>
</jms-adapter>
Use this element to define the behavior for cache listeners.
The listeners element has a single child element, work-manager-name, that specifies the work manager to be used for asynchronously invoking listeners. This value is ignored if synchronous invocations are enabled. If a work manager is specified for the cache itself, this value overrides it for invoking listeners only.
The listeners component configuration element supports the following child elements:
The following example shows how to use the listeners element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<batch-size>100</batch-size>
<buffer-size>100</buffer-size>
<buffer-write-attempts>100</buffer-write-attempts>
<buffer-write-timeout>100</buffer-write-timeout>
</write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define the location of a throughput element in a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The location component configuration element supports the following child elements:
The following example shows how to use the location element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<throughput>
<throughput-interval>
<amount>100000</amount>
<unit>MICROSECONDS</unit>
</throughput-interval>
<average-interval>
<amount>100000000</amount>
<unit>NANOSECONDS</unit>
</average-interval>
<location>
<application>diagnostic</application>
<stage>AlertEventStream</stage>
<direction>INBOUND</direction>
</location>
</throughput>
</profile>
</diagnostic-profiles>
Use this element to define the maximum latency calculation of a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The max-latency component configuration element supports the following child elements:
The following example shows how to use the max-latency element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use the max-size element in the following parent elements:
channel or stream: Use the max-size child element to specify the maximum size of the channel. Zero-size channels synchronously pass-through events. Non-zero size channels process events asynchronously, buffering events by the requested size. If max-threads is zero, then max-size is zero. The default value is 0.
cache: Use the max-size element to define the number of cache elements in memory after which eviction or paging occurs. Currently, the maximum cache size is 2^31-1 entries. This element may be changed dynamically
Use this element to define the maximum number of threads that Oracle CEP server uses to process events for a channel or stream. The default value is 0..
When set to 0, the channel acts as a pass-through. When max-threads > 0, the channel acts as classic blocking queue, where upstream components are producers of events and the downstream components are the consumers of events. The queue size is defined by the configuration max-size. There will be up to max-threads number of threads consuming events from the queue.
You can change max-threads from 0 to a positive integer (that is, from a pass through to multiple threads) without redeploying. However, if you change max-threads from a positive integer to 0 (that is, from multiple threads to a pass through), then you must redeploy your application.
If the max-size attribute is 0, then setting a value for max-threads has no effect.
The default value for this attribute is 0.
Setting this value has no effect when max-size is 0.
Use this element to JMS message selector to use to filter messages in a jms-adapter.
The syntax of a message selector expression is based on a subset of the SQL92 conditional expression syntax and message headers and properties. For example, to select messages based on property EventType, you could use:
EventType = 'News' OR 'Commentary'
The following example shows how to use the message-selector element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<message-selector>EventType = 'News' OR 'Commentary'</message-selector>
<session-transacted>false</session-transacted>
</jms-adapter>
Use the name element in the following parent elements:
adapter, http-pub-sub-adapter, jms-adapter, processor (EPL), processor (Oracle CQL), stream, channel, event-bean, caching-system, and coherence-caching-system: Use the name element to associate this application configuration element with its corresponding element in the EPN assembly file. Valid value is the corresponding EPN assembly file element id attribute.
diagnostic-profiles: Use the name element to uniquely identify the diagnostic-profiles element and each of its profile child elements.
parameter: Use the name element to define the name of a name/value pair.
Use this element to define a network input/output port for a component.
The netio component configuration element supports the following child elements:
Use this element to define the number of threads in a network input/output port for a component.
Use this element to define a name/value parameter for a component.
The parameter component configuration element supports the following child elements:
The following example shows how to use the parameter element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define the parameters for a binding element.
The value of this element is a comma separated list of simple type values. The order of the values must correspond with the order of the parameters in the EPL rule associated with this binding.
For more information, see "Parameterized Queries" in the Oracle CEP EPL Language Reference.
The following example shows how to use the params element in the component configuration file:
<processor>
<name>processor1</name>
<record-parameters>
<dataset-name>test1data</dataset-name>
<event-type-list>
<event-type>SimpleEvent</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
<rules>
<rule id="rule1"><![CDATA[
select stockSymbol, avg(price) as percentage
from StockTick retain 5 events
where stockSymbol=?
having avg(price) > ? or avg(price) < ?
]]></rule>
</rules>
<bindings>
<binding id="rule1">
<params>BEAS,10.0,-10.0</params>
<params id="IBM">IBM,5.0,5.0</params>
</binding>
</bindings>
</processor>
Use the password element in the following parent elements:
http-pub-sub-adapter: Use the password element to define the user password if the HTTP pub-sub server to which the Oracle CEP application is publishing requires user authentication.
jms-adapter: When Oracle CEP acquires the JNDI InitialContext, it uses the user and password (or encrypted-password) elements. When Oracle CEP calls the createConnection method on the javax.jms.ConnectionFactory to create a connection to the JMS destination (JMS queue or topic), it uses the connection-user and connection-password (or connection-encrypted-password element), if configured. Otherwise, Oracle CEP the user and password (or encrypted-password) elements.
Use either encrypted-password or password but not both.
The following example shows how to use the password element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://localhost:9002/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<password>wlevs</password>
</http-pub-sub-adapter>
Use this element to define event playback parameters for a component.
For more information, see Chapter 13, "Configuring Event Record and Playback".
The playback-parameters component configuration element supports the following child elements:
The following example shows how to use the playback-parameters element in the component configuration file:
<playback-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
</playback-parameters>
Use this element to define the playback speed as a positive float. The default value is 1, which corresponds to normal speed. A value of 2 means that events will be played back 2 times faster than the original record speed. Similarly, a value of 0.5 means that events will be played back at half the speed.
The following example shows how to use the duration element in the component configuration file:
<playback-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<time-range-offset>
<start>04-07-2009:06:00:00</start>
<duration>03:00:00</duration>
</time-range-offset>
<playback-speed>100</playback-speed>
</playback-parameters>
Use this element to define an Oracle CQL or EPL processor component.
For more information, see Chapter 11, "Configuring EPL Processors".
For information on the processor element for Oracle CQL processors, see processor (Oracle CQL).
The processor component configuration element supports the following child elements:
The following example shows how to use the processor element in the component configuration file:
<processor>
<name>processor1</name>
<record-parameters>
<dataset-name>test1data</dataset-name>
<event-type-list>
<event-type>SimpleEvent</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
<rules>
<rule id="rule1"><![CDATA[
select stockSymbol, avg(price) as percentage
from StockTick retain 5 events
where stockSymbol=?
having avg(price) > ? or avg(price) < ?
]]></rule>
</rules>
<bindings>
<binding id="rule1">
<params>BEAS,10.0,-10.0</params>
<params id="IBM">IBM,5.0,5.0</params>
</binding>
</bindings>
</processor>
In the example, the processor's unique identifier is processor1.
Use this element to define an Oracle CQL processor component.
For more information, see Chapter 10, "Configuring Oracle CQL Processors".
For information on the processor element for EPL processors, see processor (EPL).
The processor component configuration element supports the following child elements:
The following example shows how to use the processor element in the component configuration file:
<processor>
<name>cqlProcessor</name>
<rules>
<view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from inputChannel[partition by srcId, cusip rows 1]
]]></view>
<view id="bidask" schema="cusip bid ask"><![CDATA[
select cusip, max(bid), min(ask)
from lastEvents
group by cusip
]]></view>
<view ...><![CDATA[
...
]]></view>
...
<view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[
select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask
where bid.cusip = ask.cusip
]]></view>
<query id="BBAQuery"><![CDATA[
ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority
from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip)
]]></query>
</rules>
</processor>
In the example, the processor's unique identifier is cqlProcessor.
Use this element to define a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The profile component configuration element supports the following child elements:
The following example shows how to use the profile element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
<average-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
<threshhold>
<amount>100</amount>
<unit>MILLISECONDS</unit>
</threshhold>
</average-latency>
<throughput>
<throughput-interval>
<amount>100000</amount>
<unit>MICROSECONDS</unit>
</throughput-interval>
<average-interval>
<amount>100000000</amount>
<unit>NANOSECONDS</unit>
</average-interval>
<location>
<application>diagnostic</application>
<stage>AlertEventStream</stage>
<direction>INBOUND</direction>
</location>
</throughput>
</profile>
</diagnostic-profiles>
Use the provider-name element in the following parent elements:
netio: Use the provider-name element to define which provider to use for the underlying socket implementation. Valid value is an Oracle CEP server config.xml file netio child element provider-type.
record-parameters: Use the provider-name element to define the name of the event store provider. The value of this element corresponds to the value of the name child element of the rdbms-event-store-provider element in the config.xml file of the Oracle CEP server instance. When configuring the Oracle RDBMS-based provider, you are required to specify this element; see Section 13.2.1, "Configuring an Event Store for Oracle CEP Server."
Use this element to define an Oracle CQL query for a component.
For more information, see Chapter 10, "Configuring Oracle CQL Processors".
The following example shows how to use the query element in the component configuration file:
<processor>
<name>cqlProcessor</name>
<rules>
<view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from inputChannel[partition by srcId, cusip rows 1]
]]></view>
<view id="bidask" schema="cusip bid ask"><![CDATA[
select cusip, max(bid), min(ask)
from lastEvents
group by cusip
]]></view>
<view ...><![CDATA[
...
]]></view>
...
<view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[
select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask
where bid.cusip = ask.cusip
]]></view>
<query id="BBAQuery"><![CDATA[
ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority
from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip)
]]></query>
</rules>
</processor>
Use this element to define event record parameters for a component.
For more information, see Chapter 13, "Configuring Event Record and Playback".
The record-parameters component configuration element supports the following child elements:
The following example shows how to use the record-parameters element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define whether or not to repeat playback-parameters.
Valid values are:
true
false
The following example shows how to use the duration element in the component configuration file:
<playback-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<time-range-offset>
<start>04-07-2009:06:00:00</start>
<duration>03:00:00</duration>
</time-range-offset>
<repeat>true</repeat>
</playback-parameters>
Use this element to define an EPL rule for a component.
This element is applicable only in a rules element.
Use this element to define one or more Oracle CQL queries or views for a processor (Oracle CQL) or EPL rules for a processor (EPL).
The rules component configuration element supports the following child elements:
The following example shows how to use the rules element in the component configuration file:
<processor>
<name>cqlProcessor</name>
<rules>
<view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from inputChannel[partition by srcId, cusip rows 1]
]]></view>
<view id="bidask" schema="cusip bid ask"><![CDATA[
select cusip, max(bid), min(ask)
from lastEvents
group by cusip
]]></view>
<view ...><![CDATA[
...
]]></view>
...
<view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[
select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask
where bid.cusip = ask.cusip
]]></view>
<query id="BBAQuery"><![CDATA[
ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority
from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip)
]]></query>
</rules>
</processor>
Use this element to define the time during which events will be played back to the stage. Playing back will start at the specified start time and will continue until all the events are played back or specified end time. If repeat is set to true, playback will continue until the specified end time or until playback is explicitly stopped by the user.
This element is applicable only to the playback-parameters element.
The schedule-time-range component configuration element supports the following child elements:
The following example shows how to use the schedule-time-range element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<schedule-time-range>
<start>04-07-2009:06:00:00</start>
<end>04-10-2009:22:00:00</end>
</schedule-time-range>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define the time during which events will be played back to the stage. Playing back will start at the specified start time and will continue until all the events are played back or specified end time. If repeat is set to true, playback will continue until the specified end time or until playback is explicitly stopped by the user.
This element is applicable only to the playback-parameters element.
The schedule-time-range-offset component configuration element supports the following child elements:
The following example shows how to use the schedule-time-range-offset element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<schedule-time-range-offset>
<start>04-07-2009:06:00:00</start>
<duration>03:00:00</duration>
</schedule-time-range-offset>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to specify which up-stream Oracle CQL processor queries are permitted to output their results to a downstream channel.
Figure C-1 shows an EPN with channel filteredStream connected to up-stream Oracle CQL processor filteredFanoutProcessor.
Figure C-1 EPN With Oracle CQL Processor and Down-Stream Channel

Example C-12 shows the queries configured for the Oracle CQL processor.
Example C-12 filterFanoutProcessor Oracle CQL Queries
<processor>
<name>filterFanoutProcessor</name>
<rules>
<query id="Yr3Sector"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from priceStream where sector="3_YEAR"
]]></query>
<query id="Yr2Sector"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from priceStream where sector="2_YEAR"
]]></query>
<query id="Yr1Sector"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from priceStream where sector="1_YEAR"
]]></query>
</rules>
</processor>
If you specify more than one query for an Oracle CQL processor as Example C-12 shows, then, by default, all query results are output to the processor's out-bound channel (filteredStream in Figure C-1). Optionally, in the component configuration source, you can use the channel element selector attribute to specify a space-delimited list of one or more Oracle CQL query names that may output their results to the channel as Example C-13 shows. In this example, query results for query Yr3Sector and Yr2Sector are output to filteredStream but not query results for query Yr1Sector.
Example C-13 Using selector to Control Which Query Results are Output
<channel>
<name>filteredStream</name>
<selector>Yr3Sector Yr2Sector</selector>
</channel>
Note:
Theselector attribute is only applicable if the up-stream node is an Oracle CQL processor. For more information, see Chapter 10, "Configuring Oracle CQL Processors".The following example shows how to use the selector element in the component configuration file:
<processor>
<name>PatternProcessor</name>
<rules>
<query id="match"><![CDATA[
select T.firstW as firstw, T.lastZ as lastz, T.price as price
from StockInputsStream
MATCH_RECOGNIZE (
MEASURES A.c1 as firstW, last(Z.c1) as lastZ, A.c2 as price
PATTERN(A W+ X+ Y+ Z+)
DEFINE A as A.c1 = A.c1,
W as W.c2 < prev(W.c2),
X as X.c2 > prev(X.c2),
Y as Y.c2 < prev(Y.c2),
Z as Z.c2 > prev(Z.c2))
as T
]]></query>
<query id="stock"><![CDATA[
select c1 as ts, c2 as price from StockInputsStream
]]></query>
</rules>
</processor>
<channel>
<name>StockOutputChannel</name>
<selector>stock</selector>
</channel>
<channel>
<name>MatchOutputChannel</name>
<selector>match</selector>
</channel>
Use this element to define the path of the local HTTP pub-sub server associated with the Oracle CEP instance hosting the current Oracle CEP application, for each local http-pub-sub-adapter configured for publishing.
By default, each Oracle CEP server is configured with an HTTP pub-sub server with path /pubsub; if, however, you have created a new local HTTP pub-sub server, or changed the default configuration, then specify the value of the path child element of the http-pubsub element in the Oracle CEP server config.xml file.
The server-context-path component configuration element has no child elements.
Use this element to define the URL of the remote HTTP pub-sub server to which the Oracle CEP application will publish or subscribe, respectively. The remote pub-sub server could be another instance of Oracle CEP, or a WebLogic Server instance, or it could be any third-party HTTP pub-sub server (for both publishing and subscribing).
The following example shows how to use the server-url element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://myhost.com:9102/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<password>wlevs</password>
</http-pub-sub-adapter>
In the example, the URL of the remote HTTP pub-sub server to which the remotePublisher adapter will publish events is http://myhost.com:9102/pubsub.
Use this element to define the session acknowledge mode name for a jms-adapter.
Valid values from javax.jms.Session are:
AUTO_ACKNOWLEDGE: With this acknowledgment mode, the session automatically acknowledges a client's receipt of a message either when the session has successfully returned from a call to receive or when the message listener the session has called to process the message successfully returns.
CLIENT_ACKNOWLEDG: With this acknowledgment mode, the client acknowledges a consumed message by calling the message's acknowledge method.
DUPS_OK_ACKNOWLEDGE: This acknowledgment mode instructs the session to lazily acknowledge the delivery of messages.
The session-ack-mode-name component configuration element has no child elements.
The following example shows how to use the session-ack-mode-name element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<session-ack-mode-name>AUTO_ACKNOWLEDGE</session-ack-mode-name>
<session-transacted>false</session-transacted>
</jms-adapter>
Use this element to define whether or not a session is transacted for a jms-adapter.
Valid values are:
true
false
The following example shows how to use the session-transacted element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<session-ack-mode-name>AUTO_ACKNOWLEDGE</session-ack-mode-name>
<session-transacted>false</session-transacted>
</jms-adapter>
Use this element to define the stage for a start-location or end-location element of a diagnostic profile.
Valid values are the name of an existing stage in your Event Processing Network (EPN). For more information, see Section 1.1.1, "Components of the Oracle CEP Event Processing Network".
The following example shows how to use the stage element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define a start time for a time-range element using the following format.
MM-DD-YYYY:HH:MM:SS
Where MM is the two-digit month, DD is the two-digit day of the month, YYYY is the four-digit year, HH is the hour (in 24-hour format), MM is the two-digit minutes, and SS is the two-digit seconds.
The following example shows how to use the start element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<time-range>
<start>04-07-2009:06:00:00</start>
<end>04-10-2009:22:00:00</end>
</time-range>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define the start location of a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The start-location component configuration element supports the following child elements:
The following example shows how to use the start-location element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define the starting stage of a diagnostic profile.
Valid values are the name of an existing stage in your Event Processing Network (EPN). For more information, see Section 1.1.1, "Components of the Oracle CEP Event Processing Network".
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The following example shows how to use the start-stage element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use this element to define one or more store policy parameter, specific to the event store provider.
The store-policy-parameter component configuration element supports the following child elements:
The following example shows how to use the store-policy-parameter element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define a stream component.
Note:
Thestream component is deprecated in Release 11gR1 (11.1.1). Use the channel element instead.The stream component configuration element supports the following child elements:
Use this element to define a symbol for an adapter, http-pub-sub-adapter, or jms-adapter element.
Note:
Thesymbol component is deprecated in Release 11gR1 (11.1.1).Use this element to define one or more symbol elements for a component.
Note:
Thesymbol component is deprecated in Release 11gR1 (11.1.1).The symbols component configuration element supports the following child elements:
Use this element to define the threshold above which Oracle CEP server logs a monitoring event.
This element is applicable only in an average-latency element in a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The threshhold component configuration element supports the following child elements:
The following example shows how to use the threshhold element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<average-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
<threshhold>
<amount>100</amount>
<unit>MILLISECONDS</unit>
</threshhold>
</average-latency>
</profile>
</diagnostic-profiles>
Use this element to define a throughput diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The throughput component configuration element supports the following child elements:
The following example shows how to use the throughput element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<throughput>
<throughput-interval>
<amount>100000</amount>
<unit>MICROSECONDS</unit>
</throughput-interval>
<average-interval>
<amount>100000000</amount>
<unit>NANOSECONDS</unit>
</average-interval>
<location>
<application>diagnostic</application>
<stage>AlertEventStream</stage>
<direction>INBOUND</direction>
</location>
</throughput>
</profile>
</diagnostic-profiles>
Use this element to define the throughput interval of a diagnostic profile.
For more information, see "Monitoring the Throughput and Latency of a Stage or Path in the EPN" in the Oracle CEP Visualizer User's Guide.
The throughput-interval component configuration element supports the following child elements:
The following example shows how to use the throughput-interval element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<throughput>
<throughput-interval>
<amount>100000</amount>
<unit>MICROSECONDS</unit>
</throughput-interval>
<average-interval>
<amount>100000000</amount>
<unit>NANOSECONDS</unit>
</average-interval>
<location>
<application>diagnostic</application>
<stage>AlertEventStream</stage>
<direction>INBOUND</direction>
</location>
</throughput>
</profile>
</diagnostic-profiles>
Use this element to define a filter that Oracle CEP server applies to the events in the event store. Only events with a record-time in this time range will be played back to the stage.
Use either time-range-offset or time-range but not both.
For more information, see Chapter 13, "Configuring Event Record and Playback".
The time-range component configuration element supports the following child elements:
The following example shows how to use the time-range element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<time-range>
<start>04-07-2009:06:00:00</start>
<end>04-10-2009:22:00:00</end>
</time-range>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define a filter that Oracle CEP server applies to the events in the event store. Only events with a record-time in this time range will be played back to the stage.
Use either time-range or time-range-offset but not both.
For more information, see Chapter 13, "Configuring Event Record and Playback".
The time-range-offset component configuration element supports the following child elements:
The following example shows how to use the time-range-offset element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<time-range-offset>
<start>04-07-2009:06:00:00</start>
<duration>03:00:00</duration>
</time-range-offset>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define the maximum amount of time, in milliseconds, that an entry is cached. Default value is infinite.
For more information, see Section 12.2, "Configuring an Oracle CEP Local Caching System and Cache".
The following example shows how to use the time-to-live element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-none/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to define the duration units of amount element.
Valid values are:
NANOSECONDS
MICROSECONDS
MILLISECONDS
SECONDS
MINUTES
HOURS
DAYS
The following example shows how to use the unit element in the component configuration file:
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<collect-interval>
<amount>1000</amount>
<unit>s</unit>
</collect-interval>
<name>testProfile0MaxLat</name>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
Use the user element in the following parent elements:
http-pub-sub-adapter: Use the user element to define the user name if the HTTP pub-sub server to which the Oracle CEP application is publishing requires user authentication.
jms-adapter: When Oracle CEP acquires the JNDI InitialContext, it uses the user and password (or encrypted-password) elements. When Oracle CEP calls the createConnection method on the javax.jms.ConnectionFactory to create a connection to the JMS destination (JMS queue or topic), it uses the connection-user and connection-password (or connection-encrypted-password element), if configured. Otherwise, Oracle CEP uses the user and password (or encrypted-password) elements.
The following example shows how to use the user element in the component configuration file:
<http-pub-sub-adapter>
<name>remotePub</name>
<server-url>http://localhost:9002/pubsub</server-url>
<channel>/test1</channel>
<event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type>
<user>wlevs</user>
<password>wlevs</password>
</http-pub-sub-adapter>
Use this element to define the value of a parameter element.
The following example shows how to use the value element in the component configuration file:
<record-parameters>
<dataset-name>tuple1</dataset-name>
<event-type-list>
<event-type>TupleEvent1</event-type>
</event-type-list>
<provider-name>test-rdbms-provider</provider-name>
<store-policy-parameters>
<parameter>
<name>timeout</name>
<value>300</value>
<parameter>
</store-policy-parameters>
<batch-size>1</batch-size>
<batch-time-out>10</batch-time-out>
</record-parameters>
Use this element to define an Oracle CQL view for a component.
For more information, see Chapter 10, "Configuring Oracle CQL Processors".
Table C-7 lists the attributes of the view component configuration element.
Table C-7 Attributes of the view Component Configuration Element
| Attribute | Description | Data Type | Required? |
|---|---|---|---|
|
|
Unique identifier for this query. |
|
Yes. |
|
|
Execute this query when the application is deployed and run. Valid values are |
|
No. |
|
|
Space delimited list of stream elements used in the view. |
|
No. |
The following example shows how to use the view element in the component configuration file:
<processor>
<name>cqlProcessor</name>
<rules>
<view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from inputChannel[partition by srcId, cusip rows 1]
]]></view>
<view id="bidask" schema="cusip bid ask"><![CDATA[
select cusip, max(bid), min(ask)
from lastEvents
group by cusip
]]></view>
<view ...><![CDATA[
...
]]></view>
...
<view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[
select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask
where bid.cusip = ask.cusip
]]></view>
<query id="BBAQuery"><![CDATA[
ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority
from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip)
]]></query>
</rules>
</processor>
Use this element to define the name of a work manager for a jms-adapter.
Valid value is the name specified in the Oracle CEP server config.xml file work-manager element name child element.The default value is the work manager configured for the application itself.
The following example shows how to use the work-manager element in the component configuration file:
<jms-adapter>
<name>jmsInbound-text</name>
<jndi-provider-url>t3://localhost:7001</jndi-provider-url>
<destination-name>JMSServer-0/Module1!Queue1</destination-name>
<user>weblogic</user>
<password>weblogic</password>
<work-manager>JettyWorkManager</work-manager>
<concurrent-consumers>1</concurrent-consumers>
<session-transacted>false</session-transacted>
</jms-adapter>
Use this element to define a work manager for a cache.
The listeners element has a single child element, work-manager-name, that specifies the work manager to be used for asynchronously invoking listeners. This value is ignored if synchronous invocations are enabled. If a work manager is specified for the cache itself, this value overrides it for invoking listeners only.
Valid value is the name specified in the Oracle CEP server config.xml file work-manager element name child element.The default value is the work manager configured for the application itself.
The following example shows how to use the work-manager-name element in the component configuration file:
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-none/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
Use this element to specify asynchronous writes to the cache store. The cache store is invoked from a separate thread after a create or update of a cache entry. This element may be changed dynamically.
The write-behind component configuration element supports the following child elements:
The following example shows how to use the write-behind element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<batch-size>100</batch-size>
<buffer-size>100</buffer-size>
<buffer-write-attempts>100</buffer-write-attempts>
<buffer-write-timeout>100</buffer-write-timeout>
</write-behind>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to specify no writes to a cache store. This is the default write policy. This element may be changed dynamically.
The following example shows how to use the write-none element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-none/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>
Use this element to specify synchronous writes to the cache store. As soon as an entry is created or updated the write occurs. This element may be changed dynamically.
The following example shows how to use the write-through element in the component configuration file:
<caching-system>
<name>providerCachingSystem</name>
<cache>
<name>providerCache</name>
<max-size>1000</max-size>
<eviction-policy>FIFO</eviction-policy>
<time-to-live>60000</time-to-live>
<idle-time>120000</idle-time>
<write-through/>
<work-manager-name>JettyWorkManager</work-manager-name>
<listeners asynchronous="false">
<work-manager-name>JettyWorkManager</work-manager-name>
</listeners>
</cache>
</caching-system>