diff --git a/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcAmqpAppender.java b/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcAmqpAppender.java index 6cb69a5..98db82a 100644 --- a/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcAmqpAppender.java +++ b/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcAmqpAppender.java @@ -95,8 +95,8 @@ public class GlcAmqpAppender extends AppenderBase { initConnectionChannel(); } - String traceid = MdcUtil.getTraceId(); - String clientip = MdcUtil.getClientIp(); + String traceid = event.getMDCPropertyMap().get(MdcUtil.TRACE_ID); + String clientip = event.getMDCPropertyMap().get(MdcUtil.CLIENT_IP); String body = "{\"text\":" + Util.encodeStr(text.trim()); body += ",\"date\":\"" + Util.getDateString() + "\""; @@ -104,10 +104,10 @@ public class GlcAmqpAppender extends AppenderBase { body += ",\"servername\":" + Util.encodeStr(Util.getServerName()); body += ",\"serverip\":" + Util.encodeStr(Util.getServerIp()); body += ",\"loglevel\":\"" + event.getLevel().toString() + "\""; - if (!"".equals(traceid)) { + if (traceid != null && !"".equals(traceid)) { body += ",\"traceid\":" + Util.encodeStr(traceid); } - if (!"".equals(clientip)) { + if (clientip != null && !"".equals(clientip)) { body += ",\"clientip\":" + Util.encodeStr(clientip); } body += "}"; diff --git a/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcHttpJsonAppender.java b/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcHttpJsonAppender.java index e8257d6..9fd7ed7 100644 --- a/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcHttpJsonAppender.java +++ b/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/GlcHttpJsonAppender.java @@ -65,8 +65,8 @@ public class GlcHttpJsonAppender extends AppenderBase { DataOutputStream dos = null; String body = null; try { - String traceid = MdcUtil.getTraceId(); - String clientip = MdcUtil.getClientIp(); + String traceid = event.getMDCPropertyMap().get(MdcUtil.TRACE_ID); + String clientip = event.getMDCPropertyMap().get(MdcUtil.CLIENT_IP); body = "{\"text\":" + Util.encodeStr(text.trim()); body += ",\"date\":\"" + Util.getDateString() + "\""; @@ -74,10 +74,10 @@ public class GlcHttpJsonAppender extends AppenderBase { body += ",\"servername\":" + Util.encodeStr(Util.getServerName()); body += ",\"serverip\":" + Util.encodeStr(Util.getServerIp()); body += ",\"loglevel\":\"" + event.getLevel().toString() + "\""; - if (!"".equals(traceid)) { + if (traceid != null && !"".equals(traceid)) { body += ",\"traceid\":" + Util.encodeStr(traceid); } - if (!"".equals(clientip)) { + if (clientip != null && !"".equals(clientip)) { body += ",\"clientip\":" + Util.encodeStr(clientip); } body += "}"; diff --git a/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/MdcUtil.java b/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/MdcUtil.java index 84ed615..8f34417 100644 --- a/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/MdcUtil.java +++ b/glc-logback-appender/src/main/java/top/gotoeasy/framework/glc/logback/appender/MdcUtil.java @@ -9,16 +9,6 @@ public class MdcUtil { public static final String TRACE_ID = "traceid"; public static final String CLIENT_IP = "clientip"; - public static String getClientIp() { - String str = MDC.get(CLIENT_IP); - return str == null ? "" : str; - } - - public static String getTraceId() { - String str = MDC.get(TRACE_ID); - return str == null ? "" : str; - } - public static void setClientIp(String clientip) { MDC.put(CLIENT_IP, clientip); } diff --git a/glc/ldb/engine.go b/glc/ldb/engine.go index f30993b..6dd5381 100644 --- a/glc/ldb/engine.go +++ b/glc/ldb/engine.go @@ -48,7 +48,7 @@ func (e *Engine) AddLogDataModel(data *logdata.LogDataModel) { e.logStorage.AddLogDataModel(data) } -func (e *Engine) Search(searchKey string, system string, minDatetime string, maxDatetime string, loglevel string, traceid string, +func (e *Engine) Search(searchKey string, system string, minDatetime string, maxDatetime string, loglevel string, pageSize int, currentDocId uint32, forward bool) *search.SearchResult { // 检查修正pageSize @@ -61,7 +61,7 @@ func (e *Engine) Search(searchKey string, system string, minDatetime string, max // 分词后检索 var adds []string - adds = append(adds, system, loglevel, traceid) + adds = append(adds, system, loglevel) kws := tokenizer.CutForSearchEx(searchKey, adds, nil) // 检索用关键词处理 if searchKey == "" { diff --git a/glc/ldb/engine_test.go b/glc/ldb/engine_test.go index dccdbdd..9535500 100644 --- a/glc/ldb/engine_test.go +++ b/glc/ldb/engine_test.go @@ -46,7 +46,7 @@ func Test_all(t *testing.T) { // } // time.Sleep(time.Duration(5) * time.Second) - rs := engine.Search(` them java `, "", "", "", "", "", 5, 0, true) + rs := engine.Search(` them java `, "", "", "", "", 5, 0, true) cmn.Println("共查到", rs.Total, "件") for _, v := range rs.Data { cmn.Println(v.Id, v.Text) diff --git a/glc/ldb/storage/logdata/logdata_model.go b/glc/ldb/storage/logdata/logdata_model.go index 4192977..bf83dfd 100644 --- a/glc/ldb/storage/logdata/logdata_model.go +++ b/glc/ldb/storage/logdata/logdata_model.go @@ -20,7 +20,7 @@ type LogDataModel struct { System string `json:"system,omitempty"` // 系统名 ServerName string `json:"servername,omitempty"` // 服务器名 ServerIp string `json:"serverip,omitempty"` // 服务器IP - ClientIp string `json:"client,omitempty"` // 客户端IP + ClientIp string `json:"clientip,omitempty"` // 客户端IP TraceId string `json:"traceid,omitempty"` // 跟踪ID LogType string `json:"logtype,omitempty"` // 日志类型(1:登录日志、2:操作日志) LogLevel string `json:"loglevel,omitempty"` // 日志级别(debug、info、error等) diff --git a/glc/ldb/storage/logdata/logdata_storage.go b/glc/ldb/storage/logdata/logdata_storage.go index aeaad9b..da3b4a8 100644 --- a/glc/ldb/storage/logdata/logdata_storage.go +++ b/glc/ldb/storage/logdata/logdata_storage.go @@ -189,32 +189,8 @@ func (s *LogDataStorage) createInvertedIndex() int { if docm.System != "" { adds = append(adds, "~"+docm.System) } - if docm.ServerName != "" { - adds = append(adds, "!"+docm.ServerName) - } - if docm.ServerIp != "" { - adds = append(adds, "@"+docm.ServerIp) - } - if docm.ClientIp != "" { - adds = append(adds, "#"+docm.ClientIp) - } - if docm.TraceId != "" { - adds = append(adds, "$"+docm.TraceId) - } - if docm.LogType != "" { - adds = append(adds, "%"+docm.LogType) - } - if docm.User != "" { - adds = append(adds, "^"+docm.User) - } - if docm.Module != "" { - adds = append(adds, "&"+docm.Module) - } - if docm.Operation != "" { - adds = append(adds, "*"+docm.Operation) - } if docm.LogLevel != "" { - adds = append(adds, "-"+docm.LogLevel) + adds = append(adds, "!"+docm.LogLevel) } kws := tokenizer.CutForSearchEx(docm.Text+" "+docm.System+" "+docm.ServerName+" "+docm.ServerIp+ " "+docm.ClientIp+" "+docm.TraceId+" "+docm.LogLevel+" "+docm.User+" "+docm.Module+" "+docm.Operation, adds, docm.Sensitives) // 两数组参数的元素可以重复或空白,会被判断整理 diff --git a/glc/www/controller/log_search_controller.go b/glc/www/controller/log_search_controller.go index 689de84..8c19019 100644 --- a/glc/www/controller/log_search_controller.go +++ b/glc/www/controller/log_search_controller.go @@ -25,19 +25,15 @@ func LogSearchController(req *gweb.HttpRequest) *gweb.HttpResult { datetimeTo := req.GetFormParameter("datetimeTo") system := req.GetFormParameter("system") loglevel := req.GetFormParameter("loglevel") - traceid := req.GetFormParameter("traceid") if !cmn.IsBlank(system) { system = "~" + cmn.Trim(system) } - if !cmn.IsBlank(traceid) { - traceid = "$" + cmn.Trim(traceid) - } if !cmn.IsBlank(loglevel) { - loglevel = "-" + cmn.Trim(loglevel) + loglevel = "!" + cmn.Trim(loglevel) } eng := ldb.NewEngine(storeName) - rs := eng.Search(searchKey, system, datetimeFrom, datetimeTo, loglevel, traceid, pageSize, currentId, forward) + rs := eng.Search(searchKey, system, datetimeFrom, datetimeTo, loglevel, pageSize, currentId, forward) return gweb.Result(rs) } diff --git a/glc/www/web/src/views/search.vue b/glc/www/web/src/views/search.vue index 3826837..d414b5c 100644 --- a/glc/www/web/src/views/search.vue +++ b/glc/www/web/src/views/search.vue @@ -109,6 +109,7 @@ {{systemVisible?'隐藏':'显示'}}系统名 {{serverNameVisible?'隐藏':'显示'}}主机名 {{serverIpVisible?'隐藏':'显示'}}主机IP + {{clientIpVisible?'隐藏':'显示'}}客户端IP {{dateVisible?'隐藏':'显示'}}日期时间 {{logLevelVisible?'隐藏':'显示'}}Level {{traceIdVisible?'隐藏':'显示'}}TraceID @@ -137,6 +138,7 @@ + @@ -190,7 +192,8 @@ export default { systemVisible: true, serverNameVisible: false, serverIpVisible: false, - logLevelVisible: true, + clientIpVisible: false, + logLevelVisible: false, traceIdVisible: false, dateVisible: true, info: '', @@ -329,6 +332,7 @@ export default { name == 'system' && (this.systemVisible = !this.systemVisible); name == 'servername' && (this.serverNameVisible = !this.serverNameVisible); name == 'serverip' && (this.serverIpVisible = !this.serverIpVisible); + name == 'clientip' && (this.clientIpVisible = !this.clientIpVisible); name == 'loglevel' && (this.logLevelVisible = !this.logLevelVisible); name == 'traceid' && (this.traceIdVisible = !this.traceIdVisible); name == 'date' && (this.dateVisible = !this.dateVisible);