This is a barebones example that demonstrates the apollo-server issue #3052.
When using a managed federated gateway, the underlying service errors are not properly relayed through to the client.
- Create a new apollo engine project and setup your .env file with the
ENGINE_API_KEY
. - Initial Run
- Comment out line 4 of
src/gateway.js
- Uncomment lines 6-20 of
src/gateway.js
- Comment out line 4 of
- Execute
npm start
to begin the services - In a new terminal run the following commands to push managed services
- npm run push:serviceA
- npm run push:serviceB
- For shits and giggles, navigate to http://localhost:4000 and execute the following query to see that the error is relayed properly.
query Ping { pingServiceA pingServiceB }
- Revert comments from above
- Uncomment line 4 of
src/gateway.js
- Comment out lines 6-20 of
src/gateway.js
- Uncomment line 4 of
- Execute
npm start
- Follow step 5 and you will see an error that does not contain the message that is expected, but rather something alone the lines of: "addProtobufError called after stopTiming!"