提交者
GitHub
Merge pull request #4 from aleiphoenix/master
Detect errors in bulk response
正在显示
1 个修改的文件
包含
15 行增加
和
1 行删除
@@ -54,8 +54,22 @@ func (w *Writer) execute(vals []interface{}) { | @@ -54,8 +54,22 @@ func (w *Writer) execute(vals []interface{}) { | ||
54 | req := elastic.NewBulkIndexRequest().Index(pair.index).Type(w.docType).Doc(pair.val) | 54 | req := elastic.NewBulkIndexRequest().Index(pair.index).Type(w.docType).Doc(pair.val) |
55 | bulk.Add(req) | 55 | bulk.Add(req) |
56 | } | 56 | } |
57 | - _, err := bulk.Do(context.Background()) | 57 | + resp, err := bulk.Do(context.Background()) |
58 | + | ||
58 | if err != nil { | 59 | if err != nil { |
59 | logx.Error(err) | 60 | logx.Error(err) |
61 | + return | ||
62 | + } | ||
63 | + | ||
64 | + // bulk error in docs will report in response items | ||
65 | + if resp.Errors { | ||
66 | + for _, imap := range resp.Items { | ||
67 | + for _, item := range imap { | ||
68 | + if item.Error == nil { | ||
69 | + continue | ||
70 | + } | ||
71 | + logx.Error(item.Error) | ||
72 | + } | ||
73 | + } | ||
60 | } | 74 | } |
61 | } | 75 | } |
-
请 注册 或 登录 后发表评论