Skip to content

Instantly share code, notes, and snippets.

@carmark
Created December 3, 2015 03:27
Show Gist options
  • Save carmark/e78d8f588112f4e68779 to your computer and use it in GitHub Desktop.
Save carmark/e78d8f588112f4e68779 to your computer and use it in GitHub Desktop.
Only in lib/glog/: convenient_api.go
Only in /home/lei/src/github.com/golang/glog: .git
diff -bur /home/lei/src/github.com/golang/glog/glog_file.go lib/glog/glog_file.go
--- /home/lei/src/github.com/golang/glog/glog_file.go 2015-10-20 21:42:19.825139152 +0800
+++ lib/glog/glog_file.go 2015-09-23 20:32:27.913525822 +0800
@@ -43,8 +43,13 @@
func createLogDirs() {
if *logDir != "" {
logDirs = append(logDirs, *logDir)
- }
+ } else {
+ if err := os.MkdirAll("/var/log/hyper/", 0755); err != nil && !os.IsExist(err) {
logDirs = append(logDirs, os.TempDir())
+ } else {
+ logDirs = append(logDirs, "/var/log/hyper/")
+ }
+ }
}
var (
@@ -395,9 +387,10 @@
io.Writer
}
-func init() {
+func Init() {
+
flag.BoolVar(&logging.toStderr, "logtostderr", false, "log to standard error instead of files")
- flag.BoolVar(&logging.alsoToStderr, "alsologtostderr", false, "log to standard error as well as files")
+ flag.BoolVar(&logging.alsoToStderr, "alsologtostderr", true, "log to standard error as well as files")
flag.Var(&logging.verbosity, "v", "log level for V logs")
flag.Var(&logging.stderrThreshold, "stderrthreshold", "logs at or above this threshold go to stderr")
flag.Var(&logging.vmodule, "vmodule", "comma-separated list of pattern=N settings for file-filtered logging")
@@ -561,28 +549,63 @@
// It's worth about 3X. Fprintf is hard.
_, month, day := now.Date()
hour, minute, second := now.Clock()
- // Lmmdd hh:mm:ss.uuuuuu threadid file:line]
- buf.tmp[0] = severityChar[s]
- buf.twoDigits(1, int(month))
- buf.twoDigits(3, day)
- buf.tmp[5] = ' '
- buf.twoDigits(6, hour)
- buf.tmp[8] = ':'
- buf.twoDigits(9, minute)
- buf.tmp[11] = ':'
- buf.twoDigits(12, second)
- buf.tmp[14] = '.'
- buf.nDigits(6, 15, now.Nanosecond()/1000, '0')
- buf.tmp[21] = ' '
- buf.nDigits(7, 22, pid, ' ') // TODO: should be TID
- buf.tmp[29] = ' '
- buf.Write(buf.tmp[:30])
+ buf.tmp[0] = '['
+ buf.tmp[1] = 'H'
+ buf.tmp[2] = 'Y'
+ buf.tmp[3] = 'P'
+ buf.tmp[4] = 'E'
+ buf.tmp[5] = 'R'
+ buf.tmp[6] = ' '
+ buf.tmp[7] = severityChar[s]
+ switch buf.tmp[7] {
+ case 'I':
+ buf.tmp[8] = 'N'
+ buf.tmp[9] = 'F'
+ buf.tmp[10] = 'O'
+ buf.tmp[11] = ' '
+ buf.tmp[12] = ' '
+ break
+ case 'E':
+ buf.tmp[8] = 'R'
+ buf.tmp[9] = 'R'
+ buf.tmp[10] = 'O'
+ buf.tmp[11] = 'R'
+ buf.tmp[12] = ' '
+ break
+ case 'W':
+ buf.tmp[8] = 'A'
+ buf.tmp[9] = 'R'
+ buf.tmp[10] = 'N'
+ buf.tmp[11] = ' '
+ buf.tmp[12] = ' '
+ break
+ }
+
+ buf.twoDigits(13, int(month))
+ buf.twoDigits(15, day)
+ buf.tmp[17] = ' '
+ buf.twoDigits(18, hour)
+ buf.tmp[20] = ':'
+ buf.twoDigits(21, minute)
+ buf.tmp[23] = ':'
+ buf.twoDigits(25, second)
+ buf.tmp[27] = ' '
+ buf.nDigits(5, 28, pid) // TODO: should be TID
+ buf.tmp[33] = ' '
+ buf.Write(buf.tmp[:34])
buf.WriteString(file)
- buf.tmp[0] = ':'
- n := buf.someDigits(1, line)
- buf.tmp[n+1] = ']'
- buf.tmp[n+2] = ' '
- buf.Write(buf.tmp[:n+3])
+ buf.tmp[0] = ']'
+ buf.tmp[1] = ' '
+ buf.Write(buf.tmp[:2])
+ if l.verbosity > 1 {
+ buf.tmp[0] = '['
+ buf.tmp[1] = ':'
+ n := buf.someDigits(2, line)
+ buf.tmp[n+2] = ']'
+ buf.tmp[n+3] = ' '
+ buf.Write(buf.tmp[:n+4])
+ }
+
return buf
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment