diff --git a/packages/apollo-engine-reporting/src/agent.ts b/packages/apollo-engine-reporting/src/agent.ts index dae6c1bdad8..706e9b36cc4 100644 --- a/packages/apollo-engine-reporting/src/agent.ts +++ b/packages/apollo-engine-reporting/src/agent.ts @@ -403,7 +403,11 @@ export class EngineReportingAgent { }); if (curResponse.status >= 500 && curResponse.status < 600) { - throw new Error(`${curResponse.status}: ${curResponse.statusText}`); + throw new Error( + `${curResponse.status}: ${ + curResponse.statusText + } (${await curResponse.text()})`, + ); } else { return curResponse; } diff --git a/packages/apollo-server-integration-testsuite/src/ApolloServer.ts b/packages/apollo-server-integration-testsuite/src/ApolloServer.ts index 29687688743..8ffba9099da 100644 --- a/packages/apollo-server-integration-testsuite/src/ApolloServer.ts +++ b/packages/apollo-server-integration-testsuite/src/ApolloServer.ts @@ -1953,7 +1953,7 @@ export function testApolloServer( const fakeEngineServer = http.createServer(async (_, res) => { await return502Promise; res.writeHead(502); - res.end(); + res.end('Important text in the body'); }); await new Promise(resolve => { fakeEngineServer.listen(0, '127.0.0.1', () => { @@ -2006,6 +2006,7 @@ export function testApolloServer( // Make sure we can get the 502 error from reporting. const sendingError = await reportErrorPromise; expect(sendingError.message).toContain('Error: 502: Bad Gateway'); + expect(sendingError.message).toContain('Important text in the body'); } finally { await new Promise(resolve => fakeEngineServer.close(() => resolve())); }