
DevOps, Logging та CI/CD
Winston, Pino, structured logging, correlation IDs, APM, GitHub Actions, GitLab CI, pipeline, автоматизоване тестування, автоматизація розгортання
1Яка основна різниця між Winston і Pino?
Яка основна різниця між Winston і Pino?
Відповідь
Pino розроблений, щоб бути надзвичайно швидким із низькими накладними витратами (асинхронний за замовчуванням), тоді як Winston має більше можливостей, але дещо повільніший. Pino за замовчуванням використовує структурований JSON і уникає синхронних перетворень, що робить його ідеальним для високопродуктивних застосунків. Winston пропонує більше transport і опцій форматування з коробки.
2Що таке correlation ID у контексті логування?
Що таке correlation ID у контексті логування?
Відповідь
Correlation ID — це унікальний ідентифікатор (UUID), пов'язаний із HTTP-запитом або подією, який дозволяє відстежувати всі пов'язані операції в різних сервісах і логах. Це полегшує налагодження розподілених систем, групуючи всі логи однієї транзакції. Зазвичай він передається через HTTP-заголовки (X-Correlation-ID).
3Яка основна перевага structured logging?
Яка основна перевага structured logging?
Відповідь
Structured logging (логи у форматі JSON з полями ключ-значення) дозволяє легко фільтрувати, шукати та аналізувати логи за допомогою інструментів на кшталт Elasticsearch, Grafana чи Datadog. На відміну від логів у вигляді звичайного тексту, структуровані логи можна ефективно індексувати та запитувати. Це значно покращує спостережуваність і налагодження у продакшені.
Які стандартні рівні логування у Winston і Pino?
Як реалізувати глобальний logger у NestJS?
+22 питань зі співбесід
Інші теми співбесід Node.js / NestJS
Основи Node.js
Основні API Node.js
Асинхронне програмування
Основи Express.js
Основи NestJS
Проєктування REST API
Валідація та DTO
Документація API та контракти
Обробка помилок
Юніт-тестування
Планування завдань
Модулі та DI у NestJS
Конфігурація та керування середовищами
Автентифікація JWT
Авторизація та RBAC
База даних з TypeORM
Prisma ORM
Middleware та Interceptors
Завантаження файлів
WebSockets
GraphQL з NestJS
Наскрізне тестування (End-to-End)
Кешування з Redis
Черги з Bull
Docker та контейнеризація
Мікросервіси
Найкращі практики безпеки
Продуктивність і хмарне розгортання
Опануй Node.js / NestJS для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно