-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[exporter/elasticsearch] Support both v7 and v8 elasticsearch clients and default to v8 #32454
Comments
Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
Agree, this upgrade has been mentioned many times and I think it is a necessary upgrade |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
Still relevant, and this should be ready to implement as elasticsearchexporter is now using go-docappender |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
Still relevant as mentioned above. |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
/label -Stale |
@andrzej-stencel @ChrsMark any progress on this? |
@TylerHelmuth We haven't started working on this yet so no progress so far. |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
/label -Stale |
I was looking into updating to go-elasticsearch/v8 again. go-elasticsearch/v8 can be used with 7.17.x, but not older ES versions, as shown in #16310. Given that 7.x versions of Elasticsearch prior to 7.17.x are unsupported by Elastic, is it necessary to continue support for them in the exporter? If users wish to send to an old, unsupported version of ES, they could pin to an older version of OTel Collector too. |
Sounds fine to me. On a related note, I just found out that an issue with OTel mapping mode with < 8.12: #37283 . There is no problem compiling and running the code, as es exporter now uses v8 esapi on a v7 client, which is fine for most part until we start using params supported in a newer v8. This is also the reason behind "forward compatibility" in go-elasticsearch. Using a v8.12 go-elasticsearch that supports require_data_stream will cause the request to fail when sent to 8.11 ES. I imagine we'll have to actively work around these compat issues in the es exporter, then I wonder if #37187 cc @felixbarny |
Maybe for a separate issue, but I was wondering if we could unify the code of creating Elasticseach clients into an internal shared package. That way, any component that connects to Elasticsearch could reuse that code. Note that at the moment the Elasticsearch receiver does not use the |
After discussing options with code owners, I've opened #37333 for review. @rogercoll I think having a common package for Elasticsearch client config sounds sensible. |
Component(s)
exporter/elasticsearch
Is your feature request related to a problem? Please describe.
Currently elasticsearch exporter uses go-elasticsearch v7 because of the "forward compatibility" described in https://github.com/elastic/go-elasticsearch?tab=readme-ov-file#elasticsearch and raised in #16310. However, this means that v8 stack users are also forced to use go-elasticsearch v7 as mentioned in #29689. v8 go-elasticsearch client gets the bugfixes and features that may not be available in v7 go-elasticsearch client. Elasticsearch exporter should support both v7 and v8 elasticsearch client, and ideally default to v8 (which may be a breaking change).
Describe the solution you'd like
Describe alternatives you've considered
No response
Additional context
Related to #32378
The text was updated successfully, but these errors were encountered: