zoukankan      html  css  js  c++  java
  • golang glog

    原文链接:https://blog.csdn.net/u010857876/article/details/79094942
    
    Flush
    log 产生后,会暂存在内存的buffer中。只有显示的调用 glog.Flush(), 数据才会真正被写入文件。glog package 的 init 函数中启动了一个 go routine 用来周期性的调用 glog.Flush() 来保证数据被写入文件, 默认的 Flush 周期为30 秒。
    
    当程序运行至 glog.Fatal() 时, glog package 中保证了在退出前程序前会将所有缓存中的log写入文件。但是对于 Info, Warning 以及 Error, 如果程序正常退出,那么在程序退出前 30 秒的 log 就会丢失。defer 可以被用来防止这种情况的发生。
    
    package main
    
    import "github.com/golang/glog"
    
    func main() {
            defer glog.Flush()
    
            glog.Info("Testing glog.")
    }
    
    //  go run main.go -log_dir=./log -alsologtostderr=true -log_backtrace_at=main.go:26
    参考文献
    https://godoc.org/github.com/golang/glog
    
    
    
  • 相关阅读:
    centos崩溃后如何修复
    乘法是啥
    接上篇—用spring注入DBbean,并使用maven管理
    技术产生价值
    技术?
    世界的本质是啥呢
    java-web 登陆功能
    对java的理解
    数学的历史
    使用jmeter测试接口
  • 原文地址:https://www.cnblogs.com/lajiao/p/11690681.html
Copyright © 2011-2022 走看看