Heim > Backend-Entwicklung > Golang > Wie deaktiviere ich die Anmeldung in Go-Anwendungen?

Wie deaktiviere ich die Anmeldung in Go-Anwendungen?

Linda Hamilton
Freigeben: 2024-11-15 11:35:02
Original
598 Leute haben es durchsucht

How to Disable Logging in Go Applications?

Deaktivieren des Standard-Loggers in Go

Viele Go-Anwendungen nutzen das Protokollpaket zur Protokollierung. Standardmäßig schreibt der Standard-Logger in die Standardausgabe und kann zeitweise ausführlich sein. Wenn es notwendig ist, die Protokollierung zu deaktivieren, sind einige Ansätze zu berücksichtigen.

Eine Möglichkeit besteht darin, eine Markierung manuell zu überprüfen, bevor Protokollaufrufe durchgeführt oder in der Produktion auskommentiert werden. Eine elegantere und effizientere Möglichkeit, die Protokollierung zu deaktivieren, besteht jedoch darin, die Ausgabe des Loggers umzuleiten.

Verwendung von io/ioutil.Discard

Vor Go 1.16 eine Methode von Das Deaktivieren der Protokollierung erforderte das Erstellen eines benutzerdefinierten io.Writer-Typs, der die Ausgabe verwarf. Dies kann erreicht werden, indem eine Struktur definiert wird, die die Write-Methode implementiert und dafür sorgt, dass sie die Daten verwirft:

type discardWriter struct{}

func (w discardWriter) Write(p []byte) (n int, err error) {
    return len(p), nil
}
Nach dem Login kopieren

Sie können dann diesen benutzerdefinierten Writer verwenden, um die Ausgabe des Loggers umzuleiten:

import (
    "log"
    "io/ioutil"
)

func init() {
    log.SetOutput(ioutil.Discard)
}
Nach dem Login kopieren

Mit diesem Setup scheint der Logger auf die Standardausgabe zu schreiben, aber die Ausgabe wird stillschweigend verworfen.

Verwendung von io.Discard (Go 1.16)

In Go 1.16 und höher ist ein einfacherer Ansatz verfügbar. Das Paket io/ioutil stellt einen Discard-Writer bereit, der alle darauf geschriebenen Daten verwirft. Sie können es direkt wie folgt verwenden:

log.SetOutput(io.Discard)
Nach dem Login kopieren

Dadurch wird die Protokollierung für den Standard-Logger vollständig deaktiviert.

Das obige ist der detaillierte Inhalt vonWie deaktiviere ich die Anmeldung in Go-Anwendungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage