zoukankan      html  css  js  c++  java
  • log.go 源码阅读

    package main

    import (
        "github.com/Sirupsen/logrus"
        "os"
        "path/filepath"
    )

    func initLogger() error {
        dirPath, _ := filepath.Abs(filepath.Dir(pConfig.Log.Path))  //获取日志文件目录
        if _, err := os.Stat(dirPath); os.IsNotExist(err) {  //检查目录是否存在
            os.Mkdir(dirPath, 0775)  //创建目录  存在潜在bug
        }

        file, err := os.OpenFile(pConfig.Log.Path, os.O_APPEND|os.O_CREATE|os.O_RDWR, 0666) //打开文件  权限:文件追加 文件创建  文件读写

        if err != nil {
            return err
        }

        level, err := logrus.ParseLevel(pConfig.Log.Level)  //设置日志级别
        if err != nil {
            return err
        }

        pLog = &logrus.Logger{
            Out:       file,   //日志问价输出位置
            Level:     level,  //日志级别
            Formatter: new(logrus.JSONFormatter),  //日志输出格式
        }

        pLog.Infof("InitLogger: path: %s, level: %s, formatter: json", pConfig.Log.Path, level)

        return nil
    }
  • 相关阅读:
    Python面向对象高级编程
    Python面向对象编程
    Anaconda的安装
    Python模块
    Python函数式编程
    Python高级特性
    hdu 3065 病毒侵袭持续中 ac自动机
    hdu 2896 病毒侵袭 ac自动机
    poj 3667 Hotel 线段树
    hdu 4322 Candy 费用流
  • 原文地址:https://www.cnblogs.com/zhangboyu/p/7461933.html
Copyright © 2011-2022 走看看