type Logger interface { Warn(args ...interface{}) Warnf(template string, args ...interface{}) }
type MetricsOptions struct { Provider string Statsd *Statsd }
type Options struct { Logger Logger ListenAddress string Metrics MetricsOptions TLS TLS Version string }
type Statsd struct { Network string Address string WriteInterval time.Duration Prefix string }
type System struct { metrics.Provider // contains filtered or unexported fields }
func NewSystem(o Options) *System
func (s *System) Addr() string
func (s *System) Log(keyvals ...interface{}) error
func (s *System) RegisterChecker(component string, checker healthz.HealthChecker) error
func (s *System) Run(signals <-chan os.Signal, ready chan<- struct{}) error
func (s *System) Start() error
func (s *System) Stop() error
type TLS struct { Enabled bool CertFile string KeyFile string ClientCertRequired bool ClientCACertFiles []string }
func (t TLS) Config() (*tls.Config, error)
type VersionInfoHandler struct { CommitSHA string `json:"CommitSHA,omitempty"` Version string `json:"Version,omitempty"` }
func (m *VersionInfoHandler) ServeHTTP(resp http.ResponseWriter, req *http.Request)