func Debug(logger Logger, msg string, kv ...interface{}) error {
	a := []interface{}{msgKey, msg}
	if kv != nil {
		a = append(a, kv...)
	}
	return level.Debug(logger).Log(a...)
}
Debug log helper
package log
import (
	"bytes"
	"encoding"
	"encoding/json"
	"errors"
	"fmt"
	"io"
	"io/ioutil"
	"os"
	"path/filepath"
	"reflect"
	"regexp"
	"sort"
	"strings"
	"sync"
	"time"
	"github.com/fatih/color"
	"github.com/go-kit/kit/log"
	"github.com/go-kit/kit/log/level"
	"github.com/pinpt/go-common/v10/fileutil"
	pjson "github.com/pinpt/go-common/v10/json"
	"github.com/pinpt/go-common/v10/number"
	pos "github.com/pinpt/go-common/v10/os"
	pstring "github.com/pinpt/go-common/v10/strings"
	"github.com/pinpt/go-common/v10/term"
)
type Logger interface {
	Log(keyvals ...interface{}) error
}
var ErrMissingValue = errors.New("(MISSING)")
func With(logger Logger, keyvals ...interface{}) Logger {
	return log.With(logger, keyvals...)
}
func Info(logger Logger, msg string, kv ...interface{}) error {
	a := []interface{}{msgKey, msg}
	if kv != nil {
		a = append(a, kv...)
	}
	return level.Info(logger).Log(a...)
}