Fork me on GitHub
#datomic
<
2020-06-10
>
katox09:06:53

Hi, we might need to transfer an existing datomic cloud system to a new aws account. What is the best way to handle that?

kenny22:06:06

When deploying a Datomic HTTP direct endpoint, the final step in creating an API gateway says: > Enter your `http://$(NLB URI):port/{proxy}` as the "Endpoint URL". This NLB URI can be found in the Outputs tab of your compute or query group https://console.aws.amazon.com/cloudformation/home#/stacks under the "LoadBalancerHttpDirectEndpoint" key The value in my CF Outputs tab is formatted like this "http://entry.my-datomic-system-name.us-west-2.datomic.net:8184". If I were to follow the docs exactly, I would end up with a Endpoint URL that looks like this: http://http://entry.my-datomic-system-name.us-west-2.datomic.net:8184/{proxy}. I'm assuming that is not what the docs wanted, correct?

Joe Lane22:06:23

@kenny You can watch the video tutorial on http direct for more clear instructions. Definitely don't do http://http://...

kenny22:06:16

I didn't 🙂 Following the docs verbatim would lead to that URL. Surprised it wasn't caught. Not really a huge fan of video docs...

kenny22:06:15

Any idea why all calls to a Datomic http direct endpoint result in a 500 with this response?

{
    "message": "Internal server error"
}
The API gateway logs end with a very unhelpful error.
Execution failed due to configuration error: There was an internal error while executing your request

kenny22:06:36

I don't think the request is even hitting Datomic.

Joe Lane23:06:44

Did you watch the Video Tutorial?

kenny23:06:15

Is there really info embedded in a video tutorial that is not in the textual docs?

Joe Lane23:06:21

The error message is telling you that you misconfigured it.

Joe Lane23:06:29

I've seen that error before when I was working on creating an http-direct deployment and, in fact, I did misconfigure it. You're totally right that it isn't hitting datomic.

kenny23:06:35

Watched the video. I have followed the steps exactly & still get the 500 :thinking_face:

kenny23:06:54

Full example logs:

Execution log for request 6c5c6e23-0d88-4ac3-a160-374fc3842a83
Wed Jun 10 23:11:17 UTC 2020 : Starting execution for request: 6c5c6e23-0d88-4ac3-a160-374fc3842a83
Wed Jun 10 23:11:17 UTC 2020 : HTTP Method: POST, Resource Path: /datomic
Wed Jun 10 23:11:17 UTC 2020 : Method request path: {proxy=datomic}
Wed Jun 10 23:11:17 UTC 2020 : Method request query string: {}
Wed Jun 10 23:11:17 UTC 2020 : Method request headers: {}
Wed Jun 10 23:11:17 UTC 2020 : Method request body before transformations: 
Wed Jun 10 23:11:17 UTC 2020 : Endpoint request URI: 
Wed Jun 10 23:11:17 UTC 2020 : Endpoint request headers: {x-amzn-apigateway-api-id=eq2azct4a2, User-Agent=AmazonAPIGateway_eq2azct4a2, Host=}
Wed Jun 10 23:11:17 UTC 2020 : Endpoint request body after transformations: 
Wed Jun 10 23:11:17 UTC 2020 : Sending request to 
Wed Jun 10 23:11:17 UTC 2020 : Execution failed due to configuration error: There was an internal error while executing your request
Wed Jun 10 23:11:17 UTC 2020 : Method completed with status: 500
Everything appears correct. I wish aws had a bit more info as to what "configuration" could be causing this error.

kenny23:06:54

This is a uname deployment. I assume that can't matter though.