{"id":"82a50383123859b3","repo":"nestjs/nest","slug":"method-is-not-supported-for-kafka-server","errorCode":null,"errorMessage":"Method is not supported for Kafka server","messagePattern":"Method is not supported for Kafka server","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/microservices/server/server-kafka.ts","lineNumber":273,"sourceCode":"        this.send(replayStream$, publish);\n      },\n    );\n  }\n\n  public unwrap<T>(): T {\n    if (!this.client) {\n      throw new Error(\n        'Not initialized. Please call the \"listen\"/\"startAllMicroservices\" method before accessing the server.',\n      );\n    }\n    return [this.client, this.consumer, this.producer] as T;\n  }\n\n  public on<\n    EventKey extends string | number | symbol = string | number | symbol,\n    EventCallback = any,\n  >(event: EventKey, callback: EventCallback) {\n    throw new Error('Method is not supported for Kafka server');\n  }\n\n  private combineStreamsAndThrowIfRetriable(\n    response$: Observable<any>,\n    replayStream$: ReplaySubject<unknown>,\n  ) {\n    return new Promise<void>((resolve, reject) => {\n      let isPromiseResolved = false;\n      response$.subscribe({\n        next: val => {\n          replayStream$.next(val);\n          if (!isPromiseResolved) {\n            isPromiseResolved = true;\n            resolve();\n          }\n        },\n        error: err => {\n          if (err instanceof KafkaRetriableException && !isPromiseResolved) {","sourceCodeStart":255,"sourceCodeEnd":291,"githubUrl":"https://github.com/nestjs/nest/blob/6ec0e2783d15290732447f304d8549b591b9749e/packages/microservices/server/server-kafka.ts#L255-L291","documentation":"Error \"Method is not supported for Kafka server\" thrown in nestjs/nest.","triggerScenarios":"Thrown at packages/microservices/server/server-kafka.ts:273 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Do not register event handlers via server.on() on a Kafka server; Kafka transport does not support it.","Use Kafka consumer/producer event instrumentation (consumer.on / producer.on) via the client instead, or NestJS EventEmitter for app-level events."],"exampleFix":"// Instead of server.on('error', cb), hook into the consumer:\nconst consumer = kafkaClient.consumer({ groupId: 'g' });\nconsumer.on(consumer.events.CRASH, cb);","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"6ec0e2783d15290732447f304d8549b591b9749e","analyzedAt":"2026-08-03T17:42:23.673Z","schemaVersion":2}