分类 Golang 中的文章

Go Web框架Gin学习

Go Web框架Gin学习 一、Gin入门 1. 介绍 Gin号称是运行速度最快,特性最全的Goweb框架。 Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点 对于golang而言,web框架的依赖要远比Python,Java之类的要小。自……

阅读全文

Go运维开发之日志收集(8)将应用程序日志写入到文件中

Go运维开发之日志收集(8)将应用程序日志写入到文件中 Go运维开发之日志收集(1)收集应用程序日志到kafka中 Go运维开发之日志收集(2)从etcd中获取配置信息 Go运维开发之日志收集(3)根据etcd配置项创建多个tailTask Go运维开发之日志收集(4)监视etcd配置项……

阅读全文

Go语言第三方日志库logrus使用

Go语言第三方日志库logrus使用 简介 结构化、插件化的Go日志库,与标准库log的API完全兼容。目前处于维护模式,不再开发新的特性,后期专注于安全和性能提升这块。 安装 1go get github.com/sirupsen/logrus 基本使用 1package main 2 3import ( 4 log "github.com/sirupsen/logrus" 5) 6 7func main() { 8 log.WithFields(log.Fields{ 9 "animal": "walrus", 10 }).Info("A walrus appears") 11} 输出结果 1INFO[0000] A walrus appears animal=walrus 进阶用法 1package main 2 3import ( 4 "os" 5 log "github.com/sirupsen/logrus" 6) 7……

阅读全文

Go语言高性能日志库zap使用

Go语言高性能日志库zap使用 Zap简介 zap是一个非常快的、结构化的,分日志级别的Go日志库。 Github仓库地址:https://github.com/uber-go/zap Zap性能 记录一条含有10个字段的日志 Package Time Time % to zap Objects Allocated ⚡️ zap 862 ns/op +0% 5 allocs/op ⚡️ zap (sugared) 1250 ns/op +45% 11 allocs/op zerolog 4021 ns/op +366% 76 allocs/op go-kit……

阅读全文

Go语言中使用gopsutil进行系统信息采集

gopsutil包介绍 psutil是一个跨平台进程和系统监控的Python库,而gopsutil是其Go语言版本的实现。 安装go get github.com/shirou/gopsutil gopsutil包的使用 采集CPU相关信息 1package main 2 3import ( 4 "fmt" 5 "github.com/shirou/gopsutil/cpu" 6) 7 8func main() { 9 c, _ := cpu.Info() 10 fmt.Println("cpu信息:",c) 11 /……

阅读全文

Go运维开发之日志收集(6)从kafka中获取日志信息

Go运维开发之日志收集(6)从kafka中获取日志信息 Go运维开发之日志收集(1)收集应用程序日志到kafka中 Go运维开发之日志收集(2)从etcd中获取配置信息 Go运维开发之日志收集(3)根据etcd配置项创建多个tailTask Go运维开发之日志收集(4)监视etcd配置项……

阅读全文

Go运维开发之日志收集(2)从etcd中获取配置信息

Go运维开发之日志收集(2)从etcd中获取配置信息 Go运维开发之日志收集(1)收集应用程序日志到kafka中 在上一篇中我们已经实现了单个日志收集后发送到kafka中 我们想一下下面的几个问题: 怎么样实现多个日志收集? 每收集一个日志都运行一个logAgent? 每次收集日志都需要手动……

阅读全文

Go运维开发之日志收集(3)根据etcd配置项创建多个tailTask

Go运维开发之日志收集(3)根据etcd配置项创建多个tailTask Go运维开发之日志收集(1)收集应用程序到日志kafka中 Go运维开发之日志收集(2)从etcd中获取配置信息 在上一篇中我们已经实现了从etcd中获取配置信息 下一步就是拿着这些配置项进行日志收集,之前的tail……

阅读全文