12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package main
- import (
- "GtDataStore/app/cmd/events/internal/config"
- "GtDataStore/app/cmd/events/internal/logic/handler"
- "GtDataStore/app/cmd/events/internal/logic/job"
- "GtDataStore/app/cmd/events/internal/server"
- "GtDataStore/app/cmd/events/internal/svc"
- "GtDataStore/app/cmd/events/pb"
- "flag"
- "fmt"
- "github.com/zeromicro/go-zero/core/conf"
- "github.com/zeromicro/go-zero/core/service"
- "github.com/zeromicro/go-zero/zrpc"
- "google.golang.org/grpc"
- "google.golang.org/grpc/reflection"
- "metawant.greentech.com.cn/gaoyagang/gt-common/envitem"
- )
- var configFile = flag.String("f", "etc/events.yaml", "the config file")
- func main() {
- flag.Parse()
- var c config.Config
- conf.MustLoad(*configFile, &c)
- ctx := svc.NewServiceContext(c)
- s := zrpc.MustNewServer(c.RpcServerConf, func(grpcServer *grpc.Server) {
- pb.RegisterEventsServer(grpcServer, server.NewEventsServer(ctx))
- if c.Mode == service.DevMode || c.Mode == service.TestMode {
- reflection.Register(grpcServer)
- }
- })
- defer s.Stop()
- fmt.Printf("Starting rpc server at %s...\n", c.ListenOn)
- envitem.SetOptions(envitem.Options{GtServerIp: c.GtServerIp, Cache: ctx.Cache})
- if c.Mode != "dev" {
- go func() {
- defer func() {
- fmt.Print("async events job stop.....\n")
- }()
- // 启动事件识别
- fmt.Print("start new job for events.....\n")
- j := job.NewJob(1, "events-"+c.Mode, ctx, handler.EventHandlerTable, handler.EventIntervalTable)
- j.Run()
- }()
- }
- // 接收识别到的事件, 处理, 目前只有写入队列(暂时只有redis), 写入数据库
- go handler.HandlerEventNotify(ctx)
- // 处理事件
- go func() {
- // 启动事件监听
- eh, _ := handler.NewEventHandler(ctx)
- eh.Start()
- }()
- s.Start()
- }
|