Troubleshooting Neptune Full-Text Search - Amazon Neptune

Troubleshooting Neptune Full-Text Search

To diagnose issues with replication from Neptune to Elasticsearch, consult the CloudWatch Logs for your poller Lambda function. These logs provide details about the number of records read from the stream and the number of records replicated successfully to Elasticsearch.

You can also change the LOGGING level for your Lambda function by changing the LoggingLevelenvironment variable.

The Neptune streams consumer application publishes two metrics on CloudWatch that can also help you diagnose problems:

  • StreamRecordsProcessed – The number of records processed by the application per unit of time. Helpful in tracking the application run rate.

  • StreamLagTime – The time difference in milliseconds between the current time and the commit time of a stream record being processed. This metric shows how much the consumer application is lagging behind.

In addition, all the metrics related to the replication process are exposed in a dashboard in CloudWatch under the same name same as the ApplicationName provided when you instantiated the application using the CloudWatch template.

You can also choose to create a CloudWatch alarm that is triggered whenever polling fails more than twice in a row. Do this by setting the CreateCloudWatchAlarm field to true when you instantiate the application. Then specify the email addresses that you want to be notified when the alarm is triggered.

Troubleshooting a process that fails while reading records from the stream

If a process fails while reading records from the stream, make sure that you have the following:

  • The stream is enabled on your cluster.

  • The Neptune stream endpoint is in the correct format:

    • For Gremlin: https://your cluster endpoint:your cluster port/gremlin/stream

    • For SPARQL: https://your cluster endpoint:your cluster port/sparql/stream

  • The DynamoDB endpoint is configured for your VPC.

  • The monitoring endpoint is configured for your VPC subnets.

Troubleshooting a process that fails while writing data to Elasticsearch

If a process fails while writing records to Elasticsearch, make sure that you have the following:

  • Your Elasticsearch version is 7.0 or above.

  • Elasticsearch can be accessed from the poller Lambda function in your VPC.

  • The security policy attached to Elasticsearch allows inbound HTTP/HTTPS requests.