log4j日志go

简单好用的日志框架log4go

2019-08-16  本文已影响0人  笑吧小鸟

log4go的版本,很好用

package main

import (
    "fmt"
    l4g "github.com/ccpaging/log4go"
)

func main() {
    fmt.Println("------------ start --------------")
    // Load the configuration (isn't this easy?)
    l4g.LoadConfiguration("config.xml")

    // And now we're ready!
    l4g.Finest("This will only go to those of you really cool UDP kids!\n  If you change enabled=true.")
    l4g.Debug("Oh no!  %d + %d = %d!", 2, 2, 2+2)
    l4g.Info("About that time, eh chaps?")
    l4g.Warn("About that time, eh chaps?")
    l4g.Error("About that time, \teh chaps?")

    l4g.Close()
    fmt.Println("------------ end --------------")
}

配置文件config.xml

<logging>
  <filter enabled="true">
    <tag>stdout</tag>
    <type>console</type>
    <!-- level is (:?FINEST|FINE|DEBUG|TRACE|INFO|WARNING|ERROR) -->
    <level>DEBUG</level>
    <property name="color">true</property>
    <property name="format">[%D %T] [%L] (%S) %M</property>
  </filter>
  <filter enabled="true">
    <tag>file</tag>
    <type>file</type>
    <level>FINEST</level>
    <property name="filename">test.log</property>
    <!--
       %T - Time (15:04:05 MST)
       %t - Time (15:04)
       %D - Date (2006/01/02)
       %d - Date (01/02/06)
       %L - Level (FNST, FINE, DEBG, TRAC, WARN, EROR, CRIT)
       %S - Source
       %M - Message
       It ignores unknown format strings (and removes them)
       Recommended: "[%D %T] [%L] (%S) %M"
    -->
    <property name="format">[%D %T] [%L] (%S) %M</property>
    <property name="rotate">false</property> <!-- true enables log rotation, otherwise append -->
    <property name="maxsize">0M</property> <!-- \d+[KMG]? Suffixes are in terms of 2**10 -->
    <property name="maxlines">0K</property> <!-- \d+[KMG]? Suffixes are in terms of thousands -->
    <property name="daily">true</property> <!-- Automatically rotates when a log message is written after midnight -->
  </filter>
  <filter enabled="true">
    <tag>xmllog</tag>
    <type>xml</type>
    <level>TRACE</level>
    <property name="filename">trace.xml</property>
    <property name="rotate">true</property> <!-- true enables log rotation, otherwise append -->
    <property name="maxsize">100M</property> <!-- \d+[KMG]? Suffixes are in terms of 2**10 -->
    <property name="maxrecords">6K</property> <!-- \d+[KMG]? Suffixes are in terms of thousands -->
    <property name="daily">false</property> <!-- Automatically rotates when a log message is written after midnight -->
  </filter>
  <filter enabled="false"><!-- enabled=false means this logger won't actually be created -->
    <tag>donotopen</tag>
    <type>socket</type>
    <level>FINEST</level>
    <property name="endpoint">192.168.1.255:12124</property> <!-- recommend UDP broadcast -->
    <property name="protocol">udp</property> <!-- tcp or udp -->
  </filter>
</logging>
图片.png
图片.png
上一篇 下一篇

猜你喜欢

热点阅读