From 9a5c0bae50a207c08bc314a797f95c35cf2f1e85 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 13 Sep 2022 18:02:37 +0800 Subject: [PATCH 01/23] hash --- internal/rpc/group/group.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 9c0eb6bc8..a36547c2c 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -1552,6 +1552,9 @@ func (s *groupServer) DismissGroup(ctx context.Context, req *pbGroup.DismissGrou if err := rocksCache.DelGroupInfoFromCache(req.GroupID); err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) } + if err := rocksCache.DelGroupMemberListHashFromCache(req.GroupID); err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) + } log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) return &pbGroup.DismissGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil } From 0d52759455757ff207662501b393d483350234ff Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 13 Sep 2022 18:15:33 +0800 Subject: [PATCH 02/23] fix bug : messages can be sent after the group is disbanded --- go.mod | 3 +-- go.sum | 23 ++++++----------------- internal/utils/local_cache.go | 7 +++++++ 3 files changed, 14 insertions(+), 19 deletions(-) diff --git a/go.mod b/go.mod index eb00c505f..6bb3ab4c0 100644 --- a/go.mod +++ b/go.mod @@ -38,7 +38,7 @@ require ( github.com/olivere/elastic/v7 v7.0.23 github.com/pelletier/go-toml/v2 v2.0.2 // indirect github.com/pkg/errors v0.9.1 - github.com/prometheus/client_golang v1.13.0 // indirect + github.com/prometheus/client_golang v1.13.0 github.com/rifflock/lfshook v0.0.0-20180920164130-b9218ef580f5 github.com/robfig/cron/v3 v3.0.1 github.com/sirupsen/logrus v1.8.1 @@ -49,7 +49,6 @@ require ( github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.428 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/sms v1.0.428 github.com/tencentyun/qcloud-cos-sts-sdk v0.0.0-20210325043845-84a0811633ca - github.com/xuri/excelize/v2 v2.6.0 go.etcd.io/etcd/api/v3 v3.5.4 go.etcd.io/etcd/client/v3 v3.5.4 go.mongodb.org/mongo-driver v1.8.3 diff --git a/go.sum b/go.sum index 74c81cccd..945c71ab3 100644 --- a/go.sum +++ b/go.sum @@ -156,6 +156,7 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/denisenkom/go-mssqldb v0.0.0-20191124224453-732737034ffd h1:83Wprp6ROGeiHFAP8WJdI2RoxALQYgdllERc3N5N2DM= github.com/denisenkom/go-mssqldb v0.0.0-20191124224453-732737034ffd/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= @@ -178,6 +179,7 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.m github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 h1:Yzb9+7DPaBjB8zlTR87/ElzFsnQfuHnVUVqpZZIcV5Y= github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5/go.mod h1:a2zkGnVExMxdzMo3M0Hi/3sEU+cWnZpSni0O6/Yb/P0= github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= @@ -249,6 +251,7 @@ github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt/v4 v4.1.0 h1:XUgk2Ex5veyVFVeLm0xhusUTQybEbexJXrvPNOKkSY0= github.com/golang-jwt/jwt/v4 v4.1.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= +github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe h1:lXe2qZdvpiX5WZkZR4hgp4KJVfY3nMkvmwbVkpv1rVY= github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -419,6 +422,7 @@ github.com/lestrrat-go/file-rotatelogs v2.4.0+incompatible h1:Y6sqxHMyB1D2YSzWkL github.com/lestrrat-go/file-rotatelogs v2.4.0+incompatible/go.mod h1:ZQnN8lSECaebrkQytbHj4xNgtg8CR7RYXnPok8e0EHA= github.com/lestrrat-go/strftime v1.0.4 h1:T1Rb9EPkAhgxKqbcMIPguPq8glqXTA1koF8n9BHElA8= github.com/lestrrat-go/strftime v1.0.4/go.mod h1:E1nN3pCbtMSu1yjSVeyuRFVm/U0xoR76fd03sz+Qz4g= +github.com/lib/pq v1.1.1 h1:sJZmqHoEaY7f+NPP8pgLB/WxulyR3fewgCM2qaSlBb4= github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lithammer/shortuuid v3.0.0+incompatible h1:NcD0xWW/MZYXEHa6ITy6kaXN5nwm/V115vj2YXfhS0w= github.com/lithammer/shortuuid v3.0.0+incompatible/go.mod h1:FR74pbAuElzOUuenUHTK2Tciko1/vKuIKS9dSkDrA4w= @@ -430,6 +434,7 @@ github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJ github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= +github.com/mattn/go-sqlite3 v1.14.0 h1:mLyGNKR8+Vv9CAU7PphKa2hkEqxxhn8i32J6FPj1/QA= github.com/mattn/go-sqlite3 v1.14.0/go.mod h1:JIl7NbARA7phWnGvh0LKTyg7S9BA+6gx71ShQilpsus= github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= @@ -450,8 +455,6 @@ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lN github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= -github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 h1:RWengNIwukTxcDr9M+97sNutRR1RKhG96O6jWumTTnw= -github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8= github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= @@ -521,10 +524,6 @@ github.com/prometheus/procfs v0.8.0 h1:ODq8ZFEaYeCaZOJlZZdJA2AbQR98dSHSM1KW/You5 github.com/prometheus/procfs v0.8.0/go.mod h1:z7EfXMXOkbkqb9IINtpCn86r/to3BnA0uaxHdg830/4= github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 h1:N/ElC8H3+5XpJzTSTfLsJV/mx9Q9g7kxmchpfZyxgzM= github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= -github.com/richardlehane/mscfb v1.0.4 h1:WULscsljNPConisD5hR0+OyZjwK46Pfyr6mPu5ZawpM= -github.com/richardlehane/mscfb v1.0.4/go.mod h1:YzVpcZg9czvAuhk9T+a3avCpcFPMUWm7gK3DypaEsUk= -github.com/richardlehane/msoleps v1.0.1 h1:RfrALnSNXzmXLbGct/P2b4xkFz4e8Gmj/0Vj9M9xC1o= -github.com/richardlehane/msoleps v1.0.1/go.mod h1:BWev5JBpU9Ko2WAgmZEuiz4/u3ZYTKbjLycmwiWUfWg= github.com/rifflock/lfshook v0.0.0-20180920164130-b9218ef580f5 h1:mZHayPoR0lNmnHyvtYjDeq0zlVHn9K/ZXoy17ylucdo= github.com/rifflock/lfshook v0.0.0-20180920164130-b9218ef580f5/go.mod h1:GEXHk5HgEKCvEIIrSpFI3ozzG5xOKA2DVlEX/gGnewM= github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs= @@ -594,12 +593,6 @@ github.com/xdg-go/stringprep v1.0.2 h1:6iq84/ryjjeRmMJwxutI51F2GIPlP5BfTvXHeYjyh github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM= github.com/xdg/scram v1.0.3/go.mod h1:lB8K/P019DLNhemzwFU4jHLhdvlE6uDZjXFejJXr49I= github.com/xdg/stringprep v1.0.3/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y= -github.com/xuri/efp v0.0.0-20220407160117-ad0f7a785be8 h1:3X7aE0iLKJ5j+tz58BpvIZkXNV7Yq4jC93Z/rbN2Fxk= -github.com/xuri/efp v0.0.0-20220407160117-ad0f7a785be8/go.mod h1:ybY/Jr0T0GTCnYjKqmdwxyxn2BQf2RcQIIvex5QldPI= -github.com/xuri/excelize/v2 v2.6.0 h1:m/aXAzSAqxgt74Nfd+sNzpzVKhTGl7+S9nbG4A57mF4= -github.com/xuri/excelize/v2 v2.6.0/go.mod h1:Q1YetlHesXEKwGFfeJn7PfEZz2IvHb6wdOeYjBxVcVs= -github.com/xuri/nfp v0.0.0-20220409054826-5e722a1d9e22 h1:OAmKAfT06//esDdpi/DZ8Qsdt4+M5+ltca05dA5bG2M= -github.com/xuri/nfp v0.0.0-20220409054826-5e722a1d9e22/go.mod h1:WwHg+CVyzlv/TX9xqBFXEZAuxOPxn2k1GNHwG41IIUQ= github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA= github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -654,7 +647,6 @@ golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.0.0-20220408190544-5352b0902921/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e h1:T8NU3HyQ8ClP4SEE+KbFlg6n0NhuTsN4MyznaarGsZM= golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -747,7 +739,6 @@ golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qx golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220407224826-aac1ed45d8e3/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220622184535-263ec571b305 h1:dAgbJ2SP4jD6XYfMNLVj0BF21jo2PjChrtGaAvF5M3I= golang.org/x/net v0.0.0-20220622184535-263ec571b305/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= @@ -766,8 +757,8 @@ golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20211005180243-6b3c2da341f1 h1:B333XXssMuKQeBwiNODx4TupZy7bf4sxFZnN2ZOcvUE= golang.org/x/oauth2 v0.0.0-20211005180243-6b3c2da341f1/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b h1:clP8eMhB30EHdc0bd2Twtq6kgU7yl5ub2cQLSdrv1Dg= golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -779,7 +770,6 @@ golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f h1:Ax0t5p6N38Ga0dThY21weqDEyz2oklo4IvDkpigvkD8= golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1076,7 +1066,6 @@ google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlba google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.28.0 h1:w43yiav+6bVFTBQFZX0r7ipe9JQ1QsbMgHwbBziscLw= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= google.golang.org/protobuf v1.28.1 h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= diff --git a/internal/utils/local_cache.go b/internal/utils/local_cache.go index 5efec4fb3..b37692d2a 100644 --- a/internal/utils/local_cache.go +++ b/internal/utils/local_cache.go @@ -33,6 +33,13 @@ func GetGroupMemberUserIDList(groupID string, operationID string) ([]string, err CacheGroupMtx.Lock() defer CacheGroupMtx.Unlock() + + if groupHashRemote == 0 { + log.Info(operationID, "groupHashRemote == 0 ", groupID) + delete(CacheGroupMemberUserIDList, groupID) + return []string{}, nil + } + groupInLocalCache, ok := CacheGroupMemberUserIDList[groupID] if ok && groupInLocalCache.MemberListHash == groupHashRemote { log.Debug(operationID, "in local cache ", groupID) From d491c482a5243c9954f4fc83f837c8c04a15a957 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 13 Sep 2022 18:31:47 +0800 Subject: [PATCH 03/23] hash --- pkg/common/db/rocks_cache/rocks_cache.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkg/common/db/rocks_cache/rocks_cache.go b/pkg/common/db/rocks_cache/rocks_cache.go index ce8bd76c6..b8346c0d0 100644 --- a/pkg/common/db/rocks_cache/rocks_cache.go +++ b/pkg/common/db/rocks_cache/rocks_cache.go @@ -433,6 +433,13 @@ func DelJoinedSuperGroupIDListFromCache(userID string) error { func GetGroupMemberListHashFromCache(groupID string) (uint64, error) { generateHash := func() (string, error) { + groupInfo, err := GetGroupInfoFromCache(groupID) + if err != nil { + return "0", utils.Wrap(err, "GetGroupInfoFromCache failed") + } + if groupInfo.Status == constant.GroupStatusDismissed { + return "0", nil + } groupMemberIDList, err := GetGroupMemberIDListFromCache(groupID) if err != nil { return "", utils.Wrap(err, "GetGroupMemberIDListFromCache failed") @@ -447,6 +454,9 @@ func GetGroupMemberListHashFromCache(groupID string) (uint64, error) { return strconv.Itoa(int(bi.Uint64())), nil } hashCode, err := db.DB.Rc.Fetch(groupMemberListHashCache+groupID, time.Second*30*60, generateHash) + if err != nil { + return 0, utils.Wrap(err, "fetch failed") + } hashCodeUint64, err := strconv.Atoi(hashCode) return uint64(hashCodeUint64), err } From e32a3fbfcae33f1394b61de902af209945bd5a86 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 13 Sep 2022 19:58:48 +0800 Subject: [PATCH 04/23] hash --- .../msg_transfer/logic/persistent_msg_handler.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/internal/msg_transfer/logic/persistent_msg_handler.go b/internal/msg_transfer/logic/persistent_msg_handler.go index dec72181b..52049a6f1 100644 --- a/internal/msg_transfer/logic/persistent_msg_handler.go +++ b/internal/msg_transfer/logic/persistent_msg_handler.go @@ -44,6 +44,7 @@ func (pc *PersistentConsumerHandler) Init() { } func (pc *PersistentConsumerHandler) initPrometheus() { + // counter msgInsertMysqlCounter = promauto.NewCounter(prometheus.CounterOpts{ Name: "insert_mysql_msg_total", Help: "The total number of msg insert mysql events", @@ -52,6 +53,13 @@ func (pc *PersistentConsumerHandler) initPrometheus() { Name: "insert_mysql_failed_msg_total", Help: "The total number of msg insert mysql events", }) + + // msgInsertMysqlEvery := prometheus.NewHistogram(prometheus.HistogramOpts{ + // Name: "http_request_duration_seconds", + // Help: "A histogram of the HTTP request durations in seconds.", + // Buckets: []float64{10, 20, 0.25, 0.5, 1, 2.5, 5, 10}, + // }) + } func (pc *PersistentConsumerHandler) handleChatWs2Mysql(cMsg *sarama.ConsumerMessage, msgKey string, _ sarama.ConsumerGroupSession) { @@ -85,7 +93,9 @@ func (pc *PersistentConsumerHandler) handleChatWs2Mysql(cMsg *sarama.ConsumerMes log.NewInfo(msgFromMQ.OperationID, "msg_transfer msg persisting", string(msg)) if err = im_mysql_msg_model.InsertMessageToChatLog(msgFromMQ); err != nil { log.NewError(msgFromMQ.OperationID, "Message insert failed", "err", err.Error(), "msg", msgFromMQ.String()) - msgInsertFailedMysqlCounter.Inc() + if config.Config.Prometheus.Enable { + msgInsertFailedMysqlCounter.Inc() + } return } if config.Config.Prometheus.Enable { From 54a3a755d688a1b631ea24da9934568d528bfd1b Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Wed, 14 Sep 2022 10:25:31 +0800 Subject: [PATCH 05/23] prome --- script/msg_transfer_start.sh | 7 ++++++- script/start_rpc_service.sh | 2 -- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/script/msg_transfer_start.sh b/script/msg_transfer_start.sh index b54513999..8a66ec35e 100755 --- a/script/msg_transfer_start.sh +++ b/script/msg_transfer_start.sh @@ -22,7 +22,12 @@ sleep 1 cd ${msg_transfer_binary_root} for ((i = 0; i < ${msg_transfer_service_num}; i++)); do - nohup ./${msg_transfer_name} -prometheus_port ${prome_ports[$i]} >>../logs/openIM.log 2>&1 & + prome_port=${prome_ports[$i]} + cmd="nohup ./${msg_transfer_name}" + if [ $prome_port != "" ]; then + cmd=$cmd+" -prometheus_port $prome_port" + fi + $cmd >>../logs/openIM.log 2>&1 & done #Check launched service process diff --git a/script/start_rpc_service.sh b/script/start_rpc_service.sh index bb53a85b6..8abfde5ed 100644 --- a/script/start_rpc_service.sh +++ b/script/start_rpc_service.sh @@ -80,10 +80,8 @@ for ((i = 0; i < ${#service_filename[*]}; i++)); do list_to_string $portList2 prome_ports=($ports_array) #Start related rpc services based on the number of ports - # for j in ${service_ports}; do for ((j = 0; j < ${#service_ports[*]}; j++)); do #Start the service in the background - # ./${service_filename[$i]} -port $j & cmd="./${service_filename[$i]} -port ${service_ports[$j]} -prometheus_port ${prome_ports[$j]}" if [ $i -eq 0 -o $i -eq 1 ]; then cmd="./${service_filename[$i]} -port ${service_ports[$j]}" From 4d6e05989e2900459a1f3abd64de36716d55d6b9 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Wed, 14 Sep 2022 10:25:44 +0800 Subject: [PATCH 06/23] prome --- internal/msg_transfer/logic/persistent_msg_handler.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/internal/msg_transfer/logic/persistent_msg_handler.go b/internal/msg_transfer/logic/persistent_msg_handler.go index 52049a6f1..6894e7244 100644 --- a/internal/msg_transfer/logic/persistent_msg_handler.go +++ b/internal/msg_transfer/logic/persistent_msg_handler.go @@ -54,12 +54,16 @@ func (pc *PersistentConsumerHandler) initPrometheus() { Help: "The total number of msg insert mysql events", }) - // msgInsertMysqlEvery := prometheus.NewHistogram(prometheus.HistogramOpts{ + // 启动计时器 + // requestDurations := prometheus.NewHistogram(prometheus.HistogramOpts{ // Name: "http_request_duration_seconds", // Help: "A histogram of the HTTP request durations in seconds.", - // Buckets: []float64{10, 20, 0.25, 0.5, 1, 2.5, 5, 10}, + // Buckets: []float64{0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10}, // }) - + // 开始 + // timer := prometheus.NewTimer(requestDurations) + // 停止 + // timer.ObserveDuration() } func (pc *PersistentConsumerHandler) handleChatWs2Mysql(cMsg *sarama.ConsumerMessage, msgKey string, _ sarama.ConsumerGroupSession) { From e9ad462f9e1db3c6000c16e59537f75ea8d723d5 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 10:42:02 +0800 Subject: [PATCH 07/23] log --- cmd/open_im_api/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 6a78121dd..a7f4e9573 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -48,7 +48,7 @@ func main() { // gin.SetMode(gin.DebugMode) r := gin.Default() r.Use(utils.CorsHandler()) - log.Info("load config: ", config.Config) + log.Info("load config: ", config.Config) r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) if config.Config.Prometheus.Enable { r.GET("/metrics", promePkg.PrometheusHandler()) From 2368a8fba336021d60df63e5adc5e2890567df53 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Wed, 14 Sep 2022 11:00:27 +0800 Subject: [PATCH 08/23] fix transfer --- script/msg_transfer_start.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/msg_transfer_start.sh b/script/msg_transfer_start.sh index 8a66ec35e..746cf3342 100755 --- a/script/msg_transfer_start.sh +++ b/script/msg_transfer_start.sh @@ -25,7 +25,7 @@ for ((i = 0; i < ${msg_transfer_service_num}; i++)); do prome_port=${prome_ports[$i]} cmd="nohup ./${msg_transfer_name}" if [ $prome_port != "" ]; then - cmd=$cmd+" -prometheus_port $prome_port" + cmd="$cmd -prometheus_port $prome_port" fi $cmd >>../logs/openIM.log 2>&1 & done From 88af048e907c38438fb048573a0e619cf6527929 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Wed, 14 Sep 2022 12:19:17 +0800 Subject: [PATCH 09/23] add log --- pkg/common/db/mysql.go | 1 + 1 file changed, 1 insertion(+) diff --git a/pkg/common/db/mysql.go b/pkg/common/db/mysql.go index 4f746fc1e..9702f4b43 100644 --- a/pkg/common/db/mysql.go +++ b/pkg/common/db/mysql.go @@ -23,6 +23,7 @@ func (w Writer) Printf(format string, args ...interface{}) { } func initMysqlDB() { + fmt.Println("init mysqlDB start") //When there is no open IM database, connect to the mysql built-in database to create openIM database dsn := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&parseTime=true&loc=Local", config.Config.Mysql.DBUserName, config.Config.Mysql.DBPassword, config.Config.Mysql.DBAddress[0], "mysql") From c018d6311781ba7f14482a5648e08a84828c3067 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Wed, 14 Sep 2022 12:24:29 +0800 Subject: [PATCH 10/23] add log --- pkg/common/db/mysql.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/common/db/mysql.go b/pkg/common/db/mysql.go index 9702f4b43..d43ce736d 100644 --- a/pkg/common/db/mysql.go +++ b/pkg/common/db/mysql.go @@ -41,7 +41,7 @@ func initMysqlDB() { panic(err1.Error()) } } - + fmt.Println("init db", db) //Check the database and table during initialization sql := fmt.Sprintf("CREATE DATABASE IF NOT EXISTS %s default charset utf8 COLLATE utf8_general_ci;", config.Config.Mysql.DBDatabaseName) err = db.Exec(sql).Error @@ -49,7 +49,7 @@ func initMysqlDB() { fmt.Println("0", "Exec failed ", err.Error(), sql) panic(err.Error()) } - + fmt.Println(sql) dsn = fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&parseTime=true&loc=Local", config.Config.Mysql.DBUserName, config.Config.Mysql.DBPassword, config.Config.Mysql.DBAddress[0], config.Config.Mysql.DBDatabaseName) @@ -69,12 +69,12 @@ func initMysqlDB() { fmt.Println("0", "Open failed ", err.Error(), dsn) panic(err.Error()) } - + fmt.Println("init db2", db) sqlDB, err := db.DB() if err != nil { panic(err.Error()) } - + fmt.Println("init sqlDB", sqlDB) sqlDB.SetConnMaxLifetime(time.Second * time.Duration(config.Config.Mysql.DBMaxLifeTime)) sqlDB.SetMaxOpenConns(config.Config.Mysql.DBMaxOpenConns) sqlDB.SetMaxIdleConns(config.Config.Mysql.DBMaxIdleConns) From 60f0c80c36267395942e5428356dad0aa23cdcb3 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 12:31:24 +0800 Subject: [PATCH 11/23] log --- cmd/open_im_api/main.go | 8 ++++---- pkg/common/config/config.go | 2 -- pkg/common/db/model.go | 4 ++-- pkg/common/db/mysql_model/im_mysql_model/user_model.go | 9 ++++----- 4 files changed, 10 insertions(+), 13 deletions(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index a7f4e9573..0c839fc56 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -48,7 +48,7 @@ func main() { // gin.SetMode(gin.DebugMode) r := gin.Default() r.Use(utils.CorsHandler()) - log.Info("load config: ", config.Config) + fmt.Println("load config: ", config.Config) r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) if config.Config.Prometheus.Enable { r.GET("/metrics", promePkg.PrometheusHandler()) @@ -226,10 +226,10 @@ func main() { if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } - address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) - fmt.Println("start api server, address: ", address) + fmt.Println("start api server, address: \n", address) err := r.Run(address) if err != nil { - log.Error("", "api run failed ", *ginPort, err.Error()) + log.Error("", "api run failed ", address, err.Error()) + panic("api start failed " + err.Error()) } } diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index b2222d6c2..730d7c0f5 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -1,7 +1,6 @@ package config import ( - "fmt" "io/ioutil" "os" "path/filepath" @@ -545,7 +544,6 @@ type PDefaultTips struct { func init() { cfgName := os.Getenv("CONFIG_NAME") - fmt.Println("GET IM DEFAULT CONFIG PATH :", Root, "ENV PATH:", cfgName) if len(cfgName) != 0 { bytes, err := ioutil.ReadFile(filepath.Join(cfgName, "config", "config.yaml")) if err != nil { diff --git a/pkg/common/db/model.go b/pkg/common/db/model.go index 0fd699018..7fe53b77a 100644 --- a/pkg/common/db/model.go +++ b/pkg/common/db/model.go @@ -77,7 +77,7 @@ func init() { panic(err1.Error()) } } - fmt.Println("0", utils.GetSelfFuncName(), "mongo driver client init success: ", uri) + fmt.Println("mongo driver client init success: ", uri) // mongodb create index if err := createMongoIndex(mongoClient, cSendLog, false, "send_id", "-send_time"); err != nil { fmt.Println("send_id", "-send_time", "index create failed", err.Error()) @@ -100,7 +100,7 @@ func init() { if err := createMongoIndex(mongoClient, cTag, true, "tag_id"); err != nil { fmt.Println("tag_id", "index create failed", err.Error()) } - fmt.Println("create index success") + fmt.Println("createMongoIndex success") DB.mongoClient = mongoClient // redis pool init diff --git a/pkg/common/db/mysql_model/im_mysql_model/user_model.go b/pkg/common/db/mysql_model/im_mysql_model/user_model.go index 7eb6fcbfe..5e280418c 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/user_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/user_model.go @@ -12,11 +12,9 @@ import ( ) func init() { - //init managers for k, v := range config.Config.Manager.AppManagerUid { - user, err := GetUserByUserID(v) + _, err := GetUserByUserID(v) if err != nil { - fmt.Println("GetUserByUserID failed ", err.Error(), v, user) } else { continue } @@ -30,9 +28,10 @@ func init() { appMgr.AppMangerLevel = constant.AppAdmin err = UserRegister(appMgr) if err != nil { - fmt.Println("AppManager insert error", err.Error(), appMgr, "time: ", appMgr.Birth.Unix()) + fmt.Println("AppManager insert error ", err.Error(), appMgr) + } else { + fmt.Println("AppManager insert ", appMgr) } - } } From 685cacf4900690d7b32740cd287b96566136eb3d Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 12:43:10 +0800 Subject: [PATCH 12/23] log --- cmd/open_im_api/main.go | 1 + 1 file changed, 1 insertion(+) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 0c839fc56..925e81c63 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -41,6 +41,7 @@ import ( // @license.url http://www.apache.org/licenses/LICENSE-2.0.html // @BasePath / func main() { + fmt.Println("api start ") log.NewPrivateLog(constant.LogFileName) gin.SetMode(gin.ReleaseMode) f, _ := os.Create("../logs/api.log") From 7295f39d68cadbdfad5955bc8d413b272ba8eaa4 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 12:45:42 +0800 Subject: [PATCH 13/23] log --- cmd/open_im_api/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 925e81c63..14d88f042 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -42,7 +42,6 @@ import ( // @BasePath / func main() { fmt.Println("api start ") - log.NewPrivateLog(constant.LogFileName) gin.SetMode(gin.ReleaseMode) f, _ := os.Create("../logs/api.log") gin.DefaultWriter = io.MultiWriter(f) @@ -50,6 +49,7 @@ func main() { r := gin.Default() r.Use(utils.CorsHandler()) fmt.Println("load config: ", config.Config) + log.NewPrivateLog(constant.LogFileName) r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) if config.Config.Prometheus.Enable { r.GET("/metrics", promePkg.PrometheusHandler()) From f2f35e115c00c446fc4d24771acea1ac7d5a0afa Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 13:08:15 +0800 Subject: [PATCH 14/23] log --- cmd/open_im_api/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 14d88f042..d382c965b 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -227,7 +227,7 @@ func main() { if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } - fmt.Println("start api server, address: \n", address) + fmt.Println("start api server, address: ", address, "\n") err := r.Run(address) if err != nil { log.Error("", "api run failed ", address, err.Error()) From 4aaa1a7afa3049a25939e236eb1b79413b3988c5 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 13:09:04 +0800 Subject: [PATCH 15/23] log --- cmd/open_im_api/main.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index d382c965b..38889574b 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -41,15 +41,14 @@ import ( // @license.url http://www.apache.org/licenses/LICENSE-2.0.html // @BasePath / func main() { - fmt.Println("api start ") + log.NewPrivateLog(constant.LogFileName) gin.SetMode(gin.ReleaseMode) f, _ := os.Create("../logs/api.log") gin.DefaultWriter = io.MultiWriter(f) // gin.SetMode(gin.DebugMode) r := gin.Default() r.Use(utils.CorsHandler()) - fmt.Println("load config: ", config.Config) - log.NewPrivateLog(constant.LogFileName) + log.Info("load config: ", config.Config) r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) if config.Config.Prometheus.Enable { r.GET("/metrics", promePkg.PrometheusHandler()) From 72d092045882f7ff1e801d847e2a49b25b9b80fc Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 14:42:35 +0800 Subject: [PATCH 16/23] log --- cmd/open_im_cms_api/main.go | 2 +- cmd/open_im_demo/main.go | 2 +- cmd/open_im_msg_gateway/main.go | 2 +- cmd/open_im_msg_transfer/main.go | 2 +- cmd/open_im_push/main.go | 2 +- cmd/rpc/open_im_admin_cms/main.go | 2 +- cmd/rpc/open_im_auth/main.go | 2 +- cmd/rpc/open_im_cache/main.go | 2 +- cmd/rpc/open_im_conversation/main.go | 2 +- cmd/rpc/open_im_friend/main.go | 2 +- cmd/rpc/open_im_group/main.go | 2 +- cmd/rpc/open_im_msg/main.go | 2 +- cmd/rpc/open_im_office/main.go | 2 +- cmd/rpc/open_im_organization/main.go | 2 +- cmd/rpc/open_im_user/main.go | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/cmd/open_im_cms_api/main.go b/cmd/open_im_cms_api/main.go index 622d72924..deaebc196 100644 --- a/cmd/open_im_cms_api/main.go +++ b/cmd/open_im_cms_api/main.go @@ -24,6 +24,6 @@ func main() { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } address = config.Config.CmsApi.ListenIP + ":" + strconv.Itoa(*ginPort) - fmt.Println("start cms api server, address: ", address) + fmt.Println("start cms api server, address: ", address, "\n") router.Run(address) } diff --git a/cmd/open_im_demo/main.go b/cmd/open_im_demo/main.go index 1125c7827..703a9a74d 100644 --- a/cmd/open_im_demo/main.go +++ b/cmd/open_im_demo/main.go @@ -71,7 +71,7 @@ func main() { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } address = config.Config.CmsApi.ListenIP + ":" + strconv.Itoa(*ginPort) - fmt.Println("start demo api server address: ", address) + fmt.Println("start demo api server address: ", address, "\n") go register.OnboardingProcessRoutine() go register.ImportFriendRoutine() err := r.Run(address) diff --git a/cmd/open_im_msg_gateway/main.go b/cmd/open_im_msg_gateway/main.go index 32d6df69f..cc6621ffc 100644 --- a/cmd/open_im_msg_gateway/main.go +++ b/cmd/open_im_msg_gateway/main.go @@ -21,7 +21,7 @@ func main() { flag.Parse() var wg sync.WaitGroup wg.Add(1) - fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort) + fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, "\n") gate.Init(*rpcPort, *wsPort) gate.Run(*prometheusPort) wg.Wait() diff --git a/cmd/open_im_msg_transfer/main.go b/cmd/open_im_msg_transfer/main.go index c112c56ba..4b501406e 100644 --- a/cmd/open_im_msg_transfer/main.go +++ b/cmd/open_im_msg_transfer/main.go @@ -17,7 +17,7 @@ func main() { flag.Parse() log.NewPrivateLog(constant.LogFileName) logic.Init() - fmt.Println("start msg_transfer server") + fmt.Println("start msg_transfer server \n") logic.Run(*prometheusPort) wg.Wait() } diff --git a/cmd/open_im_push/main.go b/cmd/open_im_push/main.go index 806515524..09ffde048 100644 --- a/cmd/open_im_push/main.go +++ b/cmd/open_im_push/main.go @@ -18,7 +18,7 @@ func main() { var wg sync.WaitGroup wg.Add(1) log.NewPrivateLog(constant.LogFileName) - fmt.Println("start push rpc server, port: ", *rpcPort) + fmt.Println("start push rpc server, port: ", *rpcPort, "\n") logic.Init(*rpcPort) logic.Run(*prometheusPort) wg.Wait() diff --git a/cmd/rpc/open_im_admin_cms/main.go b/cmd/rpc/open_im_admin_cms/main.go index 57c73713b..1f2dfb51c 100644 --- a/cmd/rpc/open_im_admin_cms/main.go +++ b/cmd/rpc/open_im_admin_cms/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.AdminCmsPrometheusPort[0], "adminCMSPrometheusPort default listen port") flag.Parse() - fmt.Println("start cms rpc server, port: ", *rpcPort) + fmt.Println("start cms rpc server, port: ", *rpcPort, "\n") rpcServer := rpcMessageCMS.NewAdminCMSServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_auth/main.go b/cmd/rpc/open_im_auth/main.go index 113f1c646..063cda4a1 100644 --- a/cmd/rpc/open_im_auth/main.go +++ b/cmd/rpc/open_im_auth/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcToken default listen port 10800") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.AuthPrometheusPort[0], "authPrometheusPort default listen port") flag.Parse() - fmt.Println("start auth rpc server, port: ", *rpcPort) + fmt.Println("start auth rpc server, port: ", *rpcPort, "\n") rpcServer := rpcAuth.NewRpcAuthServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_cache/main.go b/cmd/rpc/open_im_cache/main.go index 002d71bdf..185e8fac1 100644 --- a/cmd/rpc/open_im_cache/main.go +++ b/cmd/rpc/open_im_cache/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcToken default listen port 10800") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.CachePrometheusPort[0], "cachePrometheusPort default listen port") flag.Parse() - fmt.Println("start cache rpc server, port: ", *rpcPort) + fmt.Println("start cache rpc server, port: ", *rpcPort, "\n") rpcServer := rpcCache.NewCacheServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_conversation/main.go b/cmd/rpc/open_im_conversation/main.go index 0980c7a96..268aa5ed9 100644 --- a/cmd/rpc/open_im_conversation/main.go +++ b/cmd/rpc/open_im_conversation/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcConversation default listen port 11300") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.ConversationPrometheusPort[0], "conversationPrometheusPort default listen port") flag.Parse() - fmt.Println("start conversation rpc server, port: ", *rpcPort) + fmt.Println("start conversation rpc server, port: ", *rpcPort, "\n") rpcServer := rpcConversation.NewRpcConversationServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_friend/main.go b/cmd/rpc/open_im_friend/main.go index b8ad67aba..489b8541d 100644 --- a/cmd/rpc/open_im_friend/main.go +++ b/cmd/rpc/open_im_friend/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcFriendPort from cmd,default 12000 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.FriendPrometheusPort[0], "friendPrometheusPort default listen port") flag.Parse() - fmt.Println("start friend rpc server, port: ", *rpcPort) + fmt.Println("start friend rpc server, port: ", *rpcPort, "\n") rpcServer := friend.NewFriendServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_group/main.go b/cmd/rpc/open_im_group/main.go index 3961b93d0..8e32f48ab 100644 --- a/cmd/rpc/open_im_group/main.go +++ b/cmd/rpc/open_im_group/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcGroupPort from cmd,default 16000 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.GroupPrometheusPort[0], "groupPrometheusPort default listen port") flag.Parse() - fmt.Println("start group rpc server, port: ", *rpcPort) + fmt.Println("start group rpc server, port: ", *rpcPort, "\n") rpcServer := group.NewGroupServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_msg/main.go b/cmd/rpc/open_im_msg/main.go index e198adac3..34294e546 100644 --- a/cmd/rpc/open_im_msg/main.go +++ b/cmd/rpc/open_im_msg/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessagePrometheusPort[0], "msgPrometheusPort default listen port") flag.Parse() - fmt.Println("start msg rpc server, port: ", *rpcPort) + fmt.Println("start msg rpc server, port: ", *rpcPort, "\n") rpcServer := msg.NewRpcChatServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_office/main.go b/cmd/rpc/open_im_office/main.go index 0597a53de..369328319 100644 --- a/cmd/rpc/open_im_office/main.go +++ b/cmd/rpc/open_im_office/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.OfficePrometheusPort[0], "officePrometheusPort default listen port") flag.Parse() - fmt.Println("start office rpc server, port: ", *rpcPort) + fmt.Println("start office rpc server, port: ", *rpcPort, "\n") rpcServer := rpc.NewOfficeServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_organization/main.go b/cmd/rpc/open_im_organization/main.go index 66d817eac..3b748c010 100644 --- a/cmd/rpc/open_im_organization/main.go +++ b/cmd/rpc/open_im_organization/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcOrganizationPort from cmd,default 11200 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.OrganizationPrometheusPort[0], "organizationPrometheusPort default listen port") flag.Parse() - fmt.Println("start organization rpc server, port: ", *rpcPort) + fmt.Println("start organization rpc server, port: ", *rpcPort, "\n") rpcServer := organization.NewServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_user/main.go b/cmd/rpc/open_im_user/main.go index 7895894dc..61fc25790 100644 --- a/cmd/rpc/open_im_user/main.go +++ b/cmd/rpc/open_im_user/main.go @@ -13,7 +13,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.UserPrometheusPort[0], "userPrometheusPort default listen port") flag.Parse() - fmt.Println("start user rpc server, port: ", *rpcPort) + fmt.Println("start user rpc server, port: ", *rpcPort, "\n") rpcServer := user.NewUserServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) From 285cb346b925780d67c9271a55f5d86b064a6f4b Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 14:52:14 +0800 Subject: [PATCH 17/23] log --- pkg/utils/get_server_ip.go | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkg/utils/get_server_ip.go b/pkg/utils/get_server_ip.go index 63156f26f..b8056af9d 100644 --- a/pkg/utils/get_server_ip.go +++ b/pkg/utils/get_server_ip.go @@ -2,7 +2,6 @@ package utils import ( "errors" - "fmt" "net" ) @@ -11,14 +10,12 @@ var ServerIP = "" func GetLocalIP() (string, error) { addrs, err := net.InterfaceAddrs() if err != nil { - return "", err } for _, address := range addrs { if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() { if ipnet.IP.To4() != nil { - fmt.Println(ipnet.IP.String()) return ipnet.IP.String(), nil } } From e7ab59a9328f6f4a2f4df5218db38f38cf601ad8 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 15:24:56 +0800 Subject: [PATCH 18/23] log --- cmd/open_im_api/main.go | 2 +- cmd/open_im_cms_api/main.go | 3 ++- cmd/open_im_demo/main.go | 2 +- cmd/open_im_msg_gateway/main.go | 2 +- cmd/open_im_msg_transfer/main.go | 2 +- cmd/open_im_push/main.go | 2 +- cmd/rpc/open_im_admin_cms/main.go | 3 ++- cmd/rpc/open_im_auth/main.go | 3 ++- cmd/rpc/open_im_cache/main.go | 3 ++- cmd/rpc/open_im_conversation/main.go | 3 ++- cmd/rpc/open_im_friend/main.go | 3 ++- cmd/rpc/open_im_group/main.go | 3 ++- cmd/rpc/open_im_msg/main.go | 3 ++- cmd/rpc/open_im_office/main.go | 3 ++- cmd/rpc/open_im_organization/main.go | 3 ++- cmd/rpc/open_im_user/main.go | 3 ++- pkg/common/constant/constant.go | 2 ++ 17 files changed, 29 insertions(+), 16 deletions(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 38889574b..b13fc5d68 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -226,7 +226,7 @@ func main() { if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } - fmt.Println("start api server, address: ", address, "\n") + fmt.Println("start api server, address: ", address, "version: ", constant.CurrentVersion, "\n") err := r.Run(address) if err != nil { log.Error("", "api run failed ", address, err.Error()) diff --git a/cmd/open_im_cms_api/main.go b/cmd/open_im_cms_api/main.go index deaebc196..3cc52c75d 100644 --- a/cmd/open_im_cms_api/main.go +++ b/cmd/open_im_cms_api/main.go @@ -2,6 +2,7 @@ package main import ( "Open_IM/internal/cms_api" + "Open_IM/pkg/common/constant" "Open_IM/pkg/utils" "flag" "fmt" @@ -24,6 +25,6 @@ func main() { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } address = config.Config.CmsApi.ListenIP + ":" + strconv.Itoa(*ginPort) - fmt.Println("start cms api server, address: ", address, "\n") + fmt.Println("start cms api server, address: ", address, "version: ", constant.CurrentVersion, "\n") router.Run(address) } diff --git a/cmd/open_im_demo/main.go b/cmd/open_im_demo/main.go index 703a9a74d..30dfca176 100644 --- a/cmd/open_im_demo/main.go +++ b/cmd/open_im_demo/main.go @@ -71,7 +71,7 @@ func main() { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } address = config.Config.CmsApi.ListenIP + ":" + strconv.Itoa(*ginPort) - fmt.Println("start demo api server address: ", address, "\n") + fmt.Println("start demo api server address: ", address, "version: ", constant.CurrentVersion, "\n") go register.OnboardingProcessRoutine() go register.ImportFriendRoutine() err := r.Run(address) diff --git a/cmd/open_im_msg_gateway/main.go b/cmd/open_im_msg_gateway/main.go index cc6621ffc..f61f105a9 100644 --- a/cmd/open_im_msg_gateway/main.go +++ b/cmd/open_im_msg_gateway/main.go @@ -21,7 +21,7 @@ func main() { flag.Parse() var wg sync.WaitGroup wg.Add(1) - fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, "\n") + fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, "version: ", constant.CurrentVersion, "\n") gate.Init(*rpcPort, *wsPort) gate.Run(*prometheusPort) wg.Wait() diff --git a/cmd/open_im_msg_transfer/main.go b/cmd/open_im_msg_transfer/main.go index 4b501406e..b7e7cb88f 100644 --- a/cmd/open_im_msg_transfer/main.go +++ b/cmd/open_im_msg_transfer/main.go @@ -17,7 +17,7 @@ func main() { flag.Parse() log.NewPrivateLog(constant.LogFileName) logic.Init() - fmt.Println("start msg_transfer server \n") + fmt.Println("start msg_transfer server ", "version: ", constant.CurrentVersion, "\n") logic.Run(*prometheusPort) wg.Wait() } diff --git a/cmd/open_im_push/main.go b/cmd/open_im_push/main.go index 09ffde048..c7b1cfe37 100644 --- a/cmd/open_im_push/main.go +++ b/cmd/open_im_push/main.go @@ -18,7 +18,7 @@ func main() { var wg sync.WaitGroup wg.Add(1) log.NewPrivateLog(constant.LogFileName) - fmt.Println("start push rpc server, port: ", *rpcPort, "\n") + fmt.Println("start push rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") logic.Init(*rpcPort) logic.Run(*prometheusPort) wg.Wait() diff --git a/cmd/rpc/open_im_admin_cms/main.go b/cmd/rpc/open_im_admin_cms/main.go index 1f2dfb51c..22f775939 100644 --- a/cmd/rpc/open_im_admin_cms/main.go +++ b/cmd/rpc/open_im_admin_cms/main.go @@ -3,6 +3,7 @@ package main import ( rpcMessageCMS "Open_IM/internal/rpc/admin_cms" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.AdminCmsPrometheusPort[0], "adminCMSPrometheusPort default listen port") flag.Parse() - fmt.Println("start cms rpc server, port: ", *rpcPort, "\n") + fmt.Println("start cms rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := rpcMessageCMS.NewAdminCMSServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_auth/main.go b/cmd/rpc/open_im_auth/main.go index 063cda4a1..0255516b5 100644 --- a/cmd/rpc/open_im_auth/main.go +++ b/cmd/rpc/open_im_auth/main.go @@ -3,6 +3,7 @@ package main import ( rpcAuth "Open_IM/internal/rpc/auth" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcToken default listen port 10800") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.AuthPrometheusPort[0], "authPrometheusPort default listen port") flag.Parse() - fmt.Println("start auth rpc server, port: ", *rpcPort, "\n") + fmt.Println("start auth rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := rpcAuth.NewRpcAuthServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_cache/main.go b/cmd/rpc/open_im_cache/main.go index 185e8fac1..c685a0a2c 100644 --- a/cmd/rpc/open_im_cache/main.go +++ b/cmd/rpc/open_im_cache/main.go @@ -3,6 +3,7 @@ package main import ( rpcCache "Open_IM/internal/rpc/cache" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" @@ -14,7 +15,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcToken default listen port 10800") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.CachePrometheusPort[0], "cachePrometheusPort default listen port") flag.Parse() - fmt.Println("start cache rpc server, port: ", *rpcPort, "\n") + fmt.Println("start cache rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := rpcCache.NewCacheServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_conversation/main.go b/cmd/rpc/open_im_conversation/main.go index 268aa5ed9..3f3e3fdcc 100644 --- a/cmd/rpc/open_im_conversation/main.go +++ b/cmd/rpc/open_im_conversation/main.go @@ -3,6 +3,7 @@ package main import ( rpcConversation "Open_IM/internal/rpc/conversation" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcConversation default listen port 11300") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.ConversationPrometheusPort[0], "conversationPrometheusPort default listen port") flag.Parse() - fmt.Println("start conversation rpc server, port: ", *rpcPort, "\n") + fmt.Println("start conversation rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := rpcConversation.NewRpcConversationServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_friend/main.go b/cmd/rpc/open_im_friend/main.go index 489b8541d..176cb861d 100644 --- a/cmd/rpc/open_im_friend/main.go +++ b/cmd/rpc/open_im_friend/main.go @@ -3,6 +3,7 @@ package main import ( "Open_IM/internal/rpc/friend" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcFriendPort from cmd,default 12000 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.FriendPrometheusPort[0], "friendPrometheusPort default listen port") flag.Parse() - fmt.Println("start friend rpc server, port: ", *rpcPort, "\n") + fmt.Println("start friend rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := friend.NewFriendServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_group/main.go b/cmd/rpc/open_im_group/main.go index 8e32f48ab..b5e6cc2af 100644 --- a/cmd/rpc/open_im_group/main.go +++ b/cmd/rpc/open_im_group/main.go @@ -3,6 +3,7 @@ package main import ( "Open_IM/internal/rpc/group" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcGroupPort from cmd,default 16000 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.GroupPrometheusPort[0], "groupPrometheusPort default listen port") flag.Parse() - fmt.Println("start group rpc server, port: ", *rpcPort, "\n") + fmt.Println("start group rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := group.NewGroupServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_msg/main.go b/cmd/rpc/open_im_msg/main.go index 34294e546..3d92b615e 100644 --- a/cmd/rpc/open_im_msg/main.go +++ b/cmd/rpc/open_im_msg/main.go @@ -3,6 +3,7 @@ package main import ( "Open_IM/internal/rpc/msg" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessagePrometheusPort[0], "msgPrometheusPort default listen port") flag.Parse() - fmt.Println("start msg rpc server, port: ", *rpcPort, "\n") + fmt.Println("start msg rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := msg.NewRpcChatServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_office/main.go b/cmd/rpc/open_im_office/main.go index 369328319..5effa31cd 100644 --- a/cmd/rpc/open_im_office/main.go +++ b/cmd/rpc/open_im_office/main.go @@ -3,6 +3,7 @@ package main import ( rpc "Open_IM/internal/rpc/office" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.OfficePrometheusPort[0], "officePrometheusPort default listen port") flag.Parse() - fmt.Println("start office rpc server, port: ", *rpcPort, "\n") + fmt.Println("start office rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := rpc.NewOfficeServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_organization/main.go b/cmd/rpc/open_im_organization/main.go index 3b748c010..dc88a75ad 100644 --- a/cmd/rpc/open_im_organization/main.go +++ b/cmd/rpc/open_im_organization/main.go @@ -3,6 +3,7 @@ package main import ( "Open_IM/internal/rpc/organization" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcOrganizationPort from cmd,default 11200 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.OrganizationPrometheusPort[0], "organizationPrometheusPort default listen port") flag.Parse() - fmt.Println("start organization rpc server, port: ", *rpcPort, "\n") + fmt.Println("start organization rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := organization.NewServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_user/main.go b/cmd/rpc/open_im_user/main.go index 61fc25790..cdfa05a59 100644 --- a/cmd/rpc/open_im_user/main.go +++ b/cmd/rpc/open_im_user/main.go @@ -3,6 +3,7 @@ package main import ( "Open_IM/internal/rpc/user" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" promePkg "Open_IM/pkg/common/prometheus" "flag" "fmt" @@ -13,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.UserPrometheusPort[0], "userPrometheusPort default listen port") flag.Parse() - fmt.Println("start user rpc server, port: ", *rpcPort, "\n") + fmt.Println("start user rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") rpcServer := user.NewUserServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index ecc53ea26..3642b31c3 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -336,3 +336,5 @@ const LogFileName = "OpenIM.log" const StatisticsTimeInterval = 60 const MaxNotificationNum = 100 + +const CurrentVersion = "v2.3.3" From 398be73f5b919f4fcc81ef3aaa730330170e5cf6 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 15:34:09 +0800 Subject: [PATCH 19/23] log --- cmd/open_im_api/main.go | 2 +- cmd/open_im_cms_api/main.go | 2 +- cmd/open_im_demo/main.go | 2 +- cmd/open_im_msg_gateway/main.go | 2 +- cmd/open_im_msg_transfer/main.go | 2 +- cmd/open_im_push/main.go | 2 +- cmd/rpc/open_im_admin_cms/main.go | 2 +- cmd/rpc/open_im_auth/main.go | 2 +- cmd/rpc/open_im_cache/main.go | 2 +- cmd/rpc/open_im_conversation/main.go | 2 +- cmd/rpc/open_im_friend/main.go | 2 +- cmd/rpc/open_im_group/main.go | 2 +- cmd/rpc/open_im_msg/main.go | 2 +- cmd/rpc/open_im_office/main.go | 2 +- cmd/rpc/open_im_organization/main.go | 2 +- cmd/rpc/open_im_user/main.go | 2 +- internal/cms_api/admin/admin.go | 2 ++ 17 files changed, 18 insertions(+), 16 deletions(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index b13fc5d68..fb192cbf7 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -226,7 +226,7 @@ func main() { if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } - fmt.Println("start api server, address: ", address, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start api server, address: ", address, "OpenIM version: ", constant.CurrentVersion, "\n") err := r.Run(address) if err != nil { log.Error("", "api run failed ", address, err.Error()) diff --git a/cmd/open_im_cms_api/main.go b/cmd/open_im_cms_api/main.go index 3cc52c75d..94c662b0b 100644 --- a/cmd/open_im_cms_api/main.go +++ b/cmd/open_im_cms_api/main.go @@ -25,6 +25,6 @@ func main() { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } address = config.Config.CmsApi.ListenIP + ":" + strconv.Itoa(*ginPort) - fmt.Println("start cms api server, address: ", address, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start cms api server, address: ", address, "OpenIM version: ", constant.CurrentVersion, "\n") router.Run(address) } diff --git a/cmd/open_im_demo/main.go b/cmd/open_im_demo/main.go index 30dfca176..0e2dbaea6 100644 --- a/cmd/open_im_demo/main.go +++ b/cmd/open_im_demo/main.go @@ -71,7 +71,7 @@ func main() { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } address = config.Config.CmsApi.ListenIP + ":" + strconv.Itoa(*ginPort) - fmt.Println("start demo api server address: ", address, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start demo api server address: ", address, "OpenIM version: ", constant.CurrentVersion, "\n") go register.OnboardingProcessRoutine() go register.ImportFriendRoutine() err := r.Run(address) diff --git a/cmd/open_im_msg_gateway/main.go b/cmd/open_im_msg_gateway/main.go index f61f105a9..44f55ce19 100644 --- a/cmd/open_im_msg_gateway/main.go +++ b/cmd/open_im_msg_gateway/main.go @@ -21,7 +21,7 @@ func main() { flag.Parse() var wg sync.WaitGroup wg.Add(1) - fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, "OpenIM version: ", constant.CurrentVersion, "\n") gate.Init(*rpcPort, *wsPort) gate.Run(*prometheusPort) wg.Wait() diff --git a/cmd/open_im_msg_transfer/main.go b/cmd/open_im_msg_transfer/main.go index b7e7cb88f..b11fa5a1a 100644 --- a/cmd/open_im_msg_transfer/main.go +++ b/cmd/open_im_msg_transfer/main.go @@ -17,7 +17,7 @@ func main() { flag.Parse() log.NewPrivateLog(constant.LogFileName) logic.Init() - fmt.Println("start msg_transfer server ", "version: ", constant.CurrentVersion, "\n") + fmt.Println("start msg_transfer server ", "OpenIM version: ", constant.CurrentVersion, "\n") logic.Run(*prometheusPort) wg.Wait() } diff --git a/cmd/open_im_push/main.go b/cmd/open_im_push/main.go index c7b1cfe37..b14581690 100644 --- a/cmd/open_im_push/main.go +++ b/cmd/open_im_push/main.go @@ -18,7 +18,7 @@ func main() { var wg sync.WaitGroup wg.Add(1) log.NewPrivateLog(constant.LogFileName) - fmt.Println("start push rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start push rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") logic.Init(*rpcPort) logic.Run(*prometheusPort) wg.Wait() diff --git a/cmd/rpc/open_im_admin_cms/main.go b/cmd/rpc/open_im_admin_cms/main.go index 22f775939..f35b71300 100644 --- a/cmd/rpc/open_im_admin_cms/main.go +++ b/cmd/rpc/open_im_admin_cms/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.AdminCmsPrometheusPort[0], "adminCMSPrometheusPort default listen port") flag.Parse() - fmt.Println("start cms rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start cms rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := rpcMessageCMS.NewAdminCMSServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_auth/main.go b/cmd/rpc/open_im_auth/main.go index 0255516b5..56f2df0df 100644 --- a/cmd/rpc/open_im_auth/main.go +++ b/cmd/rpc/open_im_auth/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcToken default listen port 10800") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.AuthPrometheusPort[0], "authPrometheusPort default listen port") flag.Parse() - fmt.Println("start auth rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start auth rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := rpcAuth.NewRpcAuthServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_cache/main.go b/cmd/rpc/open_im_cache/main.go index c685a0a2c..7df5d80f7 100644 --- a/cmd/rpc/open_im_cache/main.go +++ b/cmd/rpc/open_im_cache/main.go @@ -15,7 +15,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcToken default listen port 10800") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.CachePrometheusPort[0], "cachePrometheusPort default listen port") flag.Parse() - fmt.Println("start cache rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start cache rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := rpcCache.NewCacheServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_conversation/main.go b/cmd/rpc/open_im_conversation/main.go index 3f3e3fdcc..f3c746ade 100644 --- a/cmd/rpc/open_im_conversation/main.go +++ b/cmd/rpc/open_im_conversation/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "RpcConversation default listen port 11300") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.ConversationPrometheusPort[0], "conversationPrometheusPort default listen port") flag.Parse() - fmt.Println("start conversation rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start conversation rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := rpcConversation.NewRpcConversationServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_friend/main.go b/cmd/rpc/open_im_friend/main.go index 176cb861d..ae5ae0090 100644 --- a/cmd/rpc/open_im_friend/main.go +++ b/cmd/rpc/open_im_friend/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcFriendPort from cmd,default 12000 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.FriendPrometheusPort[0], "friendPrometheusPort default listen port") flag.Parse() - fmt.Println("start friend rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start friend rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := friend.NewFriendServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_group/main.go b/cmd/rpc/open_im_group/main.go index b5e6cc2af..42b7f1f5c 100644 --- a/cmd/rpc/open_im_group/main.go +++ b/cmd/rpc/open_im_group/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcGroupPort from cmd,default 16000 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.GroupPrometheusPort[0], "groupPrometheusPort default listen port") flag.Parse() - fmt.Println("start group rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start group rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := group.NewGroupServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_msg/main.go b/cmd/rpc/open_im_msg/main.go index 3d92b615e..a9d87a7ba 100644 --- a/cmd/rpc/open_im_msg/main.go +++ b/cmd/rpc/open_im_msg/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessagePrometheusPort[0], "msgPrometheusPort default listen port") flag.Parse() - fmt.Println("start msg rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start msg rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := msg.NewRpcChatServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_office/main.go b/cmd/rpc/open_im_office/main.go index 5effa31cd..0af5444d6 100644 --- a/cmd/rpc/open_im_office/main.go +++ b/cmd/rpc/open_im_office/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.OfficePrometheusPort[0], "officePrometheusPort default listen port") flag.Parse() - fmt.Println("start office rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start office rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := rpc.NewOfficeServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_organization/main.go b/cmd/rpc/open_im_organization/main.go index dc88a75ad..5dc27ccd5 100644 --- a/cmd/rpc/open_im_organization/main.go +++ b/cmd/rpc/open_im_organization/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "get RpcOrganizationPort from cmd,default 11200 as port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.OrganizationPrometheusPort[0], "organizationPrometheusPort default listen port") flag.Parse() - fmt.Println("start organization rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start organization rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := organization.NewServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/cmd/rpc/open_im_user/main.go b/cmd/rpc/open_im_user/main.go index cdfa05a59..3e64ac805 100644 --- a/cmd/rpc/open_im_user/main.go +++ b/cmd/rpc/open_im_user/main.go @@ -14,7 +14,7 @@ func main() { rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.UserPrometheusPort[0], "userPrometheusPort default listen port") flag.Parse() - fmt.Println("start user rpc server, port: ", *rpcPort, "version: ", constant.CurrentVersion, "\n") + fmt.Println("start user rpc server, port: ", *rpcPort, "OpenIM version: ", constant.CurrentVersion, "\n") rpcServer := user.NewUserServer(*rpcPort) go func() { err := promePkg.StartPromeSrv(*prometheusPort) diff --git a/internal/cms_api/admin/admin.go b/internal/cms_api/admin/admin.go index 7d4c450fb..2c98502da 100644 --- a/internal/cms_api/admin/admin.go +++ b/internal/cms_api/admin/admin.go @@ -3,6 +3,7 @@ package admin import ( apiStruct "Open_IM/pkg/cms_api_struct" "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/log" "Open_IM/pkg/grpc-etcdv3/getcdv3" pbAdmin "Open_IM/pkg/proto/admin_cms" @@ -25,6 +26,7 @@ var ( ) func init() { + log.NewPrivateLog(constant.LogFileName) operationID := utils.OperationIDGenerator() log.NewInfo(operationID, utils.GetSelfFuncName(), "minio config: ", config.Config.Credential.Minio) var initUrl string From 46d3dd409a964815cfce9a3284a19b3571e5e8bf Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 16:29:22 +0800 Subject: [PATCH 20/23] log --- pkg/common/db/mysql.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkg/common/db/mysql.go b/pkg/common/db/mysql.go index d43ce736d..0095ba3b0 100644 --- a/pkg/common/db/mysql.go +++ b/pkg/common/db/mysql.go @@ -31,13 +31,13 @@ func initMysqlDB() { var err1 error db, err := gorm.Open(mysql.Open(dsn), nil) if err != nil { - fmt.Println("0", "Open failed ", err.Error(), dsn) + fmt.Println("Open failed ", err.Error(), dsn) } if err != nil { time.Sleep(time.Duration(30) * time.Second) db, err1 = gorm.Open(mysql.Open(dsn), nil) if err1 != nil { - fmt.Println("0", "Open failed ", err1.Error(), dsn) + fmt.Println("Open failed ", err1.Error(), dsn) panic(err1.Error()) } } @@ -46,10 +46,10 @@ func initMysqlDB() { sql := fmt.Sprintf("CREATE DATABASE IF NOT EXISTS %s default charset utf8 COLLATE utf8_general_ci;", config.Config.Mysql.DBDatabaseName) err = db.Exec(sql).Error if err != nil { - fmt.Println("0", "Exec failed ", err.Error(), sql) + fmt.Println("Exec failed ", err.Error(), sql) panic(err.Error()) } - fmt.Println(sql) + dsn = fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&parseTime=true&loc=Local", config.Config.Mysql.DBUserName, config.Config.Mysql.DBPassword, config.Config.Mysql.DBAddress[0], config.Config.Mysql.DBDatabaseName) @@ -66,20 +66,20 @@ func initMysqlDB() { Logger: newLogger, }) if err != nil { - fmt.Println("0", "Open failed ", err.Error(), dsn) + fmt.Println("Open failed ", err.Error(), dsn) panic(err.Error()) } - fmt.Println("init db2", db) + sqlDB, err := db.DB() if err != nil { panic(err.Error()) } - fmt.Println("init sqlDB", sqlDB) + sqlDB.SetConnMaxLifetime(time.Second * time.Duration(config.Config.Mysql.DBMaxLifeTime)) sqlDB.SetMaxOpenConns(config.Config.Mysql.DBMaxOpenConns) sqlDB.SetMaxIdleConns(config.Config.Mysql.DBMaxIdleConns) - fmt.Println("open db ok ", dsn) + fmt.Println("open mysql ok ", dsn) db.AutoMigrate( &Register{}, &Friend{}, From 939eb95cdcb56eca921068a9c38dfb1854e1ee65 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Wed, 14 Sep 2022 16:39:03 +0800 Subject: [PATCH 21/23] log --- pkg/common/db/mysql.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/common/db/mysql.go b/pkg/common/db/mysql.go index 0095ba3b0..e046354c5 100644 --- a/pkg/common/db/mysql.go +++ b/pkg/common/db/mysql.go @@ -41,15 +41,16 @@ func initMysqlDB() { panic(err1.Error()) } } - fmt.Println("init db", db) + //Check the database and table during initialization sql := fmt.Sprintf("CREATE DATABASE IF NOT EXISTS %s default charset utf8 COLLATE utf8_general_ci;", config.Config.Mysql.DBDatabaseName) + fmt.Println("exec sql: ", sql, " begin") err = db.Exec(sql).Error if err != nil { fmt.Println("Exec failed ", err.Error(), sql) panic(err.Error()) } - + fmt.Println("exec sql: ", sql, " end") dsn = fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&parseTime=true&loc=Local", config.Config.Mysql.DBUserName, config.Config.Mysql.DBPassword, config.Config.Mysql.DBAddress[0], config.Config.Mysql.DBDatabaseName) From d534f026b0df4d5645a6914ad870c5064647a9ef Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Wed, 14 Sep 2022 17:45:38 +0800 Subject: [PATCH 22/23] promethues --- cmd/open_im_api/main.go | 3 ++- config/config.yaml | 2 ++ docker-compose.yaml | 6 +++--- internal/cms_api/router.go | 3 ++- internal/rpc/auth/auth.go | 25 +++++++++++++++++++++++++ internal/rpc/msg/rpcChat.go | 24 +++++++++++++++++++++++- internal/rpc/msg/send_msg.go | 4 +++- pkg/common/config/config.go | 2 ++ pkg/common/db/mysql.go | 8 ++++---- pkg/common/prometheus/prometheus.go | 7 +++++++ 10 files changed, 73 insertions(+), 11 deletions(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 38889574b..e9e253338 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -46,7 +46,8 @@ func main() { f, _ := os.Create("../logs/api.log") gin.DefaultWriter = io.MultiWriter(f) // gin.SetMode(gin.DebugMode) - r := gin.Default() + r := gin.New() + r.Use(gin.Recovery()) r.Use(utils.CorsHandler()) log.Info("load config: ", config.Config) r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) diff --git a/config/config.yaml b/config/config.yaml index d277b6442..2224e914f 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -20,6 +20,8 @@ mysql: dbMaxOpenConns: 100 dbMaxIdleConns: 10 dbMaxLifeTime: 5 + logLevel: 1 #1=slient 2=error 3=warn 4=info + slowThreshold: 500 mongo: dbUri: ""#当dbUri值不为空则直接使用该值 diff --git a/docker-compose.yaml b/docker-compose.yaml index 81697ebb6..8a903890a 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -153,11 +153,11 @@ services: grafana: image: grafana/grafana volumes: - # - ./grafana/dashboards/dashboard.json:/var/lib/grafana/dashboards/dashboard.json - # - ./grafana/provisioning/dashboard.yaml:/etc/grafana/provisioning/dashboards/dashboard.yaml - ./docker-compose_cfg/datasource-compose.yaml:/etc/grafana/provisioning/datasources/datasource.yaml - ./docker-compose_cfg/grafana.ini:/etc/grafana/grafana.ini - - ./docker-compose_cfg/node-exporter-full_rev1.json:/var/lib/grafana/dashboards/node-exporter-full_rev1.json + # - ./docker-compose_cfg/node-exporter-full_rev1.json:/var/lib/grafana/dashboards/node-exporter-full_rev1.json + # - ./components/grafana:/var/lib/grafana + - ./docker-compose_cfg/grafana.db:/var/lib/grafana/grafana.db container_name: grafana ports: - 10007:10007 diff --git a/internal/cms_api/router.go b/internal/cms_api/router.go index 69e3357d0..4047a46d3 100644 --- a/internal/cms_api/router.go +++ b/internal/cms_api/router.go @@ -18,7 +18,8 @@ import ( func NewGinRouter() *gin.Engine { gin.SetMode(gin.ReleaseMode) - baseRouter := gin.Default() + baseRouter := gin.New() + baseRouter.Use() if config.Config.Prometheus.Enable { baseRouter.GET("/metrics", promePkg.PrometheusHandler()) } diff --git a/internal/rpc/auth/auth.go b/internal/rpc/auth/auth.go index a9ab75569..0947cb4f9 100644 --- a/internal/rpc/auth/auth.go +++ b/internal/rpc/auth/auth.go @@ -5,6 +5,7 @@ import ( "Open_IM/pkg/common/db" imdb "Open_IM/pkg/common/db/mysql_model/im_mysql_model" "Open_IM/pkg/common/log" + promePkg "Open_IM/pkg/common/prometheus" "Open_IM/pkg/common/token_verify" "Open_IM/pkg/grpc-etcdv3/getcdv3" pbAuth "Open_IM/pkg/proto/auth" @@ -16,11 +17,30 @@ import ( "strconv" "strings" + "github.com/prometheus/client_golang/prometheus" + "github.com/prometheus/client_golang/prometheus/promauto" + "Open_IM/pkg/common/config" "google.golang.org/grpc" ) +var ( + userLoginCounter prometheus.Counter + userRegisterCounter prometheus.Counter +) + +func (rpc *rpcAuth) initPrometheus() { + userLoginCounter = promauto.NewCounter(prometheus.CounterOpts{ + Name: "user_login", + Help: "The number of user login", + }) + userRegisterCounter = promauto.NewCounter(prometheus.CounterOpts{ + Name: "user_register", + Help: "The number of user register", + }) +} + func (rpc *rpcAuth) UserRegister(_ context.Context, req *pbAuth.UserRegisterReq) (*pbAuth.UserRegisterResp, error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " rpc args ", req.String()) var user db.User @@ -35,6 +55,7 @@ func (rpc *rpcAuth) UserRegister(_ context.Context, req *pbAuth.UserRegisterReq) log.NewError(req.OperationID, errMsg, user) return &pbAuth.UserRegisterResp{CommonResp: &pbAuth.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: errMsg}}, nil } + promePkg.PromeInc(userRegisterCounter) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " rpc return ", pbAuth.UserRegisterResp{CommonResp: &pbAuth.CommonResp{}}) return &pbAuth.UserRegisterResp{CommonResp: &pbAuth.CommonResp{}}, nil } @@ -47,6 +68,7 @@ func (rpc *rpcAuth) UserToken(_ context.Context, req *pbAuth.UserTokenReq) (*pbA log.NewError(req.OperationID, errMsg) return &pbAuth.UserTokenResp{CommonResp: &pbAuth.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: errMsg}}, nil } + promePkg.PromeInc(userLoginCounter) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " rpc return ", pbAuth.UserTokenResp{CommonResp: &pbAuth.CommonResp{}, Token: tokens, ExpiredTime: expTime}) return &pbAuth.UserTokenResp{CommonResp: &pbAuth.CommonResp{}, Token: tokens, ExpiredTime: expTime}, nil } @@ -141,6 +163,9 @@ func (rpc *rpcAuth) Run() { } log.NewInfo(operationID, "RegisterAuthServer ok ", rpc.etcdSchema, strings.Join(rpc.etcdAddr, ","), rpcRegisterIP, rpc.rpcPort, rpc.rpcRegisterName) + if config.Config.Prometheus.Enable { + rpc.initPrometheus() + } err = srv.Serve(listener) if err != nil { log.NewError(operationID, "Serve failed ", err.Error()) diff --git a/internal/rpc/msg/rpcChat.go b/internal/rpc/msg/rpcChat.go index fde8536be..2c4c6270c 100644 --- a/internal/rpc/msg/rpcChat.go +++ b/internal/rpc/msg/rpcChat.go @@ -9,10 +9,18 @@ import ( "Open_IM/pkg/grpc-etcdv3/getcdv3" "Open_IM/pkg/proto/msg" "Open_IM/pkg/utils" - "google.golang.org/grpc" "net" "strconv" "strings" + + "github.com/prometheus/client_golang/prometheus" + "github.com/prometheus/client_golang/prometheus/promauto" + "google.golang.org/grpc" +) + +var ( + sendMsgSuccessCounter prometheus.Counter + sendMsgFailedCounter prometheus.Counter ) type rpcChat struct { @@ -46,6 +54,17 @@ func NewRpcChatServer(port int) *rpcChat { return &rc } +func (rpc *rpcChat) initPrometheus() { + sendMsgSuccessCounter = promauto.NewCounter(prometheus.CounterOpts{ + Name: "send_msg_success", + Help: "The number of send msg success", + }) + sendMsgFailedCounter = promauto.NewCounter(prometheus.CounterOpts{ + Name: "send_msg_failed", + Help: "The number of send msg failed", + }) +} + func (rpc *rpcChat) Run() { log.Info("", "rpcChat init...") listenIP := "" @@ -78,6 +97,9 @@ func (rpc *rpcChat) Run() { panic(utils.Wrap(err, "register chat module rpc to etcd err")) } go rpc.runCh() + if config.Config.Prometheus.Enable { + rpc.initPrometheus() + } err = srv.Serve(listener) if err != nil { log.Error("", "rpc rpcChat failed ", err.Error()) diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index 02d8a163e..876f2cda7 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -30,7 +30,9 @@ import ( //When the number of group members is greater than this value,Online users will be sent first,Guaranteed service availability const GroupMemberNum = 500 -var ExcludeContentType = []int{constant.HasReadReceipt, constant.GroupHasReadReceipt} +var ( + ExcludeContentType = []int{constant.HasReadReceipt, constant.GroupHasReadReceipt} +) type MsgCallBackReq struct { SendID string `json:"sendID"` diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index 730d7c0f5..56cc66bb7 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -99,6 +99,8 @@ type config struct { DBMaxOpenConns int `yaml:"dbMaxOpenConns"` DBMaxIdleConns int `yaml:"dbMaxIdleConns"` DBMaxLifeTime int `yaml:"dbMaxLifeTime"` + LogLevel int `yaml:"logLevel"` + SlowThreshold int `yaml:"slowThreshold"` } Mongo struct { DBUri string `yaml:"dbUri"` diff --git a/pkg/common/db/mysql.go b/pkg/common/db/mysql.go index d43ce736d..72641e37d 100644 --- a/pkg/common/db/mysql.go +++ b/pkg/common/db/mysql.go @@ -56,10 +56,10 @@ func initMysqlDB() { newLogger := logger.New( Writer{}, logger.Config{ - SlowThreshold: 200 * time.Millisecond, // Slow SQL threshold - LogLevel: logger.Warn, // Log level - IgnoreRecordNotFoundError: true, // Ignore ErrRecordNotFound error for logger - Colorful: true, // Disable color + SlowThreshold: time.Duration(config.Config.Mysql.SlowThreshold) * time.Millisecond, // Slow SQL threshold + LogLevel: logger.LogLevel(config.Config.Mysql.LogLevel), // Log level + IgnoreRecordNotFoundError: true, // Ignore ErrRecordNotFound error for logger + Colorful: true, // Disable color }, ) db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{ diff --git a/pkg/common/prometheus/prometheus.go b/pkg/common/prometheus/prometheus.go index 5d7e3d901..12d5671bb 100644 --- a/pkg/common/prometheus/prometheus.go +++ b/pkg/common/prometheus/prometheus.go @@ -6,6 +6,7 @@ import ( "strconv" "github.com/gin-gonic/gin" + "github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus/promhttp" ) @@ -24,3 +25,9 @@ func PrometheusHandler() gin.HandlerFunc { h.ServeHTTP(c.Writer, c.Request) } } + +func PromeInc(counter prometheus.Counter) { + if config.Config.Prometheus.Enable { + counter.Inc() + } +} From 5ce0cf1aad6c0ed56b644094746e9ae8383cfa24 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Wed, 14 Sep 2022 18:16:02 +0800 Subject: [PATCH 23/23] prome --- internal/rpc/auth/auth.go | 22 ++++------------------ pkg/common/prometheus/constant.go | 26 ++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 18 deletions(-) create mode 100644 pkg/common/prometheus/constant.go diff --git a/internal/rpc/auth/auth.go b/internal/rpc/auth/auth.go index 0947cb4f9..3f6a957db 100644 --- a/internal/rpc/auth/auth.go +++ b/internal/rpc/auth/auth.go @@ -17,28 +17,14 @@ import ( "strconv" "strings" - "github.com/prometheus/client_golang/prometheus" - "github.com/prometheus/client_golang/prometheus/promauto" - "Open_IM/pkg/common/config" "google.golang.org/grpc" ) -var ( - userLoginCounter prometheus.Counter - userRegisterCounter prometheus.Counter -) - func (rpc *rpcAuth) initPrometheus() { - userLoginCounter = promauto.NewCounter(prometheus.CounterOpts{ - Name: "user_login", - Help: "The number of user login", - }) - userRegisterCounter = promauto.NewCounter(prometheus.CounterOpts{ - Name: "user_register", - Help: "The number of user register", - }) + promePkg.NewUserLoginCounter() + promePkg.NewUserRegisterCounter() } func (rpc *rpcAuth) UserRegister(_ context.Context, req *pbAuth.UserRegisterReq) (*pbAuth.UserRegisterResp, error) { @@ -55,7 +41,7 @@ func (rpc *rpcAuth) UserRegister(_ context.Context, req *pbAuth.UserRegisterReq) log.NewError(req.OperationID, errMsg, user) return &pbAuth.UserRegisterResp{CommonResp: &pbAuth.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: errMsg}}, nil } - promePkg.PromeInc(userRegisterCounter) + promePkg.PromeInc(promePkg.UserRegisterCounter) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " rpc return ", pbAuth.UserRegisterResp{CommonResp: &pbAuth.CommonResp{}}) return &pbAuth.UserRegisterResp{CommonResp: &pbAuth.CommonResp{}}, nil } @@ -68,7 +54,7 @@ func (rpc *rpcAuth) UserToken(_ context.Context, req *pbAuth.UserTokenReq) (*pbA log.NewError(req.OperationID, errMsg) return &pbAuth.UserTokenResp{CommonResp: &pbAuth.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: errMsg}}, nil } - promePkg.PromeInc(userLoginCounter) + promePkg.PromeInc(promePkg.UserLoginCounter) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " rpc return ", pbAuth.UserTokenResp{CommonResp: &pbAuth.CommonResp{}, Token: tokens, ExpiredTime: expTime}) return &pbAuth.UserTokenResp{CommonResp: &pbAuth.CommonResp{}, Token: tokens, ExpiredTime: expTime}, nil } diff --git a/pkg/common/prometheus/constant.go b/pkg/common/prometheus/constant.go new file mode 100644 index 000000000..9ced5908d --- /dev/null +++ b/pkg/common/prometheus/constant.go @@ -0,0 +1,26 @@ +package prometheus + +import ( + "github.com/prometheus/client_golang/prometheus" + "github.com/prometheus/client_golang/prometheus/promauto" +) + +var ( + // user rpc + UserLoginCounter prometheus.Counter + UserRegisterCounter prometheus.Counter +) + +func NewUserLoginCounter() { + UserLoginCounter = promauto.NewCounter(prometheus.CounterOpts{ + Name: "user_login", + Help: "The number of user login", + }) +} + +func NewUserRegisterCounter() { + UserRegisterCounter = promauto.NewCounter(prometheus.CounterOpts{ + Name: "user_register", + Help: "The number of user register", + }) +}