MySQL Workbench 手冊  /  如何回報錯誤或問題

附錄 D 如何回報錯誤或問題

以下清單包含回報 MySQL Workbench 錯誤時有用的提示與資訊。

有用的錯誤回報包含

  • 重現錯誤的確切步驟,若錯誤難以重現,最好以影片呈現。

  • 螢幕截圖,如果錯誤是視覺上的。

  • 錯誤訊息,包括傳送到 stdout 和 GUI 的文字。

  • MySQL Workbench 日誌檔案的副本。

    日誌檔案位置可在 MySQL Workbench 內使用 說明尋找日誌檔案找到。

無法重現的錯誤很難甚至幾乎不可能修復,因此提供重現錯誤的必要步驟非常重要。

在哪裡回報錯誤

造訪 http://bugs.mysql.com/ 並使用其中一個 MySQL Workbench 錯誤類別。

日誌層級

共有六種不同的日誌層級,詳細程度遞增:errorwarninginfodebug1debug2debug3。預設情況下,會啟用 errorwarninginfo 層級。還有一個 none 層級會停用日誌記錄。

重要事項

請在產生要回報的日誌前啟用 debug3 層級。

可以透過環境變數、使用命令列參數或將日誌層級指定為偏好設定選項(請參閱其他偏好設定)來設定已啟用的錯誤日誌層級。

環境變數、命令列變體和偏好設定選項接受單一日誌層級,但啟用更詳細的選項也會隱含地啟用其下的層級。例如,傳入 info 也會啟用 errorwarning 層級。

  • 環境變數:WB_LOG_LEVEL

    命令列選項:--log-level

注意

如果同時設定了命令列和環境變數,則以命令列為優先。

例如

# Microsoft Windows
$> cd "C:\Program Files (x86)\MySQL\MySQL Workbench CE 8.0.38\"
$> MySQLWorkbench.exe --log-level=debug3

# macOS
$> cd /Applications
$> MySQLWorkbench --log-level=debug3

# Linux (Ubuntu)
$> cd /usr/bin
$> mysqlworkbench --log-level=debug3

如果啟用了 info 層級,也會記錄系統資訊和應用程式中使用的所有路徑。在 Microsoft Windows 上,這也表示日誌檔案包含程式啟用的所有目前環境變數。

作業系統特定注意事項

Microsoft Windows

  • 日誌檔案位置:在使用者應用程式資料夾附近,例如 Microsoft Windows 10 的 C:\Users\[使用者]\AppData\Roaming\MySQL\Workbench\log

  • 如果發生錯誤(或例外狀況),日誌檔案會包含追蹤到 MySQL Workbench 可以追蹤的點的堆疊追蹤(通常只有 C# 程式碼,而沒有 C++ 程式碼)。此外,如果啟用了警告(或更高等級)日誌層級,則所有警告都會新增至日誌。

  • 如果是當機且 MySQL Workbench 團隊無法重現,而且無法取得堆疊追蹤,我們會要求提供當機傾印。啟用當機傾印的說明可以在這裡找到,並且請閱讀 MSDN 詳細資訊,因為我們需要完整的傾印,而不是迷你傾印。

  • 對於與顯示問題相關的當機,請使用 -swrendering 參數啟動 MySQL Workbench(只有在那時,因為它會關閉 OpenGL 呈現,這在 WBA 或 WQE 中沒有用處)。此輸出將會新增至日誌檔案。

  • 如果是啟動 MySQL Workbench 時當機(特別是錯誤報告包含關於 kernelbase.dll 的資訊),我們會要求您在 MySQLWorkbench.exe 二進位檔上執行 depends.exe,並要求回報的錯誤。

  • 如果是啟動 MySQL Workbench 時當機,而且是 64 位元版本的 Microsoft Windows,請檢查是否已安裝正確的 MSVC 執行階段。人們通常會安裝 64 位元版本,但只有 32 位元版本會正常運作。

macOS

  • 日誌檔案位置:~/Library/Application Support/MySQL/Workbench/logs

  • 為 Workbench 產生的系統當機日誌位於 ~/Library/Logs/DiagnosticReports/MySQLWorkbench*

Linux

  • 日誌檔案位置:~/.mysql/workbench/log

  • 如果發生當機,我們可能會要求提供可以使用 gdb 產生的堆疊追蹤,方法是使用下列步驟

    注意

    因為已發佈的 MySQL Workbench 組建缺少偵錯符號,此步驟為選用,可能並非必要。

    • 在 Shell 中,執行 source /usr/bin/mysql-workbench

    • 結束 MySQL Workbench

    • 在 Shell 中,執行 gdb /usr/bin/mysql-workbench-bin

    • 在 gdb 介面中,輸入 run

    • 在 MySQL Workbench 中,重現當機

    • 在 gdb 介面中,輸入 bt

  • 如果發生當機,也請執行 glxinfo。如果也當機,則表示是與 OpenGL 相關的驅動程式/X 伺服器問題,並非 MySQL Workbench 特有。