
Usage of ./stackube-controller: --alsologtostderr log to standard error as well as files --cloudconfig string path to stackube config file (default "/etc/stackube.conf") --kubeconfig string path to kubernetes admin config file (default "/etc/kubernetes/admin.conf") --log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0) --log-dir string If non-empty, write log files in this directory --log-flush-frequency duration Maximum number of seconds between log flushes (default 5s) --logtostderr log to standard error instead of files (default true) --stderrthreshold severity logs at or above this threshold go to stderr (default 2) -v, --v Level log level for V logs --vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging Change-Id: I2dfa762c3e076c7e41b49b4f27c3868bed03eba8 Signed-off-by: Pengfei Ni <feiskyer@gmail.com>
43 lines
1.1 KiB
Go
43 lines
1.1 KiB
Go
package util
|
|
|
|
import (
|
|
goflag "flag"
|
|
"os"
|
|
"strings"
|
|
|
|
"github.com/golang/glog"
|
|
"github.com/spf13/pflag"
|
|
)
|
|
|
|
// WordSepNormalizeFunc changes all flags that contain "_" separators
|
|
func WordSepNormalizeFunc(f *pflag.FlagSet, name string) pflag.NormalizedName {
|
|
if strings.Contains(name, "_") {
|
|
return pflag.NormalizedName(strings.Replace(name, "_", "-", -1))
|
|
}
|
|
return pflag.NormalizedName(name)
|
|
}
|
|
|
|
// WarnWordSepNormalizeFunc changes and warns for flags that contain "_" separators
|
|
func WarnWordSepNormalizeFunc(f *pflag.FlagSet, name string) pflag.NormalizedName {
|
|
if strings.Contains(name, "_") {
|
|
nname := strings.Replace(name, "_", "-", -1)
|
|
glog.Warningf("%s is DEPRECATED and will be removed in a future version. Use %s instead.", name, nname)
|
|
|
|
return pflag.NormalizedName(nname)
|
|
}
|
|
return pflag.NormalizedName(name)
|
|
}
|
|
|
|
// InitFlags normalizes and parses the command line flags
|
|
func InitFlags() {
|
|
pflag.CommandLine.SetNormalizeFunc(WordSepNormalizeFunc)
|
|
pflag.CommandLine.AddGoFlagSet(goflag.CommandLine)
|
|
|
|
pflag.Parse()
|
|
|
|
path := pflag.Lookup("log-dir").Value.String()
|
|
if _, err := os.Stat(path); os.IsNotExist(err) {
|
|
os.MkdirAll(path, 0755)
|
|
}
|
|
}
|