...
Code Block | ||
---|---|---|
| ||
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:osgi="http://www.springframework.org/schema/osgi" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/osgi http://www.springframework.org/schema/osgi/spring-osgi.xsd"> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" /> <bean id="jdbc-auditor" class="org.apache.servicemix.nmr.audit.jdbc.JdbcAuditor"> <property name="dataSource" ref="dataSource" /> </bean> <bean id="dataSource" class="org.hsqldb.jdbc.jdbcDataSource"> <property name="database" value="jdbc:hsqldb:file:${servicemix.base}/data/audit/jdbc/hsqldb" /> <property name="user" value="sa" /> </bean> <osgi:service ref="jdbc-auditor"> <osgi:interfaces> <value>org.apache.servicemix.nmr.api.event.Listener</value> <value>org.apache.servicemix.nmr.api.event.ExchangeListener</value> </osgi:interfaces> </osgi:service> <osgi:service ref="file-auditor"> <osgi:interfaces> <value>org.apache.servicemix.nmr.audit.AuditorMBean</value> </osgi:interfaces> </osgi:service> </beans> |
Lucene indexation
Any auditor can be wrapped in a lucene auditor to provide indexation and search in audited exchanges.
Note that prior to installing the nmr-audit
feature, you need to install lucene bundle:
Code Block |
---|
smx@root:/> osgi/install -s wrap:mvn:org.apache.lucene/lucene-core/2.4.1
|
If the feature has already been installed, you need to use the osgi/refresh
command.
Code Block |
---|
smx@root:/> osgi/refresh
|
See the configuration below:
Code Block | ||
---|---|---|
| ||
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:osgi="http://www.springframework.org/schema/osgi"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/osgi
http://www.springframework.org/schema/osgi/spring-osgi.xsd">
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />
<bean id="jdbc-auditor" class="org.apache.servicemix.nmr.audit.jdbc.JdbcAuditor">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="lucene-auditor" class="org.apache.servicemix.nmr.audit.lucene.LuceneAuditor">
<property name="delegatedAuditor" ref="jdbc-auditor" />
<property name="luceneIndexer">
<bean class="org.apache.servicemix.nmr.audit.lucene.LuceneIndexer">
<property name="directoryName" value="${servicemix.base}/data/audit/lucene/" />
</bean>
</property>
</bean>
<bean id="dataSource" class="org.hsqldb.jdbc.jdbcDataSource">
<property name="database" value="jdbc:hsqldb:file:${servicemix.base}/data/audit/jdbc/hsqldb" />
<property name="user" value="sa" />
</bean>
<osgi:service ref="lucene-auditor">
<osgi:interfaces>
<value>org.apache.servicemix.nmr.api.event.Listener</value>
<value>org.apache.servicemix.nmr.api.event.ExchangeListener</value>
</osgi:interfaces>
</osgi:service>
<osgi:service ref="lucene-auditor">
<osgi:interfaces>
<value>org.apache.servicemix.nmr.audit.AuditorMBean</value>
</osgi:interfaces>
</osgi:service>
</beans>
|
Commands
A few commands are available to access the audited exchnanges:
Code Block |
---|
audit/count
audit/ids
audit/exchanges
audit/delete
audit/find
|
The last command audit/find
only works if lucene has been set up as shown above.