优化错误处理相关代码

This commit is contained in:
刘祥超
2023-08-11 16:13:33 +08:00
parent 034ababead
commit d1ba141c65
19 changed files with 81 additions and 68 deletions

View File

@@ -2,6 +2,7 @@ package setup
import (
"encoding/json"
"fmt"
"github.com/TeaOSLab/EdgeAPI/internal/configs"
"github.com/TeaOSLab/EdgeAPI/internal/db/models"
"github.com/TeaOSLab/EdgeAPI/internal/errors"
@@ -150,7 +151,7 @@ func (this *Setup) Run() error {
}
addrsJSON, err := json.Marshal([]*serverconfigs.NetworkAddressConfig{addr})
if err != nil {
return errors.New("json encode api node addr failed: " + err.Error())
return fmt.Errorf("json encode api node addr failed: %w", err)
}
var httpJSON []byte = nil
@@ -166,7 +167,7 @@ func (this *Setup) Run() error {
}
httpJSON, err = json.Marshal(httpConfig)
if err != nil {
return errors.New("json encode api node http config failed: " + err.Error())
return fmt.Errorf("json encode api node http config failed: %w", err)
}
}
if this.config.APINodeProtocol == "https" {
@@ -181,14 +182,14 @@ func (this *Setup) Run() error {
}
httpsJSON, err = json.Marshal(httpsConfig)
if err != nil {
return errors.New("json encode api node https config failed: " + err.Error())
return fmt.Errorf("json encode api node https config failed: %w", err)
}
}
// 创建API节点
nodeId, err := dao.CreateAPINode(nil, "默认API节点", "这是默认创建的第一个API节点", httpJSON, httpsJSON, false, nil, nil, addrsJSON, true)
if err != nil {
return errors.New("create api node in database failed: " + err.Error())
return fmt.Errorf("create api node in database failed: %w", err)
}
apiNodeId = nodeId
}
@@ -208,7 +209,7 @@ func (this *Setup) Run() error {
}
err = apiConfig.WriteFile(Tea.ConfigFile("api.yaml"))
if err != nil {
return errors.New("save config failed: " + err.Error())
return fmt.Errorf("save config failed: %w", err)
}
return nil

View File

@@ -2,8 +2,8 @@ package setup
import (
"encoding/json"
"fmt"
"github.com/TeaOSLab/EdgeAPI/internal/db/models"
"github.com/TeaOSLab/EdgeAPI/internal/errors"
"github.com/TeaOSLab/EdgeCommon/pkg/dnsconfigs"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs"
_ "github.com/go-sql-driver/mysql"
@@ -68,7 +68,7 @@ func (this *SQLExecutor) Run(showLog bool) error {
var sqlResult = &SQLDumpResult{}
err = json.Unmarshal(sqlData, sqlResult)
if err != nil {
return errors.New("decode sql data failed: " + err.Error())
return fmt.Errorf("decode sql data failed: %w", err)
}
_, err = sqlDump.Apply(db, sqlResult, showLog)
@@ -227,7 +227,7 @@ func (this *SQLExecutor) checkCluster(db *dbs.DB) error {
/// 检查是否有集群数字
stmt, err := db.Prepare("SELECT COUNT(*) FROM edgeNodeClusters")
if err != nil {
return errors.New("query clusters failed: " + err.Error())
return fmt.Errorf("query clusters failed: %w", err)
}
defer func() {
_ = stmt.Close()
@@ -235,7 +235,7 @@ func (this *SQLExecutor) checkCluster(db *dbs.DB) error {
col, err := stmt.FindCol(0)
if err != nil {
return errors.New("query clusters failed: " + err.Error())
return fmt.Errorf("query clusters failed: %w", err)
}
count := types.Int(col)
if count > 0 {
@@ -311,7 +311,7 @@ func (this *SQLExecutor) checkCluster(db *dbs.DB) error {
func (this *SQLExecutor) checkIPList(db *dbs.DB) error {
stmt, err := db.Prepare("SELECT COUNT(*) FROM edgeIPLists")
if err != nil {
return errors.New("query ip lists failed: " + err.Error())
return fmt.Errorf("query ip lists failed: %w", err)
}
defer func() {
_ = stmt.Close()
@@ -319,7 +319,7 @@ func (this *SQLExecutor) checkIPList(db *dbs.DB) error {
col, err := stmt.FindCol(0)
if err != nil {
return errors.New("query ip lists failed: " + err.Error())
return fmt.Errorf("query ip lists failed: %w", err)
}
count := types.Int(col)
if count > 0 {
@@ -508,7 +508,7 @@ func (this *SQLExecutor) checkClientAgents(db *dbs.DB) error {
func (this *SQLExecutor) updateVersion(db *dbs.DB, version string) error {
stmt, err := db.Prepare("SELECT COUNT(*) FROM edgeVersions")
if err != nil {
return errors.New("query version failed: " + err.Error())
return fmt.Errorf("query version failed: %w", err)
}
defer func() {
_ = stmt.Close()
@@ -516,20 +516,20 @@ func (this *SQLExecutor) updateVersion(db *dbs.DB, version string) error {
col, err := stmt.FindCol(0)
if err != nil {
return errors.New("query version failed: " + err.Error())
return fmt.Errorf("query version failed: %w", err)
}
count := types.Int(col)
if count > 0 {
_, err = db.Exec("UPDATE edgeVersions SET version=?", version)
if err != nil {
return errors.New("update version failed: " + err.Error())
return fmt.Errorf("update version failed: %w", err)
}
return nil
}
_, err = db.Exec("INSERT edgeVersions (version) VALUES (?)", version)
if err != nil {
return errors.New("create version failed: " + err.Error())
return fmt.Errorf("create version failed: %w", err)
}
return nil

View File

@@ -5,7 +5,7 @@ package setup
import (
"encoding/json"
"github.com/TeaOSLab/EdgeAPI/internal/errors"
"fmt"
"github.com/TeaOSLab/EdgeCommon/pkg/dnsconfigs"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs"
"github.com/TeaOSLab/EdgeCommon/pkg/systemconfigs"
@@ -79,7 +79,7 @@ func upgradeV0_4_9(db *dbs.DB) error {
config.DenySpiders = true
configJSON, err := json.Marshal(config)
if err != nil {
return errors.New("encode SecurityConfig failed: " + err.Error())
return fmt.Errorf("encode SecurityConfig failed: %w", err)
} else {
_, err := db.Exec("UPDATE edgeSysSettings SET value=? WHERE code=?", configJSON, systemconfigs.SettingCodeAdminSecurityConfig)
if err != nil {