Graphql apollo fedaration解析字段时不调用Nestjs拦截器

Graphql apollo fedaration解析字段时不调用Nestjs拦截器,graphql,nestjs,apollo-server,Graphql,Nestjs,Apollo Server,我正试图用graphql、apollo federation和nestjs创建一个日志拦截器。我正在跟踪并将代码修改为 import { Injectable, NestInterceptor, ExecutionContext, CallHandler, } from '@nestjs/common'; import { Observable } from 'rxjs'; import { tap } from 'rxjs/operators'; @Injectable() export

我正试图用graphql、apollo federation和nestjs创建一个日志拦截器。我正在跟踪并将代码修改为

import {
  Injectable, NestInterceptor, ExecutionContext, CallHandler,
} from '@nestjs/common';
import { Observable } from 'rxjs';
import { tap } from 'rxjs/operators';

@Injectable()
export class LoggingInterceptor implements NestInterceptor {
  public intercept(context: ExecutionContext, next: CallHandler): Observable<any> {
    console.log('Before...');

    const now = Date.now();
    return next
      .handle()
      .pipe(
        tap(() => console.log(`After... ${Date.now() - now}ms`)),
      );
  }
}
在tcpdump中,当我向联合发布graphql请求时,apollo联合和该服务之间存在一个http请求。尽管如此,我的拦截器没有日志。但是,如果我直接向这个ms(没有联邦)发出graphql请求,日志就在那里

还有一个问题,我想捕获响应头和字符串体。我认为这只能在express级别上完成,但不知何故根本不起作用,我尝试了所有的方法

const app: INestApplication = await NestFactory.create(AppModule, new ExpressAdapter(expressApp), {
    logger,
  });
app.useGlobalInterceptors(new LoggingInterceptor());