Cassandra event publisher dumps events in the map format to a Cassandra database.
Creating a Cassandra event publisher
For instructions on creating a Cassandra event publisher, see /wiki/spaces/TESB/pages/32604392.
Configuring adapter properties
Specify the Static Adapter Properties, when creating a Cassandra event publisher using the management console as shown below.
After entering the above adapter properties, select the Message Format which you want to apply on the published events. Also, click Advanced to define custom output mappings based on the Message Format you selected. For more information on custom output mapping types, see Output Mapping Types.
You can also define the respective adapter properties of the event publisher based on the transport type within the <to>
element of the event publisher configuration in the <PRODUCT_HOME>/repository/deployment/server/eventpublishers/
directory as follows.
<eventPublisher name="CassandraOutputEventAdapter" statistics="disable" trace="disable" xmlns="http://wso2.org/carbon/eventpublisher"> ........................ <to eventAdapterType="cassandra"> <property name="port">9160</property> <property name="indexed.columns">key1,key2</property> <property name="key.space.name">CEP_KS</property> <property name="user.name">admin</property> <property name="column.family.name">CF_Transactions</property> <property name="hosts">testhost1,testhost2</property> <property name="replication.factor">3</property> <property encrypted="true" name="password">kuv2MubUUveMyv6GeHrXr9il59ajJIqUI4eoYHcgGKf/BBFOWn96NTjJQI+wYbWjKW6r79S7L7ZzgYeWx7DlGbff5X3pBN2Gh9yV0BHP1E93QtFqR7uTWi141Tr7V7ZwScwNqJbiNoV+vyLbsqKJE7T3nP8Ih9Y6omygbcLcHzg=</property> <property name="strategy.class">SimpleStrategy</property> </to> </eventPublisher>
The above adapter properties are described below.
Adapter Property | Description | Configuration file property | Example |
---|---|---|---|
Hosts | Hostnames or IP addresses separated by commas | hosts | testhost1,testhost2 |
Port | The Cassandra port. If you do not define this, the default port will be used | port | 9160 |
User Name | Username for the database | user.name | admin |
Password | Password for the database | password | admin |
Keyspace Name | Cassandra keyspace name | key.space.name | CEP_KS |
Column Family Name | Column family namespace under the defined keyspace | column.family.name | CF_Transactions |
Strategy Class | The strategy of the keyspace. If you do not define this, org.apache.cassandra.locator.SimpleStrategy will be used | strategy.class | SimpleStrategy |
Replication Factor | The replication factor of the keyspace. If you do not define this, 1 will be used. | replication.factor | 3 |
Indexed Columns | Columns to be indexed, separated by commas. Index of type "KEYS" with the name | indexed.columns | key1,key2 |