golang程式因未知錯誤崩潰時如何記錄異常

2021-10-10 05:21:41 字數 406 閱讀 2084

開發伺服器程式時如果未經過充分測試, 服務穩定執行一段時間後會突然崩潰退出。一般是因為程式**現了某個未捕獲的異常。

這類問題屬於偶現的,且需要伺服器執行一段時間之後才會出現,難以定位有問題的**段。

這中情況下應該將服務程序的stderr重定向至某個檔案,這樣當程序因未捕獲的異常導致崩潰時,go執行時會將異常發生時各個協程的呼叫棧資訊記錄下來,便於定位問題。

if err != nil

// 將程序標準出錯重定向至檔案,程序崩潰時執行時將向該檔案記錄協程呼叫棧資訊

syscall.dup2(int(logfile.fd()), int(os.stderr.fd()))

以上**利用了linux系統中的dup系統呼叫,用以將某一檔案描述符指向乙個新的檔案。在windows系統及mac系統下暫時不可用。

未知錯誤 1

環境 vs2008 c 現象 運算溢位,除錯時函式被跳過 for int i 0 i 18 i int e4 table transport edge4 edge4 i int c table transport corner corner i int e8 table transport edge...

如何檢視SharePoint未知錯誤

在moss開發自定義功能後,出現錯誤頁面只顯示 出現未知錯誤 的提示,檢視很不方面,通過下面方法就可以直接在出錯頁面檢視錯誤資訊。修改web應用程式根目錄上的web.config檔案中的兩個地方 查詢以下位置並更改即可 紅色為更改前後的值 一 maxcontrols 200 callstack fa...

XFTP上傳檔案時出現上傳錯誤(未知錯誤)

記錄一下自己在工作中用到xftp上傳檔案到伺服器 jar包上傳構建測試環境 時出現的問題 起因 前兩天構建環境上傳檔案還正常,今天上傳時出現上傳失敗情況,一開始還能上傳一部分上去後失敗,之後上傳出現的全是0位元組即失敗 為後面找到問題鋪墊 一開始以為是軟體問題,重新關閉開啟xftp重試多次一樣的結果...