mirror of
https://github.com/fumiama/terasu-cloudflared.git
synced 2026-06-05 00:50:24 +08:00
## Summary This commit refactors some of the flags of cloudflared to their own module, so that they can be used across the code without requiring to literal strings which are much more error prone. Closes TUN-8914
52 lines
1.7 KiB
Go
52 lines
1.7 KiB
Go
package cliutil
|
|
|
|
import (
|
|
"github.com/urfave/cli/v2"
|
|
"github.com/urfave/cli/v2/altsrc"
|
|
|
|
cfdflags "github.com/cloudflare/cloudflared/cmd/cloudflared/flags"
|
|
)
|
|
|
|
var (
|
|
debugLevelWarning = "At debug level cloudflared will log request URL, method, protocol, content length, as well as, all request and response headers. " +
|
|
"This can expose sensitive information in your logs."
|
|
)
|
|
|
|
func ConfigureLoggingFlags(shouldHide bool) []cli.Flag {
|
|
return []cli.Flag{
|
|
altsrc.NewStringFlag(&cli.StringFlag{
|
|
Name: cfdflags.LogLevel,
|
|
Value: "info",
|
|
Usage: "Application logging level {debug, info, warn, error, fatal}. " + debugLevelWarning,
|
|
EnvVars: []string{"TUNNEL_LOGLEVEL"},
|
|
Hidden: shouldHide,
|
|
}),
|
|
altsrc.NewStringFlag(&cli.StringFlag{
|
|
Name: cfdflags.TransportLogLevel,
|
|
Aliases: []string{"proto-loglevel"}, // This flag used to be called proto-loglevel
|
|
Value: "info",
|
|
Usage: "Transport logging level(previously called protocol logging level) {debug, info, warn, error, fatal}",
|
|
EnvVars: []string{"TUNNEL_PROTO_LOGLEVEL", "TUNNEL_TRANSPORT_LOGLEVEL"},
|
|
Hidden: shouldHide,
|
|
}),
|
|
altsrc.NewStringFlag(&cli.StringFlag{
|
|
Name: cfdflags.LogFile,
|
|
Usage: "Save application log to this file for reporting issues.",
|
|
EnvVars: []string{"TUNNEL_LOGFILE"},
|
|
Hidden: shouldHide,
|
|
}),
|
|
altsrc.NewStringFlag(&cli.StringFlag{
|
|
Name: cfdflags.LogDirectory,
|
|
Usage: "Save application log to this directory for reporting issues.",
|
|
EnvVars: []string{"TUNNEL_LOGDIRECTORY"},
|
|
Hidden: shouldHide,
|
|
}),
|
|
altsrc.NewStringFlag(&cli.StringFlag{
|
|
Name: cfdflags.TraceOutput,
|
|
Usage: "Name of trace output file, generated when cloudflared stops.",
|
|
EnvVars: []string{"TUNNEL_TRACE_OUTPUT"},
|
|
Hidden: shouldHide,
|
|
}),
|
|
}
|
|
}
|