При выставлении оценок используйте рекомендации RSSchool.
Максимальная оценка - 110 баллов.
- Логирование (как минимум
url,query parameters,body) для всех запросов к серверу, а также кода ответа (status code) осуществляется с использованиемmiddleware+20 баллов - Добавлена централизованная обработка всех ошибок, которая включает отправку респонса с соответствующим кодом http статуса и их логирование с использованием
middleware+20 баллов - Добавлены обработка и логирование ошибок на событие
uncaughtException+10 баллов - Добавлены обработка и логирование ошибок на событие
unhandledRejection+10 баллов - Процесс логирования осуществляется единственным модулем (т.е. код, осуществляющий логирование, находится в одном модуле, при этом этот модуль может использоваться внутри других модулей) +20 баллов
- Логи записываются в файл +20 баллов
- Логи ошибок записываются в отдельный файл (либо только в него, либо в дополнение к записи в общий файл) +10 баллов
Штрафы:
- Наличие изменений в тестах либо в workflow минус 100 баллов
- Внесение изменений в репозиторий после дедлайна не считая коммиты, вносящие изменения только в
Readme.mdминус 30% от максимального балла за задание (для этого задания 33 балла) - За каждый непрошедший тест -10 баллов
- За каждую ошибку линтера при запуске
npm run lintна основе локального конфига, равно как и за ошибки компиляции на основе локального tsconfig -10 баллов (именноerrors, неwarnings) - Имеются явно указанные типы
any,unknown-20 баллов за каждое использование - За отсутствие отдельной ветки для разработки -20 баллов
- За отсутствие
Pull Request-20 баллов - За неполную информацию в описании
Pull Request(отсутствует либо некорректен один из 3 обязательных пунктов) -10 баллов - Меньше 3 коммитов в ветке разработки, не считая коммиты, вносящие изменения только в
Readme.md— -20 баллов
Подсказки:
- (3 пункт) Для проверки пропишите
throw Error('Oops!')ВНЕ инициализации express и ПОСЛЕprocess.on('uncaughtException', () => {}). Например:
// Express initialization
const app = express().use(...);
// Exceptions catcher
process.on('uncaughtException'...);
// PUT IT HERE
throw Error('Oops!');
module.exports = app;Как результат: вывод в консоли отловленной ошибки
- (4 пункт) Для проверки пропишите
Promise.reject(Error('Oops!'))ВНЕ инициализации express и ПОСЛЕprocess.on('unhandledRejection', () => {}):
// Express initialization
const app = express().use(...);
// Exceptions catcher
process.on('unhandledRejection'...);
// PUT IT HERE
Promise.reject(Error('Oops!'));
module.exports = app;Как результат: вывод в консоли отловленной ошибки