Commit fd4727d8 authored by 张宇迪's avatar 张宇迪

修改字段过滤

parent 013df33d
...@@ -13,6 +13,7 @@ var ( ...@@ -13,6 +13,7 @@ var (
const CallRecord string = "callRecord" const CallRecord string = "callRecord"
const SvcTag string = "SVC" const SvcTag string = "SVC"
const ServiceTag string = "SERVICE"
const ApplyTag string = "APPLY" const ApplyTag string = "APPLY"
var ProxyConf = struct { var ProxyConf = struct {
......
...@@ -55,6 +55,7 @@ func Proxy(c *gin.Context) { ...@@ -55,6 +55,7 @@ func Proxy(c *gin.Context) {
res = service.SensitiveFilter(proxyData, res) res = service.SensitiveFilter(proxyData, res)
} }
//服务调用计次 //服务调用计次
//err = service.CallCounts(proxyData)
err = service.CallCounts(proxyData) err = service.CallCounts(proxyData)
if err != nil { if err != nil {
Return(err.Error()) Return(err.Error())
......
...@@ -113,6 +113,45 @@ func RecordCall(proxyData model.ProxyData, status int, res []byte) { ...@@ -113,6 +113,45 @@ func RecordCall(proxyData model.ProxyData, status int, res []byte) {
return return
} }
//服务调用计次
//func CallCounts(proxyData model.ProxyData) (err error) {
// redis, err := client.GetRedisClient()
// if err != nil {
// fmt.Println(err.Error())
// return
// }
// date := time.Now().Format(config.LocalDateFormat)
// aMonBefore := time.Now().AddDate(0, -1, 0).Format(config.LocalDateFormat)
//
// str, err := redis.Get(fmt.Sprintf("%s-%d", config.SvcTag, proxyData.Service_id))
// if err != nil && err.Error() != `redis: nil` {
// return
// }
//
// dateMap := make(map[string]int)
// if str != "" {
// err = json.Unmarshal([]byte(str), &dateMap)
// if err != nil {
// return
// }
// if _, ok := dateMap[date]; ok {
// dateMap[date] = dateMap[date] + 1
// } else {
// dateMap[date] = 1
// }
// for k, _ := range dateMap {
// if tools.CompareDate(k, aMonBefore) {
// delete(dateMap, k)
// }
// }
//
// } else {
// dateMap[date] = 1
// }
// content, err := json.Marshal(dateMap)
// err = redis.Set(fmt.Sprintf("%s-%d", config.SvcTag, proxyData.Service_id), content, -1)
// return
//}
//服务调用计次 //服务调用计次
func CallCounts(proxyData model.ProxyData) (err error) { func CallCounts(proxyData model.ProxyData) (err error) {
redis, err := client.GetRedisClient() redis, err := client.GetRedisClient()
...@@ -120,37 +159,28 @@ func CallCounts(proxyData model.ProxyData) (err error) { ...@@ -120,37 +159,28 @@ func CallCounts(proxyData model.ProxyData) (err error) {
fmt.Println(err.Error()) fmt.Println(err.Error())
return return
} }
date := time.Now().Format(config.LocalDateFormat) //date := time.Now().Format(config.LocalDateFormat)
aMonBefore := time.Now().AddDate(0, -1, 0).Format(config.LocalDateFormat) //aMonBefore := time.Now().AddDate(0, -1, 0).Format(config.LocalDateFormat)
str, err := redis.Get(fmt.Sprintf("%s", config.ServiceTag))
str, err := redis.Get(fmt.Sprintf("%s-%d", config.SvcTag, proxyData.Service_id))
if err != nil && err.Error() != `redis: nil` { if err != nil && err.Error() != `redis: nil` {
return return
} }
dateMap := make(map[int]int)
dateMap := make(map[string]int)
if str != "" { if str != "" {
err = json.Unmarshal([]byte(str), &dateMap) err = json.Unmarshal([]byte(str), &dateMap)
if err != nil { if err != nil {
return return
} }
if _, ok := dateMap[date]; ok { if _, ok := dateMap[proxyData.Service_id]; ok {
dateMap[date] = dateMap[date] + 1 dateMap[proxyData.Service_id] = dateMap[proxyData.Service_id] + 1
} else { } else {
dateMap[date] = 1 dateMap[proxyData.Service_id] = 1
} }
for k, _ := range dateMap {
if tools.CompareDate(k, aMonBefore) {
delete(dateMap, k)
}
}
} else { } else {
dateMap[date] = 1 dateMap[proxyData.Service_id] = 1
} }
content, err := json.Marshal(dateMap) content, err := json.Marshal(dateMap)
//fmt.Sprintf("SVCID-%d",proxyData.Service_id) err = redis.Set(fmt.Sprintf("%s", config.ServiceTag), content, -1)
err = redis.Set(fmt.Sprintf("%s-%d", config.SvcTag, proxyData.Service_id), content, -1)
return return
} }
...@@ -361,7 +391,7 @@ func GetRealPath(applyId string) (res model.ProxyData, err error) { ...@@ -361,7 +391,7 @@ func GetRealPath(applyId string) (res model.ProxyData, err error) {
Join(`inner`, `service_apply`, `service_apply.service_id = service.id`). Join(`inner`, `service_apply`, `service_apply.service_id = service.id`).
Join(`left`, `service_request_spcs`, `service_request_spcs.id = service_apply.request_spcs_id`). Join(`left`, `service_request_spcs`, `service_request_spcs.id = service_apply.request_spcs_id`).
Join(`left`, `service_safe_config`, `service_apply.service_id = service_safe_config.service_id`). Join(`left`, `service_safe_config`, `service_apply.service_id = service_safe_config.service_id`).
Where(`service_apply.id=?`, applyId).Get(&res) Where(`service_apply.uuid=?`, applyId).Get(&res)
if !has { if !has {
err = errors.New(`未找到发布的服务!`) err = errors.New(`未找到发布的服务!`)
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment