mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-28 12:56:35 +08:00
Merge remote-tracking branch 'origin/errcode' into errcode
This commit is contained in:
commit
2cd0b34f5b
@ -1,17 +1,22 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"OpenIM/internal/push"
|
||||||
"OpenIM/pkg/common/cmd"
|
"OpenIM/pkg/common/cmd"
|
||||||
|
"OpenIM/pkg/common/config"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
pushCmd := cmd.NewPushCmd()
|
pushCmd := cmd.NewRpcCmd()
|
||||||
pushCmd.AddPortFlag()
|
pushCmd.AddPortFlag()
|
||||||
pushCmd.AddPrometheusPortFlag()
|
pushCmd.AddPrometheusPortFlag()
|
||||||
pushCmd.AddPush()
|
if err := pushCmd.Exec(); err != nil {
|
||||||
if err := pushCmd.Execute(); err != nil {
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := pushCmd.StartSvr(config.Config.RpcRegisterName.OpenImPushName, push.Start); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -9,10 +9,10 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
authCmd := cmd.NewAuthCmd()
|
authCmd := cmd.NewRpcCmd()
|
||||||
authCmd.AddPortFlag()
|
authCmd.AddPortFlag()
|
||||||
authCmd.AddPrometheusPortFlag()
|
authCmd.AddPrometheusPortFlag()
|
||||||
if err := authCmd.Execute(); err != nil {
|
if err := authCmd.Exec(); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,11 @@ func main() {
|
|||||||
rpcCmd := cmd.NewRpcCmd()
|
rpcCmd := cmd.NewRpcCmd()
|
||||||
rpcCmd.AddPortFlag()
|
rpcCmd.AddPortFlag()
|
||||||
rpcCmd.AddPrometheusPortFlag()
|
rpcCmd.AddPrometheusPortFlag()
|
||||||
if err := rpcCmd.Exec(config.Config.RpcRegisterName.OpenImConversationName, conversation.Start); err != nil {
|
if err := rpcCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := rpcCmd.StartSvr(config.Config.RpcRegisterName.OpenImConversationName, conversation.Start); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,11 @@ func main() {
|
|||||||
rpcCmd := cmd.NewRpcCmd()
|
rpcCmd := cmd.NewRpcCmd()
|
||||||
rpcCmd.AddPortFlag()
|
rpcCmd.AddPortFlag()
|
||||||
rpcCmd.AddPrometheusPortFlag()
|
rpcCmd.AddPrometheusPortFlag()
|
||||||
if err := rpcCmd.Exec(config.Config.RpcRegisterName.OpenImFriendName, friend.Start); err != nil {
|
if err := rpcCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := rpcCmd.StartSvr(config.Config.RpcRegisterName.OpenImFriendName, friend.Start); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,11 @@ func main() {
|
|||||||
rpcCmd := cmd.NewRpcCmd()
|
rpcCmd := cmd.NewRpcCmd()
|
||||||
rpcCmd.AddPortFlag()
|
rpcCmd.AddPortFlag()
|
||||||
rpcCmd.AddPrometheusPortFlag()
|
rpcCmd.AddPrometheusPortFlag()
|
||||||
if err := rpcCmd.Exec(config.Config.RpcRegisterName.OpenImGroupName, friend.Start); err != nil {
|
if err := rpcCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := rpcCmd.StartSvr(config.Config.RpcRegisterName.OpenImGroupName, friend.Start); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,11 @@ func main() {
|
|||||||
rpcCmd := cmd.NewRpcCmd()
|
rpcCmd := cmd.NewRpcCmd()
|
||||||
rpcCmd.AddPortFlag()
|
rpcCmd.AddPortFlag()
|
||||||
rpcCmd.AddPrometheusPortFlag()
|
rpcCmd.AddPrometheusPortFlag()
|
||||||
if err := rpcCmd.Exec(config.Config.RpcRegisterName.OpenImMsgName, msg.Start); err != nil {
|
if err := rpcCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := rpcCmd.StartSvr(config.Config.RpcRegisterName.OpenImMsgName, msg.Start); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,11 @@ func main() {
|
|||||||
rpcCmd := cmd.NewRpcCmd()
|
rpcCmd := cmd.NewRpcCmd()
|
||||||
rpcCmd.AddPortFlag()
|
rpcCmd.AddPortFlag()
|
||||||
rpcCmd.AddPrometheusPortFlag()
|
rpcCmd.AddPrometheusPortFlag()
|
||||||
if err := rpcCmd.Exec(config.Config.RpcRegisterName.OpenImThirdName, third.Start); err != nil {
|
if err := rpcCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := rpcCmd.StartSvr(config.Config.RpcRegisterName.OpenImThirdName, third.Start); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,11 @@ func main() {
|
|||||||
rpcCmd := cmd.NewRpcCmd()
|
rpcCmd := cmd.NewRpcCmd()
|
||||||
rpcCmd.AddPortFlag()
|
rpcCmd.AddPortFlag()
|
||||||
rpcCmd.AddPrometheusPortFlag()
|
rpcCmd.AddPrometheusPortFlag()
|
||||||
if err := rpcCmd.Exec(config.Config.RpcRegisterName.OpenImUserName, user.Start); err != nil {
|
if err := rpcCmd.Exec(); err != nil {
|
||||||
|
fmt.Println(err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
if err := rpcCmd.StartSvr(config.Config.RpcRegisterName.OpenImUserName, user.Start); err != nil {
|
||||||
fmt.Println(err.Error())
|
fmt.Println(err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -67,6 +67,7 @@ func (m *MsgTransfer) initPrometheus() {
|
|||||||
func (m *MsgTransfer) Start(prometheusPort int) error {
|
func (m *MsgTransfer) Start(prometheusPort int) error {
|
||||||
var wg sync.WaitGroup
|
var wg sync.WaitGroup
|
||||||
wg.Add(4)
|
wg.Add(4)
|
||||||
|
fmt.Println("start msg transfer", "prometheusPort:", prometheusPort)
|
||||||
if config.Config.ChatPersistenceMysql {
|
if config.Config.ChatPersistenceMysql {
|
||||||
go m.persistentCH.persistentConsumerGroup.RegisterHandleAndConsumer(m.persistentCH)
|
go m.persistentCH.persistentConsumerGroup.RegisterHandleAndConsumer(m.persistentCH)
|
||||||
} else {
|
} else {
|
||||||
|
@ -13,10 +13,11 @@ import (
|
|||||||
"github.com/OpenIMSDK/openKeeper"
|
"github.com/OpenIMSDK/openKeeper"
|
||||||
grpcPrometheus "github.com/grpc-ecosystem/go-grpc-prometheus"
|
grpcPrometheus "github.com/grpc-ecosystem/go-grpc-prometheus"
|
||||||
"google.golang.org/grpc"
|
"google.golang.org/grpc"
|
||||||
|
"google.golang.org/grpc/credentials/insecure"
|
||||||
"net"
|
"net"
|
||||||
)
|
)
|
||||||
|
|
||||||
func start(rpcPort int, rpcRegisterName string, prometheusPort int, rpcFn func(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error, options []grpc.ServerOption) error {
|
func Start(rpcPort int, rpcRegisterName string, prometheusPort int, rpcFn func(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error, options ...grpc.ServerOption) error {
|
||||||
fmt.Println("start", rpcRegisterName, "rpc server, port: ", rpcPort, "prometheusPort:", prometheusPort, ", OpenIM version: ", config.Version)
|
fmt.Println("start", rpcRegisterName, "rpc server, port: ", rpcPort, "prometheusPort:", prometheusPort, ", OpenIM version: ", config.Version)
|
||||||
log.NewPrivateLog(constant.LogFileName)
|
log.NewPrivateLog(constant.LogFileName)
|
||||||
listener, err := net.Listen("tcp", fmt.Sprintf("%s:%d", config.Config.ListenIP, rpcPort))
|
listener, err := net.Listen("tcp", fmt.Sprintf("%s:%d", config.Config.ListenIP, rpcPort))
|
||||||
@ -47,19 +48,24 @@ func start(rpcPort int, rpcRegisterName string, prometheusPort int, rpcFn func(c
|
|||||||
}
|
}
|
||||||
srv := grpc.NewServer(options...)
|
srv := grpc.NewServer(options...)
|
||||||
defer srv.GracefulStop()
|
defer srv.GracefulStop()
|
||||||
err = zkClient.Register(rpcRegisterName, registerIP, rpcPort)
|
err = zkClient.Register(rpcRegisterName, registerIP, rpcPort, grpc.WithTransportCredentials(insecure.NewCredentials()))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return utils.Wrap1(err)
|
return utils.Wrap1(err)
|
||||||
}
|
}
|
||||||
if config.Config.Prometheus.Enable && prometheusPort != 0 {
|
go func() {
|
||||||
err := prome.StartPrometheusSrv(prometheusPort)
|
if config.Config.Prometheus.Enable && prometheusPort != 0 {
|
||||||
if err != nil {
|
if err := prome.StartPrometheusSrv(prometheusPort); err != nil {
|
||||||
return err
|
panic(err.Error())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
}()
|
||||||
|
err = srv.Serve(listener)
|
||||||
|
if err != nil {
|
||||||
|
return utils.Wrap1(err)
|
||||||
}
|
}
|
||||||
return rpcFn(zkClient, srv)
|
return rpcFn(zkClient, srv)
|
||||||
}
|
}
|
||||||
|
|
||||||
func Start(rpcPort int, rpcRegisterName string, prometheusPort int, rpcFn func(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error, options ...grpc.ServerOption) error {
|
//func Start(rpcPort int, rpcRegisterName string, prometheusPort int, rpcFn func(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error, options ...grpc.ServerOption) error {
|
||||||
return start(rpcPort, rpcRegisterName, prometheusPort, rpcFn, options)
|
// return start(rpcPort, rpcRegisterName, prometheusPort, rpcFn, options)
|
||||||
}
|
//}
|
||||||
|
@ -1,22 +0,0 @@
|
|||||||
package cmd
|
|
||||||
|
|
||||||
import (
|
|
||||||
"OpenIM/internal/push"
|
|
||||||
"OpenIM/internal/startrpc"
|
|
||||||
"OpenIM/pkg/common/config"
|
|
||||||
"github.com/spf13/cobra"
|
|
||||||
)
|
|
||||||
|
|
||||||
type PushCmd struct {
|
|
||||||
*AuthCmd
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewPushCmd() *PushCmd {
|
|
||||||
return &PushCmd{NewAuthCmd()}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (r *PushCmd) AddPush() {
|
|
||||||
r.Command.RunE = func(cmd *cobra.Command, args []string) error {
|
|
||||||
return startrpc.Start(r.getPortFlag(cmd), config.Config.RpcRegisterName.OpenImPushName, r.getPrometheusPortFlag(cmd), push.Start)
|
|
||||||
}
|
|
||||||
}
|
|
@ -23,23 +23,11 @@ func NewRootCmd() (rootCmd *RootCmd) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
rootCmd.Command = c
|
rootCmd.Command = c
|
||||||
rootCmd.init()
|
rootCmd.addConfFlag()
|
||||||
return rootCmd
|
return rootCmd
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *RootCmd) AddRunE(f func(cmd RootCmd) error) {
|
func (r *RootCmd) addConfFlag() {
|
||||||
r.Command.RunE = func(cmd *cobra.Command, args []string) error {
|
|
||||||
return f(*r)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (r *RootCmd) AddRpc(f func(port, prometheusPort int) error) {
|
|
||||||
r.Command.RunE = func(cmd *cobra.Command, args []string) error {
|
|
||||||
return f(r.getPortFlag(cmd), r.getPrometheusPortFlag(cmd))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (r *RootCmd) init() {
|
|
||||||
r.Command.Flags().StringP(constant.FlagConf, "c", "", "Path to config file folder")
|
r.Command.Flags().StringP(constant.FlagConf, "c", "", "Path to config file folder")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,16 +7,16 @@ import (
|
|||||||
"google.golang.org/grpc"
|
"google.golang.org/grpc"
|
||||||
)
|
)
|
||||||
|
|
||||||
type AuthCmd struct {
|
type RpcCmd struct {
|
||||||
*RootCmd
|
*RootCmd
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewAuthCmd() *AuthCmd {
|
func NewRpcCmd() *RpcCmd {
|
||||||
authCmd := &AuthCmd{NewRootCmd()}
|
authCmd := &RpcCmd{NewRootCmd()}
|
||||||
return authCmd
|
return authCmd
|
||||||
}
|
}
|
||||||
|
|
||||||
func (a *AuthCmd) Exec() error {
|
func (a *RpcCmd) Exec() error {
|
||||||
a.Command.Run = func(cmd *cobra.Command, args []string) {
|
a.Command.Run = func(cmd *cobra.Command, args []string) {
|
||||||
a.port = a.getPortFlag(cmd)
|
a.port = a.getPortFlag(cmd)
|
||||||
a.prometheusPort = a.getPrometheusPortFlag(cmd)
|
a.prometheusPort = a.getPrometheusPortFlag(cmd)
|
||||||
@ -24,6 +24,6 @@ func (a *AuthCmd) Exec() error {
|
|||||||
return a.Execute()
|
return a.Execute()
|
||||||
}
|
}
|
||||||
|
|
||||||
func (a *AuthCmd) StartSvr(name string, rpcFn func(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error) error {
|
func (a *RpcCmd) StartSvr(name string, rpcFn func(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error) error {
|
||||||
return startrpc.Start(a.GetPortFlag(), name, a.GetPrometheusPortFlag(), rpcFn)
|
return startrpc.Start(a.GetPortFlag(), name, a.GetPrometheusPortFlag(), rpcFn)
|
||||||
}
|
}
|
||||||
|
@ -515,7 +515,6 @@ func (c *config) initConfig(config interface{}, configName, configFolderPath str
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
configPath = filepath.Join(Root, "config", configName)
|
configPath = filepath.Join(Root, "config", configName)
|
||||||
fmt.Println("use", configPath)
|
|
||||||
} else {
|
} else {
|
||||||
Root = filepath.Dir(configPath)
|
Root = filepath.Dir(configPath)
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package relation
|
package relation
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"gorm.io/gorm"
|
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
pbMsg "OpenIM/pkg/proto/msg"
|
pbMsg "OpenIM/pkg/proto/msg"
|
||||||
@ -27,7 +26,6 @@ type ChatLogModel struct {
|
|||||||
SendTime time.Time `gorm:"column:send_time;index:sendTime;index:content_type,priority:1;index:session_type,priority:1;index:recv_id,priority:1;index:send_id,priority:1" json:"sendTime"`
|
SendTime time.Time `gorm:"column:send_time;index:sendTime;index:content_type,priority:1;index:session_type,priority:1;index:recv_id,priority:1;index:send_id,priority:1" json:"sendTime"`
|
||||||
CreateTime time.Time `gorm:"column:create_time" json:"createTime"`
|
CreateTime time.Time `gorm:"column:create_time" json:"createTime"`
|
||||||
Ex string `gorm:"column:ex;type:varchar(1024)" json:"ex"`
|
Ex string `gorm:"column:ex;type:varchar(1024)" json:"ex"`
|
||||||
DB *gorm.DB
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ChatLogModel) TableName() string {
|
func (ChatLogModel) TableName() string {
|
||||||
|
@ -19,7 +19,7 @@ msg_transfer_source_root="../cmd/msgtransfer/"
|
|||||||
msg_transfer_service_num=4
|
msg_transfer_service_num=4
|
||||||
|
|
||||||
|
|
||||||
sdk_server_name="sdk_ws_server"
|
sdk_server_name="open_im_sdk_server"
|
||||||
sdk_server_binary_root="../bin/"
|
sdk_server_binary_root="../bin/"
|
||||||
sdk_server_source_root="../cmd/Open-IM-SDK-Core/"
|
sdk_server_source_root="../cmd/Open-IM-SDK-Core/"
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ fi
|
|||||||
#Waiting port recycling
|
#Waiting port recycling
|
||||||
sleep 1
|
sleep 1
|
||||||
cd ${sdk_server_binary_root}
|
cd ${sdk_server_binary_root}
|
||||||
nohup ./${sdk_server_name} -openIM_ws_address ${ws_address} -sdkws_port ${sdkws_ports[0]} -openIM_api_address ${api_address} -openIM_log_level ${logLevel} >>../logs/openIM.log 2>&1 &
|
nohup ./${sdk_server_name} -openIM_ws_address ${ws_address} -sdk_ws_port ${sdkws_ports[0]} -openIM_api_address ${api_address} -openIM_log_level ${logLevel} >>../logs/openIM.log 2>&1 &
|
||||||
|
|
||||||
#Check launched service process
|
#Check launched service process
|
||||||
sleep 3
|
sleep 3
|
||||||
|
Loading…
x
Reference in New Issue
Block a user