Проверка работоспособности сервера Apollo не вызывается
Это основная проблема, за которой я следил за документацией, и она не работает должным образом, пожалуйста, пролите немного света.
Итак, я создаю сервер grapqhl с Apollo-Server и пытаюсь заставить работать URL-адрес проверки работоспособности, который приведен здесь. https://www.apollographql.com/docs/apollo-server/features/health-checks
Вот код:
const { ApolloServer, makeExecutableSchema } = require('apollo-server')
const typeDefs = require('./schema/types/')
const resolvers = require('./schema/resolvers/')
const schema = makeExecutableSchema({ typeDefs, resolvers })
const server = new ApolloServer({
schema,
onHealthCheck: () => new Promise((resolve) => { console.log('hc called'); resolve() })
})
server
.listen({ port: 5000 })
.then(({ url }) => console.log(` Server ready at ${url}`))
.catch(() => console.log('error'))
Когда я запускаю сервер, я получаю этот журнал:
Server ready at http://localhost:5000/
Кроме того, я также могу увидеть схему в GraphQl-Playground, что означает, что мои typeDef и распознаватели в порядке, но когда я пингую URL:
{server_address}:5000/.well-known/apollo/server-health
Я получаю вывод как:
{
"status": "pass"
}
Без всякой записи в журнале: вызвал hc, который я добавил в код для ключа с именем "onHealthCheck", и на данный момент я также разрешил его, согласно документам.
Итак, где проблема и что я пропустил, пожалуйста, пролите немного света. Удачного кодирования:)
PS: я использую версию apollo-server 2.5.0, которая, как мне кажется, совсем недавно была обновлена с исправлением onHealthCheck, так как onHealthCheck не вызывается
1 ответ
Исправление было только что объединено с мастером 6 дней назад. Вам нужно обновить до более поздней версии, как 2.6.0-alpha.8
,