From 7e9e7643223ecacb83a9267ec5f07e1938d0f1ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E7=A5=A5=E8=B6=85?= Date: Mon, 3 Jan 2022 11:04:14 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8A=82=E7=82=B9=E6=97=A5=E5=BF=97=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E4=BD=BF=E7=94=A8=E6=A0=87=E7=AD=BE=E7=AD=9B=E9=80=89?= =?UTF-8?q?/=E7=BA=A7=E5=88=AB=E5=8F=AF=E4=BB=A5=E5=A1=AB=E5=86=99?= =?UTF-8?q?=E5=A4=9A=E4=B8=AA=EF=BC=8C=E7=94=A8=E9=80=97=E5=8F=B7=E5=88=86?= =?UTF-8?q?=E9=9A=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/db/models/node_log_dao.go | 17 +++++++++++++++-- internal/rpc/services/service_node_log.go | 4 ++-- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/internal/db/models/node_log_dao.go b/internal/db/models/node_log_dao.go index 5ac92790..339d4f74 100644 --- a/internal/db/models/node_log_dao.go +++ b/internal/db/models/node_log_dao.go @@ -142,7 +142,8 @@ func (this *NodeLogDAO) CountNodeLogs(tx *dbs.Tx, dayTo string, keyword string, level string, - isUnread bool) (int64, error) { + isUnread bool, + tag string) (int64, error) { query := this.Query(tx) if len(role) > 0 { query.Attr("role", role) @@ -181,6 +182,9 @@ func (this *NodeLogDAO) CountNodeLogs(tx *dbs.Tx, if isUnread { query.Attr("isRead", 0) } + if len(tag) > 0 { + query.Like("tag", "%"+tag+"%") + } return query.Count() } @@ -198,6 +202,7 @@ func (this *NodeLogDAO) ListNodeLogs(tx *dbs.Tx, level string, fixedState configutils.BoolState, isUnread bool, + tag string, offset int64, size int64) (result []*NodeLog, err error) { query := this.Query(tx) @@ -240,11 +245,19 @@ func (this *NodeLogDAO) ListNodeLogs(tx *dbs.Tx, Param("keyword", "%"+keyword+"%") } if len(level) > 0 { - query.Attr("level", level) + var pieces = strings.Split(level, ",") + if len(pieces) == 1 { + query.Attr("level", pieces[0]) + } else { + query.Attr("level", pieces) + } } if isUnread { query.Attr("isRead", 0) } + if len(tag) > 0 { + query.Like("tag", "%"+tag+"%") + } _, err = query. Offset(offset). Limit(size). diff --git a/internal/rpc/services/service_node_log.go b/internal/rpc/services/service_node_log.go index b3a69d71..93bd5327 100644 --- a/internal/rpc/services/service_node_log.go +++ b/internal/rpc/services/service_node_log.go @@ -41,7 +41,7 @@ func (this *NodeLogService) CountNodeLogs(ctx context.Context, req *pb.CountNode tx := this.NullTx() - count, err := models.SharedNodeLogDAO.CountNodeLogs(tx, req.Role, req.NodeId, req.ServerId, req.OriginId, req.DayFrom, req.DayTo, req.Keyword, req.Level, req.IsUnread) + count, err := models.SharedNodeLogDAO.CountNodeLogs(tx, req.Role, req.NodeId, req.ServerId, req.OriginId, req.DayFrom, req.DayTo, req.Keyword, req.Level, req.IsUnread, req.Tag) if err != nil { return nil, err } @@ -57,7 +57,7 @@ func (this *NodeLogService) ListNodeLogs(ctx context.Context, req *pb.ListNodeLo tx := this.NullTx() - logs, err := models.SharedNodeLogDAO.ListNodeLogs(tx, req.Role, req.NodeId, req.ServerId, req.OriginId, req.AllServers, req.DayFrom, req.DayTo, req.Keyword, req.Level, types.Int8(req.FixedState), req.IsUnread, req.Offset, req.Size) + logs, err := models.SharedNodeLogDAO.ListNodeLogs(tx, req.Role, req.NodeId, req.ServerId, req.OriginId, req.AllServers, req.DayFrom, req.DayTo, req.Keyword, req.Level, types.Int8(req.FixedState), req.IsUnread, req.Tag, req.Offset, req.Size) if err != nil { return nil, err }