Есть несколько «хакерских» способов достичь желаемого.Вместо этого вы можете использовать express.Route для регистрации промежуточного программного обеспечения на каждом маршруте, но я думаю, что вам могут потребоваться более конкретные журналы о GraphQL, а не запрос в частности.
context ()
Доступно какобратный вызов внутри ApolloServer, он получает объект с запросом и ответом.
const myServer = new ApolloServer({
schema: ...,
context:({ req, res }) => {
// log here
}
});
fortmatResponse ()
Доступен как обратный вызов внутри ApolloServer, он получает ответ и запрос.
const server = new Apollo.ApolloServer({
schema: ...,
formatResponse: (res, query) => {
// log here
// notice you must return the response
return res;
},
});
Источники: formatResponse , context
Edit
Еще одна вещь, которую вы можете сделать, - это проверить морган обратного вызова, если требуется.path совпадает с путем /graphQL
и регистрируется только в этой ситуации, но это почти то же самое, что регистрировать Express.Route с morgan