代码拉取完成,页面将自动刷新
package main
import (
"context"
"os"
"os/signal"
"syscall"
"gitee.com/penghengben/devcloud-mini/cmdb/logger"
"gitee.com/penghengben/devcloud-mini/maudit/apps/log/provider/kafka"
"gitee.com/penghengben/devcloud-mini/maudit/conf"
"gitee.com/penghengben/devcloud-mini/maudit/exporter"
"github.com/infraboard/mcube/ioc"
// 加载所有模块
_ "gitee.com/penghengben/devcloud-mini/maudit/apps"
)
func main() {
// 初始化配置
conf.LoadConfigFromEnv()
// 先初始化ioc
err := ioc.InitIocObject()
if err != nil {
panic(err)
}
opp := kafka.NewKafkaOperateLogProvider()
ctx, cancel := context.WithCancel(context.Background())
// 独立Goroutine跑在后台
go opp.Run(ctx)
exporter.BuildMetric()
// 信号处理 负责则色住主进程(Loop Os Signal)
// 处理信号量
ch := make(chan os.Signal, 1)
// 如果os发出了信号后,会把该信号发往 ch channel
signal.Notify(ch, syscall.SIGTERM, syscall.SIGINT, syscall.SIGHUP, syscall.SIGQUIT)
// 从channel中获取信号
s := <-ch
logger.L().Info().Msgf("receive os signal: %s, exit...", s)
cancel()
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。