golang中创建logger时候踩过的坑

  • 错误的代码
package mainimport ("fmt""io""log""os"
)var logger *log.Loggerfunc init(){fmt.Println("创建日记录日志文件")f,err:=os.OpenFile("./Log.log",os.O_WRONLY|os.O_CREATE|os.O_APPEND,0644)if err!=nil{log.Fatal("os.OpenFile err",err)}defer f.Close()writers := []io.Writer{f,os.Stdout}//实例化Writer接口fileAndStdoutWriter := io.MultiWriter(writers...)//MultiWriter创建一个Writer接口,会将提供给其的数据写入所有创建时提供的Writer接口logger = log.New(fileAndStdoutWriter, "", log.Ldate|log.Ltime|log.Lshortfile)logger.Println("---> logger:check to make sure is works")
}func main(){logger.Println("注意,这里是不会打印和写入文件的")
}
  • 出现的错误

    • 在main函数里面logger.Println()不能打印到控制台,也不能写入文件
  • 错误原因

    defer f.Close() //在init函数执行完毕时,关闭文件f,使文件不能用于读写

转载于:https://www.cnblogs.com/MyUniverse/p/11470489.html

golang中创建logger时候踩过的坑相关推荐

  1. vue mui html不解析,记下Vue中使用Mui.js踩到的坑

    1. mui.js 推荐全局引用 Mui的css,js以及扩展js,推荐在main.js全局引用即可,千万不要再在子组件中重复引用,虽然不会报错 但是某些插件的返回结果会有意向不到的后果,比如numb ...

  2. kotlin能用嵌入式linux,Kotlin在项目中的应用和踩过的坑

    应用 空类型安全 Kotlin引入了可空类型(用?标识),在编译期杜绝了可空类型直接调用方法的可能. var a: String = "abc" a = null // 编译错误 ...

  3. 关于Qtdesigner中图像处理的一些踩过的坑:进程已结束,退出代码 -1073740791 (0xC0000409)

    今天本来想实现的是ui粗略是这个样子的: 就是当我上传图像时,是这个样子: 然后当我点击舌体分割的时候,第二个label可以用第一个label的图像数据,但是我发现Qtlabel中没有类似getPix ...

  4. golang中小数除以大数为0的坑

    某次开发发现一个小数除以大数为0,看代码. package mainimport "fmt"func main() {time := fmt.Sprintf("%.3f& ...

  5. 如何在Golang中返回错误?

    In Golang, we return errors explicitly using the return statement. This contrasts with the exception ...

  6. golang中的http server和http client

    一.golang http server python中创建一个web服务器有python -m http.server golang中创建一个web服务器很简单. golang中有一个叫做http的 ...

  7. Golang中Goroutine与线程

    我们在使用Go语言进行开发时,一般会使用goroutine来处理并发任务.那么大家有没有考虑过goroutine的实现机制是什么样的?很多同学会把goroutine与线程等同起来,但是实际上并不是这样 ...

  8. 记一次golang中sync.Map并发创建、读取的问题

    记一次golang中sync.Map并发创建.读取的问题  cunfate https://www.jianshu.com/p/f472e79909bc 背景: 我们有一个用go做的项目,其中用到了z ...

  9. docker go get问题_创建优化的Go镜像文件以及踩过的坑

    点击上方蓝色"Go语言中文网"关注我们,领全套Go资料,每天学习 Go 语言 本文作者:倚天码农 原文链接:https://segmentfault.com/a/119000002 ...

最新文章

  1. 重磅!OpenMMLab 更新啦!分类/检测/分割/3D等项目全面升级
  2. Android新手系列教程(申明:来源于网络)
  3. 矩阵分解 java_使用矩阵分解为推荐系统
  4. 工作总结4:拦截器的使用
  5. RabbitMq队列 queue
  6. MVC系列学习(十五)-验证码
  7. 【LeetCode】Sum Root to Leaf Numbers
  8. java通过各种类型驱动连接数据库
  9. Linux下搭建Haproxy负载均衡
  10. JAVA映射文件到内存,java之内存映射文件
  11. c51单片机小车c语言,用51单片机编写的智能小车全程前进的C程序
  12. 苹果手机屏幕助手_同时适用于安卓和苹果的手机助手工具--Anvsoft Syncios
  13. 【诊断数据库文件-CDD】创建速成班-北汇信息小课堂(二)
  14. mysql5.7从锁表吗_5分钟了解MySQL5.7的Online DDL雷区
  15. ftl不存在为真_判断一件书法作品是否具备收藏价值可以归纳为四个字:真、优、高、古。...
  16. Android开发者进退两难的出路;转行还是进阶?转行转什么最好
  17. 智能文档控制——文档的智能归档、捕获、索引、访问和协作
  18. Java中Set接口
  19. Java安全(十三) SSM-Spring框架
  20. unity3d android jar,c# – 访问unity3d中的android jar

热门文章

  1. hbase删除表失败的解决方法
  2. 复杂XML的解析及组装
  3. 【css】我的 css 框架——base.css
  4. Mysql date time formate
  5. 剖析:学思科的未来(一)
  6. Silverlight 下换肤的实现
  7. 关于甲沟炎的一些办法
  8. flink DDL读取kafka数据-Scala嵌入DDL形式
  9. hexo博客修改博文中日期的颜色
  10. tensorflow神经网络结构可视化