elastic.go 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package elastic
  2. import (
  3. "context"
  4. "eta/eta_index_lib/models"
  5. "eta/eta_index_lib/utils"
  6. "fmt"
  7. )
  8. // EsAddOrEditEdbInfoData 新增/修改es中的指标数据
  9. func EsAddOrEditEdbInfoData(indexName, docId string, item *models.EdbInfoList) (err error) {
  10. defer func() {
  11. if err != nil {
  12. fmt.Println("EsAddOrEditData Err:", err.Error())
  13. }
  14. }()
  15. client := utils.EsClient
  16. if err != nil {
  17. return
  18. }
  19. resp, err := client.Index().Index(indexName).Id(docId).BodyJson(item).Do(context.Background())
  20. if err != nil {
  21. fmt.Println("新增失败:", err.Error())
  22. return err
  23. }
  24. fmt.Println(resp)
  25. if resp.Status == 0 {
  26. fmt.Println("新增成功", resp.Result)
  27. err = nil
  28. } else {
  29. fmt.Println("AddData", resp.Status, resp.Result)
  30. }
  31. return
  32. }
  33. // EsAddOrEditDataSourceIndex 新增/修改es中的数据源指标
  34. func EsAddOrEditDataSourceIndex(indexName, docId string, item *models.SearchDataSource) (err error) {
  35. fmt.Println("索引名:", indexName)
  36. defer func() {
  37. if err != nil {
  38. tips := fmt.Sprintf("EsAddOrEditDataSourceIndex err: %v", err)
  39. utils.FileLog.Info(tips)
  40. }
  41. }()
  42. client := utils.EsClient
  43. resp, e := client.Index().Index(indexName).Id(docId).BodyJson(item).Refresh("true").Do(context.Background())
  44. if e != nil {
  45. err = fmt.Errorf("resp err, %v", e)
  46. return
  47. }
  48. if resp.Status != 0 {
  49. err = fmt.Errorf("result err, status: %d, result: %s", resp.Status, resp.Result)
  50. return
  51. }
  52. err = nil
  53. fmt.Println("data source write to es success", resp.Result)
  54. return
  55. }