在Websphere MQ中,我們可以很容易地發現使用隊列的CURDEPTH屬性的本地隊列中有多少個消息。Websphere MQ - 隊列中所有消息佔用的磁盤空間?
但是我怎樣才能找到這些消息所佔用的實際磁盤空間?由於隊列中的消息可能具有不同的大小,即它們可能需要不同的磁盤空間。
在此先感謝。
在Websphere MQ中,我們可以很容易地發現使用隊列的CURDEPTH屬性的本地隊列中有多少個消息。Websphere MQ - 隊列中所有消息佔用的磁盤空間?
但是我怎樣才能找到這些消息所佔用的實際磁盤空間?由於隊列中的消息可能具有不同的大小,即它們可能需要不同的磁盤空間。
在此先感謝。
查看隊列文件的大小以確定隊列中所有消息佔用的磁盤空間。隊列文件將位於/ qmgrs //隊列文件夾下。隊列文件名將與隊列名稱相同。
謝謝Shashi。 對於其他人,隊列文件的完整路徑是 的/ var/MQM/qmgrs/QMANAGER_FOLDER /隊列/ QUEUE_You_Want/Q
QMANAGER_FOLDER - 隊列管理器目錄
QUEUE_You_Want - 隊列,你正在尋找。
文件'q'的大小足以確定隊列佔用的總磁盤空間。因此,如果文件系統由於某些隊列消息而變滿,我們可以確定哪個隊列需要佔用多少磁盤空間。
磁盤上「隊列」文件的名稱沒有完全映射到隊列名稱。
.
被替換爲!
該文件將被稱爲目錄/var/mqm/qmgrs/QMGR/queues/QUEUE_NAME
q
。/var/mqm/qmgrs/QMGR/queues/QUEUE_NAME
其中隊列名的.
字符替換爲!
,它不再是一個叫做q
文件的目錄。!!GHOST!DEADBEEF!0!DEADBEEF!99
。要找到隊列文件的確切位置使用dspmqfls
命令,如下面的例子:
dspmqfls -m QMGR -t ql SYSTEM.DEFAULT.LOCAL.QUEUE
輸出將是這樣的:
WebSphere MQ Display MQ Files
QLOCAL SYSTEM.DEFAULT.LOCAL.QUEUE
/var/mqm/qmgrs/QMGR/queues/SYSTEM!DEFAULT!LOCAL!QUEUE
注意輸出無論該位置是目錄還是實際文件都是相同的。如果您檢查並且它是一個目錄,您可以在目錄中查找名爲q
的文件,如果它是實際「隊列」文件的文件。隊列目錄的
實施例:一個隊列文件的
$ls -ld /var/mqm/qmgrs/QMGR/queues/SYSTEM!DEFAULT!LOCAL!QUEUE
drwxrwx--- 2 mqm mqm 96 Apr 7 2010 /var/mqm/qmgrs/QMGR/queues/SYSTEM!DEFAULT!LOCAL!QUEUE
實施例:
$ls -ld /var/mqm/qmgrs/QMGR/queues/SYSTEM!DEFAULT!LOCAL!QUEUE
-rw-rw---- 1 mqm mqm 2048 Jul 19 2016 /var/mqm/qmgrs/QMGR/queues/SYSTEM!DEFAULT!LOCAL!QUEUE
注 APAR IT09611它通過7.5適用於IBM MQ v7.5.0.0。 0.5會導致一些隊列文件名被截斷,這在7.5.0.6中得到了解決。
感謝沙市:-) – Sonu