--log-file-log-level vs. --log-level (and --log-file-log-filter), and, how many log files are there, and, what are the different logs, and, what is the meaning of the levels

Thanks so much @kenkendk that clears it up.

I will update my OP.

For those who don’t read code, I will state in “English” . In increasing levels of verbosity, the levels are:

  1. Error
  2. Warning
  3. DryRun
  4. Information
  5. Retry
  6. Verbose
  7. Profiling

Meaning, if you use --log-file-log-level=warning you get warning AND errors.

profiling is the highest and most verbose including all levels below it.

So, profiling is more than verbose.

As might be expected, verbose outputs more than information.

ExplicitOnly is special and not normally useful.

Interestingly, DryRun includes Errors and Warnings too. Makes sense I guess.

And Retry includes everything DryRun includes, plus Informationals, plus everything at the Retry level itself.

But both verbose and profiling contain both DryRun and Retry so there might not be much use for those more specific levels.