3

Is there any HTTP/TCP endpoint for a gremlin-server health check? Currently, we are using the default TCP port but it doesn't seem to indicate the gremlin-server's health.

We noticed that gremlin-server crashed and was not running but the health check kept passing. We are using AWS Classic Load Balancer.

monali01
  • 160
  • 1
  • 9

1 Answers1

4

Have you enabled an HTTP endpoint for the Gremlin service? The document above explains:

While the default behavior for Gremlin Server is to provide a WebSocket-based connection, it can also be configured to support plain HTTP web service. The HTTP endpoint provides for a communication protocol familiar to most developers, with a wide support of programming languages, tools and libraries for accessing it.

If so, you can use an ELB HTTP health check to a target like this:

HTTP:8182/?gremlin=100-1

With a properly configured service, this query will return a 200 HTTP status code, which will indicate to the ELB that the service is healthy.

Rodrigo Murillo
  • 13,080
  • 2
  • 29
  • 50
  • I have been following version 3.2.3 documentation which doesn't have websocket and http both option, that came out later in 3.2.6 I believe. I am using https://github.com/awslabs/dynamodb-janusgraph-storage-backend project which is currently on 3.2.3 But yes, that is exactly what I am looking for, thanks. – monali01 Oct 01 '17 at 18:01