2013-08-02 45 views
1

發現KahaDB默認安裝在ActiveMQ中。找到一個db.data文件,當我打開它(它的配置文件)時,我看到:我如何堅持ActiveMQ消息?

# 
#Fri Aug 02 11:55:47 ART 2013 
fileType=org.apache.activemq.store.kahadb.disk.page.PageFile 
pageSize=4096 
freePages=1 
cleanShutdown=false 
metaDataTxId=7 
fileTypeVersion=1 
lastTxId=52967 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  # 
#Fri Aug 02 11:55:47 ART 2013 
fileType=org.apache.activemq.store.kahadb.disk.page.PageFile 
pageSize=4096 
freePages=1 
cleanShutdown=false 
metaDataTxId=7 
fileTypeVersion=1 
lastTxId=52967 

重複兩次。我應該用Notepad ++還是其他程序編輯它?如果沒有,如果我在那裏添加持久性屬性,我是否應該添加兩次呢?

是否可以通過使用KahaDB來保存消息信息? 我需要類似於: TIMESTAMP,MESSAGE_ID,REPLY_TO

僅此類數據。

嘗試使用log4j和kahadb,但沒有記錄我實際需要的東西。 這是我的log4j.properties文件

# Default log level 
log4j.rootLogger=DEBUG, kahadb 

# KahaDB configuration 
log4j.appender.kahadb=org.apache.log4j.RollingFileAppender 
log4j.appender.kahadb.file=logs/data/kahadb.log 
log4j.appender.kahadb.maxFileSize=1024KB 
log4j.appender.kahadb.maxBackupIndex=5 
log4j.appender.kahadb.append=true 
log4j.appender.kahadb.layout=org.apache.log4j.PatternLayout 
log4j.appender.kahadb.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n 
log4j.logger.org.apache.activemq.store.kahadb.MessageDatabase=TRACE, kahadb 

謝謝。

+0

無法弄清楚你在這裏要做什麼,請多解釋一下。 –

+0

我想保存ActiveMQ隊列消息。 – msqar

回答

2

它不是很清楚你的問題在這裏。默認情況下,代理將使用其內部的KahaDB商店來持久保留髮送到隊列或持久主題訂閱的所有消息,如果這些消息是使用持久性傳遞模式發送的。沒有理由編輯任何KahaDB文件,例如db.data或db.log,因爲這會損壞您的商店。您可以閱讀有關商店架構和性能的商店here

KahaDB上有很多信息可以通過簡單的Google搜索找到。

+0

是的。所以我不需要觸摸這些文件,但消耗它們,對吧? – msqar

+0

我不知道,因爲你真的沒有問任何問題。 –

+0

...我們在說什麼?這些文件,商店文件...沒關係。謝謝 – msqar