Add --debug option to be improved on over time

Why:

 * first time using hugo I got very little info from --verbose output
   but I noticed there is quite a lot of useful DEBUG logging
 * asked for in other issues like https://github.com/gohugoio/hugo/issues/3514

This change addreses the need by:

 * adding a simple --debug flag which simply turns on debug level in stdout
   and logoutput if enabled.
This commit is contained in:
Max Rydahl Andersen 2017-07-27 22:36:22 +02:00 committed by Bjørn Erik Pedersen
parent c1a5da9777
commit aee2b06780
2 changed files with 11 additions and 1 deletions

View file

@ -143,6 +143,7 @@ var (
renderToMemory bool // for benchmark testing renderToMemory bool // for benchmark testing
verbose bool verbose bool
verboseLog bool verboseLog bool
debug bool
quiet bool quiet bool
) )
@ -263,6 +264,7 @@ func initBenchmarkBuildingFlags(cmd *cobra.Command) {
// init initializes flags. // init initializes flags.
func init() { func init() {
HugoCmd.PersistentFlags().BoolVarP(&verbose, "verbose", "v", false, "verbose output") HugoCmd.PersistentFlags().BoolVarP(&verbose, "verbose", "v", false, "verbose output")
HugoCmd.PersistentFlags().BoolVarP(&debug, "debug", "", false, "debug output")
HugoCmd.PersistentFlags().BoolVar(&logging, "log", false, "enable Logging") HugoCmd.PersistentFlags().BoolVar(&logging, "log", false, "enable Logging")
HugoCmd.PersistentFlags().StringVar(&logFile, "logFile", "", "log File path (if set, logging enabled automatically)") HugoCmd.PersistentFlags().StringVar(&logFile, "logFile", "", "log File path (if set, logging enabled automatically)")
HugoCmd.PersistentFlags().BoolVar(&verboseLog, "verboseLog", false, "verbose logging") HugoCmd.PersistentFlags().BoolVar(&verboseLog, "verboseLog", false, "verbose logging")
@ -432,8 +434,15 @@ func createLogger(cfg config.Provider) (*jww.Notepad, error) {
stdoutThreshold = jww.LevelInfo stdoutThreshold = jww.LevelInfo
} }
if cfg.GetBool("debug") {
stdoutThreshold = jww.LevelDebug
}
if verboseLog { if verboseLog {
logThreshold = jww.LevelInfo logThreshold = jww.LevelInfo
if cfg.GetBool("debug") {
logThreshold = jww.LevelDebug
}
} }
// The global logger is used in some few cases. // The global logger is used in some few cases.
@ -446,7 +455,7 @@ func createLogger(cfg config.Provider) (*jww.Notepad, error) {
} }
func (c *commandeer) initializeFlags(cmd *cobra.Command) { func (c *commandeer) initializeFlags(cmd *cobra.Command) {
persFlagKeys := []string{"verbose", "logFile"} persFlagKeys := []string{"debug", "verbose", "logFile"}
flagKeys := []string{ flagKeys := []string{
"cleanDestinationDir", "cleanDestinationDir",
"buildDrafts", "buildDrafts",

View file

@ -132,4 +132,5 @@ func loadDefaultSettingsFor(v *viper.Viper) {
v.SetDefault("enableGitInfo", false) v.SetDefault("enableGitInfo", false)
v.SetDefault("ignoreFiles", make([]string, 0)) v.SetDefault("ignoreFiles", make([]string, 0))
v.SetDefault("disableAliases", false) v.SetDefault("disableAliases", false)
v.SetDefault("debug", false)
} }