【Go 语言,服务器模块】日志系统源码

时间:2022-05-04
本文章向大家介绍【Go 语言,服务器模块】日志系统源码,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

后台服务器开发中,日志系统是针对运行的程序的检测,或者是后台统计功能的记录。 例如: 要求统计每日用户的访问量,可以通过统计日志的方式实现。 如下代码,自己实现的运行的日志的记录;主要是差错及打印log;代码可以直接整合到工程中直接调用。

package Log_Eio



import (

        "fmt"

        "os"

        "strings"

        "time"

)







const (

        DEBUG_FMT = 1 // debug

        //RELEASE_FMT = 2 // release

)



// 打印函数,发布版本打日志,否则打输出

func Fmt(data ...interface{}) {



        if DEBUG_FMT == 1 {

                fmt.Println(data)

                return

        }

}



// 日志函数

func Log(data string, data1 ...string) {

        var datatmp string



        datatmp = data

        // 循环取值

        for _, data1 := range data1 {

                datatmp = datatmp + data1

        }



        //创建日志文件

        t := time.Now()

        filepath := "./log_HallServer" + t.Format("2006-01-02") + ".txt"

        _, err := os.Stat(filepath)

        var file *os.File

        var sTmp string

        if err != nil {

                file, err = os.Create(filepath)

                sTmp = "create file" + filepath + "n"

        } else {

                file, err = os.OpenFile(filepath, os.O_APPEND, os.ModeAppend)

                sTmp = "Open file" + filepath + "n"

        }

        sTmp = strings.Replace(t.String()[:19], ":", "_", 3) + ":  " + datatmp + "n"

        file.WriteString(sTmp)

        file.Close()

}