I've seen this in a log message, resulting from using %s for printing a nil pointer of a type that implements SafeFormatter on a value receiver.
%!s(PANIC=SafeFormatter method: value method github.com/cockroachdb/cockroach/pkg/roachpb.Lease.SafeFormat called using nil *Lease pointer
This is different from what fmt.Printf does for the Stringer interface, where it prints <nil>. If possible, it'd certainly take the <nil>. I've found this thread that might describe how to handle this case in the logging lib: golang/go#20995
I've seen this in a log message, resulting from using
%sfor printing a nil pointer of a type that implementsSafeFormatteron a value receiver.This is different from what
fmt.Printfdoes for the Stringer interface, where it prints<nil>. If possible, it'd certainly take the<nil>. I've found this thread that might describe how to handle this case in the logging lib: golang/go#20995