Merge remote-tracking branch 'origin/errcode' into errcode

# Conflicts:
#	cmd/msggateway/main.go
#	go.sum
#	internal/msggateway/init.go
This commit is contained in:
Gordon
2023-03-08 18:42:25 +08:00
87 changed files with 2538 additions and 2232 deletions
+20 -34
View File
@@ -5,59 +5,45 @@ import (
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"OpenIM/pkg/common/log"
"OpenIM/pkg/common/mw"
"fmt"
"github.com/spf13/cobra"
"github.com/OpenIMSDK/openKeeper"
"os"
"strconv"
"OpenIM/pkg/common/constant"
)
var startCmd = &cobra.Command{
Use: "start",
Short: "Start the server",
Run: func(cmd *cobra.Command, args []string) {
port, _ := cmd.Flags().GetInt(constant.FlagPort)
configFolderPath, _ := cmd.Flags().GetString(constant.FlagConf)
if err := run(configFolderPath, port); err != nil {
panic(err.Error())
}
},
}
func init() {
startCmd.Flags().IntP(constant.FlagPort, "p", 0, "Port to listen on")
startCmd.Flags().StringP(constant.FlagConf, "c", "", "Path to config file folder")
}
func run(configFolderPath string, port int) error {
if err := config.InitConfig(configFolderPath); err != nil {
return err
func main() {
apiCmd := cmd.NewApiCmd()
apiCmd.AddPortFlag()
apiCmd.AddApi(run)
if err := apiCmd.Execute(); err != nil {
fmt.Println(err)
os.Exit(1)
}
}
func run(port int) error {
if port == 0 {
port = config.Config.Api.GinPort[0]
}
zk, err := openKeeper.NewClient(config.Config.Zookeeper.ZkAddr, config.Config.Zookeeper.Schema, 10, config.Config.Zookeeper.UserName, config.Config.Zookeeper.Password)
if err != nil {
return err
}
log.NewPrivateLog(constant.LogFileName)
router := api.NewGinRouter()
zk.AddOption(mw.GrpcClient())
router := api.NewGinRouter(zk)
address := constant.LocalHost + ":" + strconv.Itoa(port)
if config.Config.Api.ListenIP != "" {
address = config.Config.Api.ListenIP + ":" + strconv.Itoa(port)
}
fmt.Println("start api server, address: ", address, ", OpenIM version: ", constant.CurrentVersion)
err := router.Run(address)
fmt.Println("start api server, address: ", address, ", OpenIM version: ", config.Version)
err = router.Run(address)
if err != nil {
log.Error("", "api run failed ", address, err.Error())
return err
}
return nil
}
func main() {
rootCmd := cmd.NewRootCmd()
rootCmd.AddCommand(startCmd)
if err := startCmd.Execute(); err != nil {
fmt.Println(err)
os.Exit(1)
}
}
+10 -84
View File
@@ -1,97 +1,23 @@
package main
import (
"OpenIM/internal/tools"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"OpenIM/pkg/common/constant"
"flag"
"fmt"
"github.com/spf13/cobra"
"os"
)
var showSeqCmd = &cobra.Command{
Use: "show-seq",
Short: "Start the server",
Run: func(cmd *cobra.Command, args []string) {
configFolderPath, _ := cmd.Flags().GetString(constant.FlagConf)
config.InitConfig(configFolderPath)
},
}
var
func init() {
showSeqCmd.Flags().StringP("userID", "u", "", "openIM userID")
showSeqCmd.Flags().StringP("groupID", "g", "", "openIM groupID")
startCmd.Flags().StringP(constant.FlagConf, "c", "", "Path to config file folder")
}
func run(configFolderPath string, cmd *cobra.Command) error {
if err := config.InitConfig(configFolderPath); err != nil {
return err
}
return nil
}
func main() {
rootCmd := cmd.NewRootCmd()
rootCmd.AddCommand(showSeqCmd)
if err := rootCmd.Execute(); err != nil {
msgUtilsCmd := cmd.NewMsgUtilsCmd()
msgUtilsCmd.AddSuperGroupIDFlag()
msgUtilsCmd.AddUserIDFlag()
seqCmd := cmd.NewSeqCmd()
msgCmd := cmd.NewMsgCmd()
cmd.GetCmd.AddCommand(seqCmd.Command, msgCmd.Command)
cmd.FixCmd.AddCommand(seqCmd.Command)
cmd.GetCmd.AddCommand(msgCmd.Command)
msgUtilsCmd.AddCommand(cmd.GetCmd, cmd.FixCmd, cmd.ClearCmd)
if err := msgUtilsCmd.Execute(); err != nil {
fmt.Println(err)
os.Exit(1)
}
}
//
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
// clear msg by id
var userIDClearMsg = flag.String("user_id_fix_seq", "", "userID to clear msg and reset seq")
var superGroupIDClearMsg = flag.String("super_group_id_fix_seq", "", "superGroupID to clear msg and reset seq")
// show seq by id
var userIDShowSeq = flag.String("user_id_show_seq", "", "show userID")
var superGroupIDShowSeq = flag.String("super_group_id_show_seq", "", "userID to clear msg and reset seq")
// fix seq by id
var userIDFixSeq = flag.String("user_id_fix_seq", "", "userID to Fix Seq")
var superGroupIDFixSeq = flag.String("super_group_id_fix_seq", "", "super groupID to fix Seq")
var fixAllSeq = flag.Bool("fix_all_seq", false, "fix seq")
flag.Parse()
msgTool, err := tools.InitMsgTool()
if err != nil {
panic(err.Error())
}
ctx := context.Background()
if userIDFixSeq != nil {
msgTool.GetAndFixUserSeqs(ctx, *userIDFixSeq)
}
if superGroupIDFixSeq != nil {
msgTool.FixGroupSeq(ctx, *superGroupIDFixSeq)
}
if fixAllSeq != nil {
msgTool.FixAllSeq(ctx)
}
if userIDClearMsg != nil {
msgTool.ClearUsersMsg(ctx, []string{*userIDClearMsg})
}
if superGroupIDClearMsg != nil {
msgTool.ClearSuperGroupMsg(ctx, []string{*superGroupIDClearMsg})
}
if userIDShowSeq != nil {
msgTool.ShowUserSeqs(ctx, *userIDShowSeq)
}
if superGroupIDShowSeq != nil {
msgTool.ShowSuperGroupSeqs(ctx, *superGroupIDShowSeq)
}
}
+6 -8
View File
@@ -2,17 +2,15 @@ package main
import (
"OpenIM/internal/tools"
"OpenIM/pkg/common/config"
"OpenIM/pkg/common/cmd"
"fmt"
"time"
"os"
)
func main() {
fmt.Println(time.Now(), "start cronTask")
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := tools.StartCronTask(); err != nil {
panic(err.Error())
cronTaskCmd := cmd.NewCronTaskCmd()
if err := cronTaskCmd.Exec(tools.StartCronTask); err != nil {
fmt.Println(err)
os.Exit(1)
}
}
+8 -16
View File
@@ -1,24 +1,16 @@
package main
import (
"OpenIM/internal/msgtransfer"
"OpenIM/pkg/common/config"
"OpenIM/pkg/common/constant"
"OpenIM/pkg/common/log"
"flag"
"sync"
"OpenIM/pkg/common/cmd"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
msgTransferCmd := cmd.NewMsgTransferCmd()
msgTransferCmd.AddPrometheusPortFlag()
if err := msgTransferCmd.Exec(); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
var wg sync.WaitGroup
wg.Add(1)
prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessageTransferPrometheusPort[0], "MessageTransferPrometheusPort default listen port")
log.NewPrivateLog(constant.LogFileName)
if err := msgtransfer.StartTransfer(*prometheusPort); err != nil {
panic(err)
}
wg.Wait()
}
+10 -11
View File
@@ -1,19 +1,18 @@
package main
import (
"OpenIM/internal/push"
"OpenIM/internal/startrpc"
"OpenIM/pkg/common/config"
"OpenIM/pkg/common/constant"
"OpenIM/pkg/common/log"
"OpenIM/pkg/common/cmd"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(); err != nil {
panic(err.Error())
}
log.NewPrivateLog(constant.LogFileName)
if err := startrpc.Start(config.Config.RpcPort.OpenImAuthPort[0], config.Config.RpcRegisterName.OpenImAuthName, config.Config.Prometheus.AuthPrometheusPort[0], push.Start); err != nil {
panic(err.Error())
pushCmd := cmd.NewPushCmd()
pushCmd.AddPortFlag()
pushCmd.AddPrometheusPortFlag()
pushCmd.AddPush()
if err := pushCmd.Execute(); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}
+9 -6
View File
@@ -2,15 +2,18 @@ package main
import (
"OpenIM/internal/rpc/auth"
"OpenIM/internal/startrpc"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := startrpc.Start(config.Config.RpcPort.OpenImAuthPort[0], config.Config.RpcRegisterName.OpenImAuthName, config.Config.Prometheus.AuthPrometheusPort[0], auth.Start); err != nil {
panic(err.Error())
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImAuthName)
rpcCmd.AddPortFlag()
rpcCmd.AddPrometheusPortFlag()
if err := rpcCmd.Exec(auth.Start); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}
+9 -6
View File
@@ -2,15 +2,18 @@ package main
import (
"OpenIM/internal/rpc/conversation"
"OpenIM/internal/startrpc"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := startrpc.Start(config.Config.RpcPort.OpenImConversationPort[0], config.Config.RpcRegisterName.OpenImConversationName, config.Config.Prometheus.ConversationPrometheusPort[0], conversation.Start); err != nil {
panic(err.Error())
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImConversationName)
rpcCmd.AddPortFlag()
rpcCmd.AddPrometheusPortFlag()
if err := rpcCmd.Exec(conversation.Start); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}
+9 -6
View File
@@ -2,15 +2,18 @@ package main
import (
"OpenIM/internal/rpc/friend"
"OpenIM/internal/startrpc"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := startrpc.Start(config.Config.RpcPort.OpenImFriendPort[0], config.Config.RpcRegisterName.OpenImFriendName, config.Config.Prometheus.FriendPrometheusPort[0], friend.Start); err != nil {
panic(err.Error())
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImFriendName)
rpcCmd.AddPortFlag()
rpcCmd.AddPrometheusPortFlag()
if err := rpcCmd.Exec(friend.Start); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}
+10 -7
View File
@@ -1,16 +1,19 @@
package main
import (
"OpenIM/internal/rpc/group"
"OpenIM/internal/startrpc"
"OpenIM/internal/rpc/friend"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := startrpc.Start(config.Config.RpcPort.OpenImGroupPort[0], config.Config.RpcRegisterName.OpenImGroupName, config.Config.Prometheus.GroupPrometheusPort[0], group.Start); err != nil {
panic(err.Error())
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImGroupName)
rpcCmd.AddPortFlag()
rpcCmd.AddPrometheusPortFlag()
if err := rpcCmd.Exec(friend.Start); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}
+9 -6
View File
@@ -2,15 +2,18 @@ package main
import (
"OpenIM/internal/rpc/msg"
"OpenIM/internal/startrpc"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := startrpc.Start(config.Config.RpcPort.OpenImMessagePort[0], config.Config.RpcRegisterName.OpenImMsgName, config.Config.Prometheus.AuthPrometheusPort[0], msg.Start); err != nil {
panic(err.Error())
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImMsgName)
rpcCmd.AddPortFlag()
rpcCmd.AddPrometheusPortFlag()
if err := rpcCmd.Exec(msg.Start); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}
+9 -6
View File
@@ -2,15 +2,18 @@ package main
import (
"OpenIM/internal/rpc/third"
"OpenIM/internal/startrpc"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := startrpc.Start(config.Config.RpcPort.OpenImThirdPort[0], config.Config.RpcRegisterName.OpenImThirdName, config.Config.Prometheus.ThirdPrometheusPort[0], third.Start); err != nil {
panic(err.Error())
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImThirdName)
rpcCmd.AddPortFlag()
rpcCmd.AddPrometheusPortFlag()
if err := rpcCmd.Exec(third.Start); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}
+9 -6
View File
@@ -2,15 +2,18 @@ package main
import (
"OpenIM/internal/rpc/user"
"OpenIM/internal/startrpc"
"OpenIM/pkg/common/cmd"
"OpenIM/pkg/common/config"
"fmt"
"os"
)
func main() {
if err := config.InitConfig(""); err != nil {
panic(err.Error())
}
if err := startrpc.Start(config.Config.RpcPort.OpenImUserPort[0], config.Config.RpcRegisterName.OpenImUserName, config.Config.Prometheus.UserPrometheusPort[0], user.Start); err != nil {
panic(err.Error())
rpcCmd := cmd.NewRpcCmd(config.Config.RpcRegisterName.OpenImUserName)
rpcCmd.AddPortFlag()
rpcCmd.AddPrometheusPortFlag()
if err := rpcCmd.Exec(user.Start); err != nil {
fmt.Println(err.Error())
os.Exit(1)
}
}