-
Notifications
You must be signed in to change notification settings - Fork 17
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
TCP Client to ES Deprecated - Switch to HTTP #34
Comments
Hi @bacoboy, Several week ago, I've tried to add support of elastic4s HTTP client to Elastic4play but some operations were not supported. I've updated elastic4s version and it works better but there are many problems to support both TCP and HTTP. For you information, we have many problems with ElasticSearch and we seriously think about migration to another database technology. But migration to a new database is not an easy task and will take time. |
Yes, because you are using the the result classes directly you would have to create an abstraction layer anyway -- in which case you could support a plugable persistence layer -- including a standard database. |
@To-om does 5e2e12b fully implement the HTTP transport, or is there more to do. I'm ultimately keen to update TheHive to use an ES 6.x backend, but it seems the TCP transport and Netty dependencies are the stopper for that. Maybe there's other issues, but I thought I'd ask. I'm happy to test and provide useful feedback. I use Elastic extensively with the @rocknsm project and I'm looking to update my entire cluster to 6.x. Thanks! |
+1 I see the branch on which this work was done stopped, was it successful or a dead end. |
From version 1.11, HTTP communication is used. TCPClient is not used any longer. |
The elastic4s TCPClient you are using to communicate with ElasticSearch has deprecated the TCPClient in favor of the HTTPClient. It will be removed in the next major version of elastic4s which already has a first release candidate.
According to the README they say you can just swap out the import paths from
elastic-tcp
toelastic-http
and change code uses ofTCPClient
toHTTPClient
. That said, there is a warning about the responses being different fromclient.execute()
so the change is a little more involved:Once complete and added to TheHive, people can insert an aws authenticating proxy to use AWS Hosted ElasticSearch ending a standoff between TheHive developers and AWS dogma. Apparently support for a signed http transport in elastic4s is in the works.
Ideally a pluggable transport would allow people to pick and choose (tcp, http, http-aws) rather than be dictated to them.
Anyway this isn't about AWS ES but the TCP transport going away in the library you are using. Better to start a discussion about what to do and when than wait until the code atrophies.
The text was updated successfully, but these errors were encountered: