Skip to content
/ logging Public

盘古日志框架集成,为日志记录而生,功能包括并不限于:1、使用简单(默认配置选项即可工作得很好);2、高度可配置(所有功能都可以通过配置文件来定制运行时的行为);3、和盘古框架深度集成(其它所有框架都可以使用日志框架来记录日志)

Notifications You must be signed in to change notification settings

pangum/logging

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

日志

编译状态 Golang质量 版本 仓库大小 最后提交 授权协议 语言个数 最佳语言 星星个数

一个Golang应用程序快速开发框架,有以下特性

  • 快速开发
  • 内置配置文件加载
  • Yaml
  • Toml
  • Json
  • XML
  • 很方便定制自己的配置文件加载器
  • 内置强大的数据验证
  • 内置强大的且非常多的数据验证器
  • 很方便的定制自己的数据验证器
  • 强大的扩展功能
  • 强大的配置功能
  • 徽标
  • 帮助信息
  • 命令行
  • 一切可配置点皆可配置
  • 线程安全
  • 内置依赖注入
  • 语义化
  • 方便使用
  • 多态行为,同一个调用在不同的场景下有不同的意义

快速开始

Pangu使用非常简单,只需要定义两部分代码启动方法启动器以及依赖关系,对于依赖关系

  • 可以没有依赖,如果没有,就不需要处理依赖
  • 一般稍微大型一点的系统都会有复杂的依赖关系,而这正是盘古框架的强项
  • 对于没有依赖或者依赖非常少的项目,使用盘古反而会使代码变多,这个需要大家酌情考虑

启动方法代码如下

package main

import (
`github.com/pangum/pangu`
`github.com/pangum/pangum`
)

func main() {
panic(pangu.New(
pangu.Named(`ziyunix`),
pangu.Banner(`Ziyunix Server`, pangu.BannerTypeAscii),
).Run(newBootstrap))
}

启动器的代码如下

package main

type bootstrap struct {
application *pangu.Application
}

func newBootstrap(application *pangu.Application) pangu.Bootstrap {
return &bootstrap{
application: application,
}
}

依赖关系建议像如下处理

package rest

import (
`github.com/pangum/pangu`
)

type Server struct {}

func newServer(/* 如果有依赖,可以在这里增加依赖:api *Api */) *Server {
return new(Server)
}

func init() {
pangu.New().Dependencies(
newServer,
// 其它依赖
// ...
)
}

Pangu有非常多的配置项,请参看使用文档

文档

点击这里查看最新文档

使用示例

点击这里查看最新的代码示例

项目实践

交流

微信群

捐助

支持宝 微信

感谢Jetbrains

本项目通过Jetbrains开源许可IDE编写源代码,特此感谢 Jetbrains图标

About

盘古日志框架集成,为日志记录而生,功能包括并不限于:1、使用简单(默认配置选项即可工作得很好);2、高度可配置(所有功能都可以通过配置文件来定制运行时的行为);3、和盘古框架深度集成(其它所有框架都可以使用日志框架来记录日志)

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages