Heim > Backend-Entwicklung > Golang > Wie kann ich von GORM in Go ausgeführte MySQL-Abfragen protokollieren?

Wie kann ich von GORM in Go ausgeführte MySQL-Abfragen protokollieren?

Patricia Arquette
Freigeben: 2024-12-20 03:20:09
Original
802 Leute haben es durchsucht

How Can I Log MySQL Queries Executed by GORM in Go?

Zugriff auf die zugrunde liegende MySQL-Abfrage in Go mit GORM

In Entwicklungsumgebungen kann es von Vorteil sein, die von GORM ausgeführten MySQL-Abfragen zu protokollieren Debugging-Zwecke. Dadurch können Entwickler das generierte Roh-SQL überprüfen und mögliche Ineffizienzen oder Fehler identifizieren.

Um die Abfrageprotokollierung in GORM zu aktivieren, können die folgenden Schritte ausgeführt werden:

  1. Initialisieren Sie die Datenbank Verbindung mit Open():
db, err := Open(dbType, connectionDSN)
Nach dem Login kopieren
  1. Stellen Sie den Protokollmodus auf true:
db.LogMode(true)
Nach dem Login kopieren

Sobald diese Schritte abgeschlossen sind, protokolliert GORM automatisch alle ausgeführten Abfragen in der Konsole. Dazu gehören Abfragen, die sowohl von gorm.Find() als auch von gorm.Preload() generiert wurden.

Bedingte Abfrageprotokollierung

Für Umgebungen, in denen die Abfrageprotokollierung nur in der Entwicklung erwünscht ist, Es kann ein bedingter Ansatz verwendet werden:

if os.Getenv("ENV") == "dev" {
    db.LogMode(true)
}
Nach dem Login kopieren

In diesem Beispiel wird die Abfrageprotokollierung nur aktiviert, wenn die Umgebungsvariable ENV auf gesetzt ist „Entwickler“. Dadurch können Entwickler die Abfrageprotokollierung basierend auf der Ausführungsumgebung einfach umschalten.

Das obige ist der detaillierte Inhalt vonWie kann ich von GORM in Go ausgeführte MySQL-Abfragen protokollieren?. 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