Maison > développement back-end > Golang > Comment déboguer Golang

Comment déboguer Golang

angryTom
Libérer: 2020-02-15 10:24:12
original
3100 Les gens l'ont consulté

Aujourd'hui, je vais partager avec vous un article sur la façon de déboguer Golang. Il a une très bonne valeur de référence. Les amis qui en ont besoin peuvent y jeter un œil.

Comment déboguer Golang

Comment déboguer Golang

Vous pouvez utiliser l'outil de débogage GoLangDelve

1. Obtenez

go get -u github.com/go-delve/delve/cmd/dlv
Copier après la connexion

2. Écrivez le code de test

func main(){
 http.HandleFunc("/test",func(writer http.ResponseWriter,req *http.Request){
 //TODO
 })
 log.Fatal(http.ListenAndServe("127.0.0.1:8080",nil))
}
Copier après la connexion

3. Démarrez le débogage

dlv debug test.go
Copier après la connexion
<. 🎜>

4. Point d'arrêt

1) Point d'arrêt de la méthode :

b main.函数名
Copier après la connexion

2) Exécuter jusqu'au point d'arrêt :

c
Copier après la connexion

3) Point d'arrêt droit d'une certaine ligne :

Vous devez obtenir l'emplacement du fichier puis le point d'arrêt :

b /Users/joker/go/src/…/test.go:14 对14行打断点
Copier après la connexion

Quant à savoir comment effectuer la même opération que sur l'ide : pass n, s

n : Equivalent à F6 de Java-Eclipse

s : Equivalent à F5 de Java-Eclipse

Comment afficher les variables : p

p testName affichera la valeur de testName

args : affichera toutes les informations sur les paramètres de la méthode

locals : affichera toutes les variables locales

Utilisez Go play Debug, Info, Error level log

et téléchargez directement le code :

package mylog
import (
    "log"
    "os"
)
var (
    Debug *log.Logger
    Info *log.Logger
    Error *log.Logger
)
func init() {
    log.Println("init ...")
    Debug = log.New(os.Stdout, "[DEBUG] ", log.Ldate|log.Ltime|log.Lshortfile)
    Info = log.New(os.Stdout, "[INFO] ", log.Ldate|log.Ltime|log.Lshortfile)
    Error = log.New(os.Stderr, "[ERROR] ", log.Ldate|log.Ltime|log.Lshortfile)
}
package main
import "mylog"
func main(){
  mylog.Debug.Println("good");
  mylog.Info.Println("good");
  mylog.Error.Println("good");
}
Copier après la connexion
C'est tout.

Pour plus de connaissances sur Golang, veuillez faire attention à la colonne

Tutoriel Golang sur le site Web PHP chinois.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal