From f81035f3ecf0c02eaf94d6cba4ac07dfd757012c Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期五, 16 八月 2019 13:39:48 +0800
Subject: [PATCH] add log
---
controllers/dbtablesCon.go | 128 ++++++++++++++++++++++++++++++++++++------
1 files changed, 110 insertions(+), 18 deletions(-)
diff --git a/controllers/dbtablesCon.go b/controllers/dbtablesCon.go
index 2eb472c..82daabe 100644
--- a/controllers/dbtablesCon.go
+++ b/controllers/dbtablesCon.go
@@ -1,14 +1,17 @@
package controllers
import (
+ "basic.com/dbapi.git"
"encoding/json"
"fmt"
"github.com/gin-gonic/gin"
"github.com/satori/go.uuid"
"log"
+ "time"
"webserver/extend/code"
"webserver/extend/config"
"webserver/extend/esutil"
+ "webserver/extend/logger"
"webserver/extend/util"
"webserver/models"
)
@@ -29,16 +32,21 @@
url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
"/" + config.EsInfo.EsIndex.DbTables.IndexName + "/_search"
isSync := c.Params.ByName("isSync")
- syncTerm := ""
+ var setApi dbapi.SysSetApi
+ _, sysconf := setApi.GetServerInfo()
+ analyServerFilterStr := ""
if isSync == "1" {
- syncTerm = ",{\"term\":{\"isSync\":\"1\"}}" // 鍚屾搴�
+ analyServerFilterStr = "{\"term\":{\"analyServerId\":\"\"}}" // / 鍚屾搴�
} else if isSync == "2" {
- syncTerm = ",{\"term\":{\"isSync\":\"2\"}}" // / 鏈湴搴�
+ analyServerFilterStr = "{\"term\":{\"analyServerId\":\"" + sysconf.ServerId + "\"}}" // 鏈湴搴�
+ }
+ if analyServerFilterStr != "" {
+ analyServerFilterStr = "," + analyServerFilterStr
}
params := "{\"query\":{\"bool\":{\"must\":[" +
- "{\"term\":{\"isDelete\":\"0\"}}" + syncTerm + "]}}," +
- "\"from\":0,\"size\":100,\"sort\":{\"id\":{\"order\":\"asc\"}}}"
- fmt.Print("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
+ "{\"term\":{\"isDelete\":\"0\"}}" + analyServerFilterStr + "]}}," +
+ "\"from\":0,\"size\":1000,\"sort\":{\"id\":{\"order\":\"asc\"}}}"
+ logger.Debug("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
data := esutil.GetEsDataReq(url, params, true)
//c.JSON(200, data)
@@ -49,7 +57,7 @@
func QueryDbTableInfo(tableId string) map[string]interface{} {
url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
"/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + tableId
- fmt.Print("璇锋眰url:%s;", url)
+ logger.Debug("璇锋眰url:%s;", url)
data := esutil.GetEsDataInfo(url, true)
return data
}
@@ -69,28 +77,84 @@
uuid := c.Params.ByName("id")
if uuid == "" {
uuid = dbtable.Id
- fmt.Println("body涓幏鍙栧簳搴搃d")
+ logger.Debug("body涓幏鍙栧簳搴搃d")
+ }
+ if dbtable.EndTime == "" {
+ flag := UpdateEndTime(dbtable.Id)
+ if flag == false {
+ util.ResponseFormat(c, code.ServiceInsideError, "淇敼澶辫触")
+ }
}
url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
- "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + uuid + "/_update"
+ "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + uuid + "/_update?refresh=wait_for"
dbtable.PriUpdate()
dbTableByte, err := json.Marshal(dbtable)
if err != nil {
log.Fatalf("Json marshaling failed锛�%s", err)
}
- fmt.Printf("%s\n", dbTableByte)
+ logger.Debug("%s\n", dbTableByte)
params := "{\"doc\":" + string(dbTableByte) + "}"
- fmt.Print("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
+ logger.Debug("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
data := esutil.GetEsDataReq(url, params, false)
//c.JSON(200, changeEsRespData(data, "淇敼鎴愬姛"))
result := changeEsRespData(data, "淇敼鎴愬姛")
+ if dbtable.Enable == 0 {
+ res := UpdateDbPersonsOfDbTable(dbtable.Id)
+ //fmt.Println("鍚屾淇敼浜哄憳鐘舵�佹垚鍔�----",res)
+ logger.Debug("鍚屾淇敼浜哄憳鐘舵�佹垚鍔�----", res)
+ }
if result["success"].(bool) {
//code.Success.Message = "淇敼搴曞簱鎴愬姛"
+ //if dbtable.Enable ==1 {
+ // discovery.AddDbMessage(&protomsg.EsPersonCacheChange{
+ // Type: protomsg.EsCacheChanged_T_DbTable,
+ // PersonId: "",
+ // TableId: []string{ dbtable.Id },
+ // Feature: "",
+ // Action: protomsg.DbAction_Insert,
+ // })
+ //} else {
+ // discovery.AddDbMessage(&protomsg.EsPersonCacheChange{
+ // Type: protomsg.EsCacheChanged_T_DbTable,
+ // PersonId: "",
+ // TableId: []string{ dbtable.Id },
+ // Feature: "",
+ // Action: protomsg.DbAction_Delete,
+ // })
+ //}
util.ResponseFormat(c, code.Success, result["data"])
} else {
//code.ServiceInsideError.Message += result["msg"].(string)
util.ResponseFormat(c, code.ServiceInsideError, result["data"])
}
+}
+
+func UpdateEndTime(id string) (flag bool) {
+ flag = false
+ url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
+ "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + id + "/_update?refresh=wait_for"
+ prama := "{\"script\":\"ctx._source.remove(\\\"endTime\\\")\"}"
+ buf, err := esutil.EsReq("POST", url, []byte(prama))
+ if err != nil {
+ fmt.Println("http request info is err!")
+ return
+ }
+ var info interface{}
+ json.Unmarshal(buf, &info)
+ out, ok := info.(map[string]interface{})
+ if !ok {
+ fmt.Println("http response interface can not change map[string]interface{}")
+ return
+ }
+ middle, ok := out["result"].(string)
+ if !ok {
+ fmt.Println("first result change error!")
+ return
+ }
+ if middle == "updated" {
+ flag = true
+ }
+ return flag
}
// @Summary 娣诲姞搴曞簱
@@ -107,16 +171,44 @@
c.BindJSON(&dbtable)
tableId := uuid.NewV4().String()
dbtable.Id = tableId
+ if dbtable.AnalyServerId == "sync" {
+ dbtable.AnalyServerId = ""
+ }
+ if dbtable.AnalyServerId == "local" {
+ var setApi dbapi.SysSetApi
+ _, sysconf := setApi.GetServerInfo()
+ dbtable.AnalyServerId = sysconf.ServerId
+ }
url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
- "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + tableId
+ "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + tableId + "?refresh=wait_for"
dbtable.PriInsert() // 娣诲姞鏃堕棿鍜屽垱寤轰汉
+
+ currentTime := time.Now()
+ startTime := dbtable.StartTime
+ endTime := ""
+ if dbtable.EndTime != "" {
+ endTime = dbtable.EndTime
+ }
+ st, _ := time.ParseInLocation("2006-01-02 15:04:05", startTime, time.Local)
+ if endTime != "" {
+ et, _ := time.ParseInLocation("2006-01-02 15:04:05", endTime, time.Local)
+ if et.After(currentTime) && st.Before(currentTime) {
+ dbtable.Enable = 1
+ } else {
+ dbtable.Enable = 0
+ }
+ } else if st.Before(currentTime) && endTime == "" {
+ dbtable.Enable = 1
+ } else {
+ dbtable.Enable = 0
+ }
dbTableByte, err := json.Marshal(dbtable)
if err != nil {
log.Fatalf("Json marshaling failed锛�%s", err)
}
- //fmt.Printf("%s\n", dbTableByte)
+ //logger.Debugf("%s\n", dbTableByte)
params := string(dbTableByte)
- fmt.Print("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
+ logger.Debug("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
data, _ := esutil.PutEsDataReq(url, params)
//c.JSON(200, changeEsRespData(data, "娣诲姞鎴愬姛"))
result := changeEsRespData(data, "娣诲姞鎴愬姛")
@@ -137,13 +229,13 @@
// @Param uuid path string true "搴曞簱id "
// @Success 200 {string} json "{"code":200, msg:"鐩綍缁撴瀯鏁版嵁", success:true}"
// @Failure 500 {string} json "{"code":500, msg:"杩斿洖閿欒淇℃伅", success:false}"
-// @Router /data/api-v/dbtable/deleteDBtablesById/{uuid} [POST]
+// @Router /data/api-v/dbtable/deleteDBtablesById/{id} [POST]
func (dbt DbTableController) DeleteDbTables(c *gin.Context) {
uuid := c.Params.ByName("id")
url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
- "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + uuid + "/_update"
- params := "{\"doc\":{\"isDelete\":\"1\"}}"
- fmt.Print("鍒犻櫎璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
+ "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + uuid + "/_update?refresh=wait_for"
+ params := "{\"doc\":{\"isDelete\":1}}"
+ logger.Debug("鍒犻櫎璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
data := esutil.GetEsDataReq(url, params, false)
//c.JSON(200, changeEsRespData(data, "鍒犻櫎鎴愬姛"))
result := changeEsRespData(data, "鍒犻櫎鎴愬姛")
--
Gitblit v1.8.0