未验证 提交 82488ac3 编写于 作者: H huanggze

handle error for type assertion

Signed-off-by: Nhuanggze <loganhuang@yunify.com>
上级 429573c8
......@@ -56,15 +56,17 @@ func detectVersionMajor(cfg *Config) error {
}
if res.IsError() {
// Print the response status and error information.
return fmt.Errorf("[%s] %s: %s",
res.Status(),
b["error"].(map[string]interface{})["type"],
b["error"].(map[string]interface{})["reason"],
)
e, _ := b["error"].(map[string]interface{})
return fmt.Errorf("[%s] %s: %s", res.Status(), e["type"], e["reason"])
}
// get the major version
version := fmt.Sprintf("%v", b["version"].(map[string]interface{})["number"])
cfg.VersionMajor = strings.Split(version, ".")[0]
version, _ := b["version"].(map[string]interface{})
number, _ := version["number"].(string)
if number == "" {
return fmt.Errorf("failed to detect elastic version number")
}
cfg.VersionMajor = strings.Split(number, ".")[0]
return nil
}
......@@ -41,11 +41,8 @@ func (e Elastic) Search(body []byte) ([]byte, error) {
return nil, err
} else {
// Print the response status and error information.
return nil, fmt.Errorf("[%s] %s: %s",
response.Status(),
e["error"].(map[string]interface{})["type"],
e["error"].(map[string]interface{})["reason"],
)
e, _ := e["error"].(map[string]interface{})
return nil, fmt.Errorf("[%s] %s: %s", response.Status(), e["type"], e["reason"])
}
}
......@@ -53,5 +50,6 @@ func (e Elastic) Search(body []byte) ([]byte, error) {
}
func (e Elastic) GetTotalHitCount(v interface{}) int64 {
return int64(v.(float64))
f, _ := v.(float64)
return int64(f)
}
......@@ -41,11 +41,8 @@ func (e Elastic) Search(body []byte) ([]byte, error) {
return nil, err
} else {
// Print the response status and error information.
return nil, fmt.Errorf("[%s] %s: %s",
response.Status(),
e["error"].(map[string]interface{})["type"],
e["error"].(map[string]interface{})["reason"],
)
e, _ := e["error"].(map[string]interface{})
return nil, fmt.Errorf("[%s] %s: %s", response.Status(), e["type"], e["reason"])
}
}
......@@ -53,5 +50,6 @@ func (e Elastic) Search(body []byte) ([]byte, error) {
}
func (e Elastic) GetTotalHitCount(v interface{}) int64 {
return int64(v.(float64))
f, _ := v.(float64)
return int64(f)
}
......@@ -42,11 +42,8 @@ func (e Elastic) Search(body []byte) ([]byte, error) {
return nil, err
} else {
// Print the response status and error information.
return nil, fmt.Errorf("[%s] %s: %s",
response.Status(),
e["error"].(map[string]interface{})["type"],
e["error"].(map[string]interface{})["reason"],
)
e, _ := e["error"].(map[string]interface{})
return nil, fmt.Errorf("[%s] %s: %s", response.Status(), e["type"], e["reason"])
}
}
......@@ -54,5 +51,7 @@ func (e Elastic) Search(body []byte) ([]byte, error) {
}
func (e Elastic) GetTotalHitCount(v interface{}) int64 {
return int64(v.(map[string]interface{})["value"].(float64))
m, _ := v.(map[string]interface{})
f, _ := m["value"].(float64)
return int64(f)
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册