Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NestJS Kafka #316

Closed
TorinAsakura opened this issue Sep 17, 2024 · 0 comments · Fixed by #317
Closed

NestJS Kafka #316

TorinAsakura opened this issue Sep 17, 2024 · 0 comments · Fixed by #317
Assignees
Labels
feature New feature or request
Milestone

Comments

@TorinAsakura
Copy link
Member

С чем связан запрос на фичу?

NestJS не имеет встроенной поддержки

Расскажите как вы это себе видите

  1. kafkaLogCreator: Создаёт функцию для обработки логов Kafka. Использует Logger для кастомного логирования с уровнями логов (error, warn, info, debug). Может работать с различными пространствами имён (namespace), создавая подлоггер при необходимости.
  2. KafkaConfigFactory: Конфигурирует Kafka-клиент, используя либо переданные параметры, либо значения из переменных окружения. Возвращает объект конфигурации для Kafka, включая clientId и список брокеров.
  3. KafkaFactory: Использует KafkaConfigFactory для создания экземпляра Kafka с учётом настроек логирования (logCreator). Позволяет передавать дополнительные опции через параметр options.
  4. KafkaModule: Предоставляет метод register, позволяющий зарегистрировать модуль с конфигурацией Kafka. Внедряет и экспортирует KafkaConfigFactory и KafkaFactory.

Зачем это нужно?

  1. Централизация конфигурации Kafka: Модуль позволяет легко и централизованно управлять конфигурацией и логированием для подключения к Kafka.
  2. Гибкая настройка логирования: kafkaLogCreator обеспечивает интеграцию кастомного логирования с использованием kafkajs.
  3. NestJS-стиль внедрения зависимостей: Использование DI (Dependency Injection) NestJS для подключения к Kafka, что упрощает поддержку и масштабирование кода.

Материалы

https://docs.nestjs.com/microservices/kafka

@TorinAsakura TorinAsakura added the feature New feature or request label Sep 17, 2024
@TorinAsakura TorinAsakura added this to the NestJS v2 milestone Sep 17, 2024
@TorinAsakura TorinAsakura self-assigned this Sep 17, 2024
@TorinAsakura TorinAsakura linked a pull request Sep 18, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant