获取配置文件代码优化
This commit is contained in:
@@ -11,11 +11,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
consulCfg, err := g.Cfg().Get(context.Background(), "consul.address")
|
consulAddr := g.Cfg().MustGet(context.Background(), "consul.address").String()
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
consulAddr := consulCfg.String()
|
|
||||||
registry, err := consul.New(consul.WithAddress(consulAddr))
|
registry, err := consul.New(consul.WithAddress(consulAddr))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
|
|||||||
@@ -14,18 +14,13 @@ import (
|
|||||||
var ShutDown func(ctx context.Context)
|
var ShutDown func(ctx context.Context)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
jaegerAgent, err := g.Cfg().Get(context.Background(), "jaeger.addr")
|
jaegerAgent := g.Cfg().MustGet(context.Background(), "jaeger.addr").String()
|
||||||
if err != nil {
|
serverName := g.Cfg().MustGet(context.Background(), "server.Name").String()
|
||||||
panic(err)
|
shutdown, err := otlphttp.Init(serverName, jaegerAgent, "/v1/traces")
|
||||||
}
|
|
||||||
serverName, err := g.Cfg().Get(context.Background(), "server.Name")
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
ShutDown, err = otlphttp.Init(serverName.String(), jaegerAgent.String(), "/v1/traces")
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
ShutDown = shutdown
|
||||||
}
|
}
|
||||||
func NewTracer(r *ghttp.Request) {
|
func NewTracer(r *ghttp.Request) {
|
||||||
_, span := gtrace.NewSpan(r.Context(), r.GetServeHandler().GetMetaTag("summary"))
|
_, span := gtrace.NewSpan(r.Context(), r.GetServeHandler().GetMetaTag("summary"))
|
||||||
|
|||||||
@@ -23,9 +23,9 @@ func Logger(r *ghttp.Request) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
var rateLimit, _ = g.Cfg().Get(context.TODO(), "rate.limit")
|
var rateLimit = g.Cfg().MustGet(context.TODO(), "rate.limit").Int()
|
||||||
var rateBurst, _ = g.Cfg().Get(context.TODO(), "rate.burst")
|
var rateBurst = g.Cfg().MustGet(context.TODO(), "rate.burst").Int()
|
||||||
var limiter = rate.NewLimiter(rate.Limit(rateLimit.Int()), rateBurst.Int())
|
var limiter = rate.NewLimiter(rate.Limit(rateLimit), rateBurst)
|
||||||
|
|
||||||
func Limiter(r *ghttp.Request) {
|
func Limiter(r *ghttp.Request) {
|
||||||
if !limiter.Allow() {
|
if !limiter.Allow() {
|
||||||
|
|||||||
@@ -20,8 +20,7 @@ var db = new(mongo.Database)
|
|||||||
func init() {
|
func init() {
|
||||||
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
|
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
|
||||||
defer cancel()
|
defer cancel()
|
||||||
link, _ := g.Cfg().Get(context.Background(), "mongo.address")
|
mongoAddr := g.Cfg().MustGet(context.Background(), "mongo.address").String()
|
||||||
mongoAddr := link.String()
|
|
||||||
opt := options.Client().ApplyURI(mongoAddr)
|
opt := options.Client().ApplyURI(mongoAddr)
|
||||||
client, err := mongo.Connect(opt)
|
client, err := mongo.Connect(opt)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -95,9 +94,9 @@ func Insert(ctx context.Context, documents []interface{}, collection string, opt
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// Count 查询总数
|
// Count 查询总数
|
||||||
func Count(ctx context.Context, filter bson.M, collection string) (count int64, err error) {
|
func Count(ctx context.Context, filter bson.M, collection string) (count int64, err error) {
|
||||||
// 调用驱动的 CountDocuments,在数据库端执行的
|
// 调用驱动的 CountDocuments,在数据库端执行的
|
||||||
count, err = db.Collection(collection).CountDocuments(ctx, filter)
|
count, err = db.Collection(collection).CountDocuments(ctx, filter)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ func init() {
|
|||||||
</html>
|
</html>
|
||||||
`)
|
`)
|
||||||
http.Httpserver.BindHandler("/swagger", func(r *ghttp.Request) {
|
http.Httpserver.BindHandler("/swagger", func(r *ghttp.Request) {
|
||||||
services, _ := g.Cfg().Get(r.GetCtx(), "consul.services")
|
services := g.Cfg().MustGet(r.GetCtx(), "consul.services").Slice()
|
||||||
aggregatedDoc := &swaggerDoc{
|
aggregatedDoc := &swaggerDoc{
|
||||||
OpenAPI: "3.0.0", // 假设统一为 3.0.0 版本
|
OpenAPI: "3.0.0", // 假设统一为 3.0.0 版本
|
||||||
Info: map[string]interface{}{
|
Info: map[string]interface{}{
|
||||||
@@ -86,7 +86,7 @@ func init() {
|
|||||||
Paths: make(map[string]interface{}),
|
Paths: make(map[string]interface{}),
|
||||||
Components: make(map[string]interface{}),
|
Components: make(map[string]interface{}),
|
||||||
}
|
}
|
||||||
for _, v := range services.Slice() {
|
for _, v := range services {
|
||||||
serviceName := gconv.String(gconv.Map(v)["name"])
|
serviceName := gconv.String(gconv.Map(v)["name"])
|
||||||
instanceAddr, err := consul.GetInstanceAddr(r.GetCtx(), serviceName)
|
instanceAddr, err := consul.GetInstanceAddr(r.GetCtx(), serviceName)
|
||||||
if err != nil || instanceAddr == "" {
|
if err != nil || instanceAddr == "" {
|
||||||
|
|||||||
Reference in New Issue
Block a user