目錄

簡介

必要條件

需求

採用元件

問題

命令repairqueue的使用

驗證

常見問題

如果我的ESA沒有運行11.0.0-264或更高版本，該怎麼辦？

工作隊列「損壞」是否意味著郵件丟失？

工作隊列損壞是否有影響？

什麼會導致隊列損壞？

修復指令碼需要多長時間才能完成？

如果修復隊列無法運行或不完成，會發生什麼情況？

相關資訊

簡介

本檔案將說明隱藏CLI命令repairqueue的使用方式，以及從Cisco電子郵件安全裝置(ESA)的CLI發出此命令時執行的操作。

必要條件

需求

思科建議您瞭解以下主題：

- 通過ESA工作隊列對消息進行系統容量、系統監控、系統運行狀況和整體處理。

- ESA的總體管理。

註：有關詳細資訊，請參閱《ESA使用手冊》或ESA GUI上的聯機幫助。

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- ESA，所有運行AsyncOS 11.0.0-264或更高版本的硬體和虛擬裝置

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

問題

運行repairqueue命令的原因：

- 指出未裝入工作隊列的錯誤。這通常是由於電源重啟不當或裝置重新啟動後發生隊列損壞所致。

- 已知缺陷要求將此作為解決方法(例如CSCuw2284 — 郵件隊列在郵件伺服器崩潰或不當關閉後損壞)。

- 應用程式故障，例如引用「gcq.py」或隊列管理子系統的故障。

- 狀態詳細資訊或工作隊列>費率正在報告負數。

- Status或Status Detail報告「Oldest Message」早於退回配置檔案。此設定的預設值為3天。您可以從bounceconfig > edit進行驗證，然後選擇Default profile。您將查詢「請輸入郵件在硬退回之前可以留在隊列中的最大秒數」行，預設值為259200秒，即3天。這不包括虛擬傳遞域、.<destination>.queue(如.cpq.queue、.euq.queue、.cpq.release.host)。

不運行repairqueue命令的原因：

- 工作隊列處理緩慢不是運行隊列修復的有效原因。管理員通常將慢速工作隊列處理混淆為隊列損壞。工作隊列緩慢通常是由於系統資源服務過度使用導致同一條消息的重複處理造成的。通常，這些重複的處理場景不是通過簡單地運行repairqueue來修復的事。需要對服務進行進一步的故障排除，即消息在處理過程中將「掛起」。

命令repairqueue的使用

運行CLI命令repairqueue可能無法修復所有工作隊列問題或損壞。此實用程式會盡力修復工作隊列。

警告：ESA管理員應該注意，可能會丟失工作隊列中的活動消息。

運行repairqueue時，第一個進程運行將提示一次許可權，以便繼續執行修復：

myesa.local> repairqueue

Do you want to repair or clean the queue?

1. Repair.

2. Clean.

[1]> 1

The mail flow will be stopped through out the repair/cleanup process

WARNING:

This utility does a best effort to repair the queue.

Not all queues corruptions can be repaired.

Are you sure you want to proceed? [N]> y

Checking generation checksum files

...

<<<SNIP FOR BREVITY>>>

...

done

Repair succeeded

Starting Hermes

Hermes Started

Log into the system and verify the status of the system.

註：在虛擬ESA上，忽略以下輸出(已知缺陷(CSCuz28415):"正在等待隊列裝載：無法開啟位於/dev/ipmi0、/dev/ipmi/0或/dev/ipmidev/0的裝置：沒有此類檔案或目錄」

修復過程完成後，將修復工作隊列，但裝置仍將保留上一個工作隊列的舊檢查點。若要繼續寫入工作隊列處理的新檢查點，請再次運行修復隊列，然後發出命令到Clean:

myesa.local> repairqueue

Do you want to repair or clean the queue?

1. Repair.

2. Clean.

[1]> 2

The mail flow will be stopped through out the repair/cleanup process

WARNING:

There is a backup found this may be the only backup.

This will to remove the old queue.

Are you sure you want to proceed? [N]> y

Double confirmation. Are you sure you want to proceed? [N]> y

Removing old queue

Cleanup finished

驗證

repairqueue完成後，請執行以下各項操作，以驗證工作隊列已恢復聯機且裝置正在處理郵件：

1. 從CLI運行status detail命令，或從GUI運行Monitor > System Status，以驗證系統狀態。裝置應反映系統狀態Online。

2. 檢視裝置上的郵件日誌，確保郵件處理符合預期。 這可以通過運行tail mail_logs命令從CLI實現。

3. 從CLI運行workqueue命令，選擇Rate選項（預設速率為10秒）。只要裝置正在處理傳入和/或傳出郵件，則在「傳入/傳出」比率下，每10秒的速率應該相當相等。具有大型掛起處理工作隊列的裝置可能需要一些時間來清空工作隊列，然後恢復正常處理。

常見問題

如果我的ESA沒有運行11.0.0-264或更高版本，該怎麼辦？

如果客戶的裝置運行舊版AsyncOS，但沒有repairqueue hidden CLI命令選項，則應開啟支援案例，以便獲得思科支援工程師幫助。 需要開啟支援隧道並供思科支援人員訪問裝置並運行修復隊列進程。 請聯絡思科支援以開啟有效的支援案例。

工作隊列「損壞」是否意味著郵件丟失？

在大多數情況下，腐敗並不等於郵件丟失。由於與裝置上的郵件處理相關的後設資料，隊列已損壞。這是隊列與報告、郵件跟蹤等之間的記帳處理。運行repaairqueue將重建ESA後設資料，並清除服務與處理之間的任何誤報。

工作隊列損壞是否有影響？

ESA也許可以在損壞的隊列上運行很長時間，大多數郵件可能處理良好，但裝置可能顯示緩慢，或者某些郵件可能永遠不會清除，如status命令中的「最舊郵件」所示 — 明顯早於bounceconfig所允許的時間。當AsyncOS實際上重新啟動且隊列已損壞時，隊列可能能夠裝載，也可能無法裝載。損壞可能發生在某個時間之前，在重新啟動裝置之前似乎正常，此時裝置無法裝入隊列。

什麼會導致隊列損壞？

導致「隊列損壞」的兩個最常見原因是：

1. 裝置意外重新啟動。電源中斷或按住電源按鈕會導致不正確的關機，並且可能會損壞隊列，具體取決於後端進程當時在做什麼。裝置可能會恢復，並且隊列可能會恢復為已損壞，或者重新啟動後隊列可能無法裝入。如果為true，ESA管理員將從CLI運行狀態時看到「queue not mounted」警報和/或「daemon not responding」。

myesa.local> status

Enter "status detail" for more information.

Couldn't obtain mail stats - my.esa: The daemon is not responding.

myesa.local> status

Enter "status detail" for more information.

Couldn't obtain mail stats - the queue is not mounted

2. 裝置使用的RAM超出範圍。 這很可能是由監聽程式和/或郵件流策略的配置錯誤引起的，通常在允許的入站連接/注入過多時出現。思科建議檢查listenerconfig以獲得最大入站連線數。思科建議將此值設定為300。

修復指令碼需要多長時間才能完成？

修復工作隊列可能需要10秒到幾個小時不等，具體取決於ESA的狀態以及當前通過活動工作隊列處理多少消息。在損壞時具有完整隊列的低端裝置上修復工作隊列可能需要幾個小時。

如果修復隊列無法運行或不完成，會發生什麼情況？

在某些情況下（例如，裝置上的隊列過滿）repaairqueue將無法完成。如果repairqueue在4小時後未完成，則該隊列極有可能無法修復，唯一的解決方法是通過運行隱藏的CLI命令resetqueue來構建新隊列。有關高級問題，請聯絡思科支援以開啟有效的支援案例並獲得思科支援幫助。

相關資訊

- 思科電子郵件安全裝置最終使用手冊

- 思科郵件安全裝置命令參考

- 命令的用法 重置隊列

- 工作隊列中的處理順序是什麼？工作隊列管線是什麼？

- 技術支援與文件 - Cisco Systems