Go 高性能日志库 blog4go
- 授权协议: BSD
- 开发语言: Google Go
- 操作系统: 跨平台
- 软件首页: https://github.com/YoungPioneers/blog4go
- 官方下载: https://github.com/YoungPioneers/blog4go/archive/master.zip
软件介绍
BLog4go 是高性能日志库。创新地使用“边解析边输出”方法进行日志输出,同时支持回调函数、日志淘汰和配置文件。可以解决高并发,调用日志函数频繁的情境下,日志库造成的性能问题。
特性:
Partially write to the bufio.Writer as soon as posible while formatting message to improve performance
支持将不同日志级别数据写到不同文件
支持使用 XML 格式的配置文件
可配置的日志循环策略
每次日志动作都可异步调用用户自定义的钩子
可调整日志格式
无需重启更改日志行为
日志启动时使用环境变量的配置
后台记录
可根据配置文件制定文件写操作
不同的输出渠道
控制台
文件
Socket 套接字
快速开始:
package main
import (
log "github.com/YoungPioneers/blog4go"
"fmt"
"os"
)
// optionally set user defined hook for logging
type MyHook struct {
something string
}
// when log-level exceed level, call the hook
// level is the level associate with that logging action.
// message is the formatted string already written.
func (self *MyHook) Fire(level log.Level, message string) {
fmt.Println(message)
}
func main() {
// init a file write using xml config file
err := log.NewFileWriterFromConfigAsFile("config.xml")
if nil != err {
fmt.Println(err.Error())
os.Exit(1)
}
defer log.Close()
// initialize your hook instance
hook := new(MyHook)
log.SetHook(hook) // writersFromConfig can be replaced with writers
log.SetHookLevel(log.INFO)
// optionally set output colored
log.SetColored(true)
log.Debugf("Good morning, %s", "eddie")
log.Warn("It's time to have breakfast")
}config.xml
<blog4go minlevel="info"> <filter levels="trace"> <rotatefile path="trace.log" type="time"></rotatefile> </filter> <filter levels="debug,info" colored="true"> <file path="debug.log"></file> </filter> <filter levels="error,critical"> <rotatefile path="error.log" type="size" rotateSize="50000000" rotateLines="8000000"></rotatefile> </filter> </blog4go>
形式感+:网页视觉设计创意拓展与快速表现
晋小彦 / 清华大学出版社 / 2014-1-1 / 59.00元
网页设计师从早年的综合性工作中分化出来,形成了相对独立的专业岗位,网页设计也不再是单纯的软件应用,它衍生出了许多独立的研究方向,当网站策划、交互体验都逐渐独立之后,形式感的突破和表现成为网页视觉设计的一项重要工作。随着时代的发展,网页设计更接近于一门艺术。网络带宽和硬件的发展为网页提供了使用更大图片、动画甚至视频的权利,而这些也为视觉设计师提供了更多表现的空间。另外多终端用户屏幕(主要是各种移动设......一起来看看 《形式感+:网页视觉设计创意拓展与快速表现》 这本书的介绍吧!
