Vendor integration dependencies.
This commit is contained in:
parent
dd5e3fba01
commit
55b57c736b
2451 changed files with 731611 additions and 0 deletions
104
integration/vendor/github.com/mesosphere/mesos-dns/logging/logging.go
generated
vendored
Normal file
104
integration/vendor/github.com/mesosphere/mesos-dns/logging/logging.go
generated
vendored
Normal file
|
@ -0,0 +1,104 @@
|
|||
package logging
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"os"
|
||||
"strconv"
|
||||
"sync/atomic"
|
||||
|
||||
"github.com/golang/glog"
|
||||
)
|
||||
|
||||
var (
|
||||
// VerboseFlag enables verbose logging if set to true.
|
||||
VerboseFlag bool
|
||||
// VeryVerboseFlag enables very verbose logging if set to true.
|
||||
VeryVerboseFlag bool
|
||||
// Verbose is this package's verbose Logger.
|
||||
Verbose *log.Logger
|
||||
// VeryVerbose is this package's very verbose Logger.
|
||||
VeryVerbose *log.Logger
|
||||
// Error is this package's error Logger.
|
||||
Error *log.Logger
|
||||
)
|
||||
|
||||
// Counter defines an interface for a monotonically incrementing value.
|
||||
type Counter interface {
|
||||
Inc()
|
||||
}
|
||||
|
||||
// LogCounter implements the Counter interface with a uint64 register.
|
||||
// It's safe for concurrent use.
|
||||
type LogCounter struct {
|
||||
value uint64
|
||||
}
|
||||
|
||||
// Inc increments the counter by one.
|
||||
func (lc *LogCounter) Inc() {
|
||||
atomic.AddUint64(&lc.value, 1)
|
||||
}
|
||||
|
||||
// String returns a string represention of the counter.
|
||||
func (lc *LogCounter) String() string {
|
||||
return strconv.FormatUint(atomic.LoadUint64(&lc.value), 10)
|
||||
}
|
||||
|
||||
// LogOut holds metrics captured in an instrumented runtime.
|
||||
type LogOut struct {
|
||||
MesosRequests Counter
|
||||
MesosSuccess Counter
|
||||
MesosNXDomain Counter
|
||||
MesosFailed Counter
|
||||
NonMesosRequests Counter
|
||||
NonMesosSuccess Counter
|
||||
NonMesosNXDomain Counter
|
||||
NonMesosFailed Counter
|
||||
NonMesosForwarded Counter
|
||||
}
|
||||
|
||||
// CurLog is the default package level LogOut.
|
||||
var CurLog = LogOut{
|
||||
MesosRequests: &LogCounter{},
|
||||
MesosSuccess: &LogCounter{},
|
||||
MesosNXDomain: &LogCounter{},
|
||||
MesosFailed: &LogCounter{},
|
||||
NonMesosRequests: &LogCounter{},
|
||||
NonMesosSuccess: &LogCounter{},
|
||||
NonMesosNXDomain: &LogCounter{},
|
||||
NonMesosFailed: &LogCounter{},
|
||||
NonMesosForwarded: &LogCounter{},
|
||||
}
|
||||
|
||||
// PrintCurLog prints out the current LogOut and then resets
|
||||
func PrintCurLog() {
|
||||
VeryVerbose.Printf("%+v\n", CurLog)
|
||||
}
|
||||
|
||||
// SetupLogs provides the following logs
|
||||
// Verbose = optional verbosity
|
||||
// VeryVerbose = optional verbosity
|
||||
// Error = stderr
|
||||
func SetupLogs() {
|
||||
// initialize logging flags
|
||||
if glog.V(2) {
|
||||
VeryVerboseFlag = true
|
||||
} else if glog.V(1) {
|
||||
VerboseFlag = true
|
||||
}
|
||||
|
||||
logopts := log.Ldate | log.Ltime | log.Lshortfile
|
||||
|
||||
if VerboseFlag {
|
||||
Verbose = log.New(os.Stdout, "VERBOSE: ", logopts)
|
||||
VeryVerbose = log.New(ioutil.Discard, "VERY VERBOSE: ", logopts)
|
||||
} else if VeryVerboseFlag {
|
||||
Verbose = log.New(os.Stdout, "VERY VERBOSE: ", logopts)
|
||||
VeryVerbose = Verbose
|
||||
} else {
|
||||
Verbose = log.New(ioutil.Discard, "VERBOSE: ", logopts)
|
||||
VeryVerbose = log.New(ioutil.Discard, "VERY VERBOSE: ", logopts)
|
||||
}
|
||||
|
||||
Error = log.New(os.Stderr, "ERROR: ", logopts)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue