第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 golang 中捕獲 stdErr 輸出

在 golang 中捕獲 stdErr 輸出

Go
喵喵時(shí)光機(jī) 2023-07-04 19:13:44
我寫(xiě)了一個(gè)go程序來(lái)監(jiān)控一些MySQL數(shù)據(jù)庫(kù)。在下面的示例中,我只是顯示“連接成功!” 連接成功時(shí)顯示“連接錯(cuò)誤:”,失敗時(shí)顯示錯(cuò)誤消息。package mainimport (    "database/sql"    "fmt"    _ "github.com/go-sql-driver/mysql")func main() {    err := mysqlConnect()    if err != nil {        fmt.Println("Connection Error:", err)    } else {        fmt.Println("Connection Success!")    }}func mysqlConnect() error {    db, err := sql.Open("mysql", "myuser:mypwd@tcp(10.2.0.3:3306)/mysql")    if err != nil {        return err    }    defer db.Close()    err = db.Ping()    if err != nil {        return err    }    return nil}這按預(yù)期工作,但在某些情況下,執(zhí)行 db.Ping() 時(shí)會(huì)出現(xiàn)一些錯(cuò)誤消息并顯示到 stdErr:例如:$ go run main.go[mysql] 2019/07/22 18:01:59 auth.go:293: unknown auth plugin:dialogConnection Error: this authentication plugin is not supported最后一行是我預(yù)期的消息,但是調(diào)用 db.Ping() 時(shí)會(huì)顯示上一行。我想捕獲/隱藏此消息[mysql] 2019/07/22 18:01:59 auth.go:293: unknown auth plugin:dialog,因?yàn)槲乙呀?jīng)收到一條干凈的錯(cuò)誤消息,我可以按照我的意愿處理它(顯示或不顯示)。如何防止出現(xiàn)此類錯(cuò)誤消息(我的意思是在代碼中,而不是在調(diào)用時(shí))?
查看完整描述

1 回答

?
慕工程0101907

TA貢獻(xiàn)1887條經(jīng)驗(yàn) 獲得超5個(gè)贊

您的自定義記錄器可以執(zhí)行對(duì)您的應(yīng)用程序有意義的任何操作,包括“吞掉”這些日志記錄語(yǔ)句,并且在沒(méi)有錯(cuò)誤的情況下不顯示任何內(nèi)容。


要回答問(wèn)題的標(biāo)題,您可以os.Stderr使用以下內(nèi)容進(jìn)行捕獲:

func doPrint() {

? ? fmt.Fprintf(os.Stderr, "output")

}


func main() {

? ? old := os.Stderr

? ? r, w, _ := os.Pipe()

? ? os.Stderr = w


? ? doPrint()


? ? w.Close()

? ? var buf bytes.Buffer

? ? io.Copy(&buf, r)

? ? os.Stderr = old


? ? fmt.Println("Captured:", buf.String())

}


查看完整回答
反對(duì) 回復(fù) 2023-07-04
  • 1 回答
  • 0 關(guān)注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)