12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package main
- import (
- "app.yhyue.com/moapp/jybase/endless"
- "jyBXSubscribe/entity"
- // logrusx "app.yhyue.com/moapp/jylogx/logx"
- "fmt"
- "jyBXSubscribe/api/internal/handler"
- "jyBXSubscribe/api/internal/svc"
- "log"
- "net/http"
- "os"
- "os/signal"
- "syscall"
- "bp.jydev.jianyu360.cn/BaseService/gateway/core/node"
- // "github.com/zeromicro/go-zero/core/logx"
- IC "jyBXSubscribe/api/init"
- MC "app.yhyue.com/moapp/jybase/common"
- "github.com/zeromicro/go-zero/rest"
- )
- func main() {
- //注册代理服务
- closeNotify, err := node.NewNode(IC.C.Gateway.Etcd...).Register(IC.C.Gateway.ServerCode, MC.InterfaceToStr(IC.C.Port))
- if err != nil {
- panic(err)
- }
- //
- go func() {
- err := endless.ListenAndServe(":"+MC.InterfaceToStr(IC.C.Webrpcport), nil, func() {})
- if err != nil {
- log.Println("ListenAndServe: ", err)
- }
- }()
- ctx := svc.NewServiceContext(IC.C)
- server := rest.MustNewServer(IC.C.RestConf)
- defer server.Stop()
- //全局中间件
- server.Use(func(next http.HandlerFunc) http.HandlerFunc {
- return func(w http.ResponseWriter, r *http.Request) {
- defer func() {
- MC.AddMgoLogs(IC.MgoLog, r, IC.C.MgoLogsName, IC.ExcludeUrl, IC.C.MgoLogsCount)
- }()
- next.ServeHTTP(w, r)
- }
- })
- handler.RegisterHandlers(server, ctx)
- //日志记录
- // logx.SetWriter(logrusx.NewLogrusWriter())
- IC.SubscribeUpdateLog = entity.NewSaveLog(IC.C.SubscribeUpdateLog.Name, IC.C.SubscribeUpdateLog.CollName, IC.C.SubscribeUpdateLog.MgoSaveCacheSize, IC.C.SubscribeUpdateLog.SPSize, IC.C.SubscribeUpdateLog.BulkSize, IC.C.SubscribeUpdateLog.TimeAfter, IC.C.SubscribeUpdateLog.Timeout, IC.MgoLog)
- go IC.SubscribeUpdateLog.SaveMgo()
- fmt.Printf("Starting server at %s:%d...\n", IC.C.Host, IC.C.Port)
- server.Start()
- quit := make(chan os.Signal, 1)
- signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
- <-quit
- closeNotify()
- }
|