// SPDX-FileCopyrightText: Copyright 2015-2025 go-swagger maintainers // SPDX-License-Identifier: Apache-2.0 package debug import ( "fmt" "log" "os" "path/filepath" "runtime" ) var output = os.Stdout //nolint:gochecknoglobals // this is on purpose to be overridable during tests // GetLogger provides a prefix debug logger. func GetLogger(prefix string, debug bool) func(string, ...any) { if debug { logger := log.New(output, prefix+":", log.LstdFlags) return func(msg string, args ...any) { _, file1, pos1, _ := runtime.Caller(1) logger.Printf("%s:%d: %s", filepath.Base(file1), pos1, fmt.Sprintf(msg, args...)) } } return func(_ string, _ ...any) {} }