Maintaining separate logs for debugging and testing can be challenging, especially when existing logs are voluminous. Writing to standard error (stderr) provides a convenient way to isolate debugging logs while suppressing other output.
Go offers several methods to print messages to stderr:
Instantiate a custom logger using log.New():
<code class="go">l := log.New(os.Stderr, "", 1) l.Println("log message")</code>
Invoke fmt.Fprintf to write directly to stderr:
<code class="go">fmt.Fprintf(os.Stderr, "log message: %s", str)</code>
Directly write to stderr using os.Stderr.WriteString():
<code class="go">os.Stderr.WriteString("log message")</code>
To suppress the output from other logging mechanisms, deflect standard output to /dev/null using the following command:
<code class="sh">go run main.go 1>&/dev/null</code>
By employing these methods, you can efficiently isolate and review your custom logs for debugging and testing purposes.
The above is the detailed content of How Can I Print Debugging Messages to Standard Error (stderr) in Go?. For more information, please follow other related articles on the PHP Chinese website!