fix: make sure esClient is allocated before use (#13727)

This commit is contained in:
Harshavardhana 2021-11-22 12:46:46 -08:00 committed by GitHub
parent 28f95f1fbe
commit 08f4a0a816
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -179,6 +179,7 @@ func (target *ElasticsearchTarget) IsActive() (bool, error) {
if err != nil {
return false, err
}
return target.client.ping(ctx, target.args)
}
@ -187,7 +188,16 @@ func (target *ElasticsearchTarget) Save(eventData event.Event) error {
if target.store != nil {
return target.store.Put(eventData)
}
err := target.send(eventData)
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
err := target.checkAndInitClient(ctx)
if err != nil {
return err
}
err = target.send(eventData)
if xnet.IsNetworkOrHostDown(err, false) {
return errNotConnected
}