Golang之beego读取配置信息,输出log模块

1,准备好配置文件

[server]
listen_ip = "0.0.0.0"
listen_port = 8888

[logs]
log_level=debug
log_path=./logs/logagent.log

[collect]
log_path=D:\project\logs\logagent.log
topic=nginx_log
chan_size=100

通过golang读取配置文件

package main

import (
    "fmt"
    "github.com/astaxie/beego/config"
)

func main() {
    conf, err := config.NewConfig("ini", "D:/project/src/go_dev/day11/config/logagent.conf")
    if err != nil {
        fmt.Println("new config failed, err:", err)
        return
    }

    port ,err:= conf.Int("server::listen_port")
    if err != nil {
        fmt.Println("read server:port failed, err:", err)
        return
    }

    fmt.Println("port:", port)

    log_level := conf.String("logs::log_level")
    if len(log_level) == 0 {
        log_level = "debug"
    }

    fmt.Println("log_level:", log_level)

    log_path := conf.String("collect::log_path")
    fmt.Println("log_path:", log_path)
}

main.go运行结果

port: 8888
log_level: debug
log_path: D:\project\logs\logagent.log

Process finished with exit code 0

2,beego输出log文件日志

main.go

package main

import (
    "encoding/json"
    "fmt"
    "github.com/astaxie/beego/logs"
)

func main() {
    config := make(map[string]interface{})
    config["filename"] = "D:/project/src/go_dev/day11/logs/logcollect.log"
    config["level"] = logs.LevelDebug

    configStr, err := json.Marshal(config)
    if err != nil {
        fmt.Println("marshal failed,err:", err)
        return
    }
    logs.SetLogger(logs.AdapterFile, string(configStr))
    logs.Debug("this is a test,my name is %s", "stu01")
    logs.Trace("this is a trace,my name is %s", "stu02")
    logs.Warn("this is a warn,my name is %s", "stu03")
}

运行结果,生成log文件

原文地址:https://www.cnblogs.com/pyyu/p/8376275.html

时间: 2025-01-02 15:49:00

Golang之beego读取配置信息,输出log模块的相关文章

JavaWEB中读取配置信息

第一种方法是使用java.io和java.util包,缺点是路径的概念要清晰, 例子: Properties prop = new Properties(); InputStream in = getClass().getResourceAsStream("/common.properties"); try { prop.load(in); pool = new JedisPool(config, prop.getProperty("pay.redis.url"))

读取配置信息

ASP.NET Core的配置(1):读取配置信息 提到“配置”二字,我想绝大部分.NET开发人员脑海中会立马浮现出两个特殊文件的身影,那就是我们再熟悉不过的app.config和web.config,多年以来我们已经习惯了将结构化的配置信息定义在这两个文件之中.到了.NET Core的时候,很多我们习以为常的东西都发生了改变,其中也包括定义配置的方式.总的来说,新的配置系统显得更加轻量级,并且具有更好的扩展性,其最大的特点就是支持多样化的数据源.我们可以采用内存的变量作为配置的数据源,也可以直

使用Apache Commons Configuration读取配置信息

在项目中使用一些比较新的库总会给你带来很多快乐,在这篇文章中,我将会给你介绍一个在Java中读取配置文件的框架--Apache Commons Configuration framework. 你会了解到 ·从XML文件中获取数据 ·访问环境变量 ·连接不同类型的配置信息(基于XML的,基于环境变量的,等等) ·在程序改变后自动重新加载配置. 在我们的示例中将会使用XML文件和环境变量的两种方式存储一个数据库的配置信息(开发.测试.产品,等等).接下来你将会看到具体的内容,但是首先先配置一下Ma

[微信开发] - 从最新的appid,appsecret读取配置信息

设置好form表单,填写参数传入Java后端做为实例bean,接着存储倒数据库. 当微信端接口配置提交时,Java接口从数据库获取最新的配置信息,可以根据increaseID,也可以设置时间段, 这里的问题是,在获取实例的那条SQL语句找不到了, selectByIncreaseId() 看了看Mapper中(DAO层) @Mapper public interface WxApiConfigMapper { int deleteByPrimaryKey(Integer id); int ins

beego 读取配置

不知道是不是坑 官方文档 https://beego.me/docs/module/config.md . 解决办法: 1 导入 config "github.com/astaxie/beego/config 2 注意路径 官方没有说明配置文件的目录,官方的配置目录应该在根路径下才可以那么写代码 beego的配置文件目录在conf/app.conf iniconf, err := config.NewConfig("ini", "conf/app.conf"

springboot 入门二- 读取配置信息一

在上篇入门中简单介绍下springboot启动使用了大量的默认配置,在实际开发过程中,经常需要启动多个服务,那端口如何手动修改呢? 此篇就是简单介绍相关的配置文件信息. Spring Boot允许外部化你的配置,这样你就可以在不同的环境中使用相同的应用程序代码.你可以使用属性文件.YAML文件.环境变量和命令行参数来外部化配置.属性的值获取可以通过注解@Value . spring Environment或注解@ConfigurationProperties 这些方式优先级如下: @TestPr

springboot 入门三- 读取配置信息二(读取属性文件方式)

在上篇文章中简单介绍自带读取方式.springboot提供多种方式来读取 一.@ConfigurationProperties(value="my") 支持更灵活的绑定及元数据的支持,但不支持spEL 定义appConfig接收(需要set get方法) @Component@ConfigurationProperties(value = "my")public class AppConfig {    private String name;    private

properties文件读取配置信息

public static void main(String[] args){ String printerName=""; String path = "C:\\BarCodeConfig\\Printer.properties"; Properties prop = new Properties(); FileInputStream fis; try { fis = new FileInputStream(path); prop.load(fis); fis.c

Exsi读取配置信息

启动ssh 查看内存smbiosDump|grep "Size: " Max. Size: 2048 GBSize: 16 GBSize: 16 GBSize: 16 GBSize: 16 GBSize: No Memory InstalledSize: No Memory InstalledMax. Size: 2048 GB #主板最大支持内存Size: 16 GB 当前已安装的内存大小. 原文地址:https://blog.51cto.com/9971654/2483195