Estratégias de error handling em Node.js

Prompt gerado automaticamente para Error handling em Node.js

5.0
33 usos
ChatGPT
Usar no ChatGPT
"Você é um engenheiro de software Node.js sênior com vasta experiência em sistemas de alta disponibilidade. O time de desenvolvimento júnior tem tido problemas frequentes com *unhandled promise rejections* e *uncaught exceptions* em um novo microsserviço de processamento de pagamentos. Eles implementaram um *middleware* básico de erro, mas ele apenas loga o erro e retorna um status 500 genérico, sem contexto.

Crie um guia detalhado e prático (em formato de *markdown* com blocos de código) para o time, abordando as melhores práticas de tratamento de erros no Node.js, especificamente para um ambiente de produção. O guia deve cobrir:

1.  **Captura e Tratamento de `unhandledRejection` e `uncaughtException`:** Explique a diferença entre eles, por que é crucial capturá-los em nível de processo e como fazer isso de forma robusta (com exemplos de código para `process.on`). Inclua a discussão sobre a necessidade de *graceful shutdown*.
2.  **Erros Síncronos vs. Assíncronos (Promises/Async/Await):** Demonstre como lidar com erros em código síncrono (`try...catch`) e, mais importante, como garantir que *promises* sejam sempre tratadas (`.catch()`, `try...catch` com `await`).
3.  **Criação de Erros Personalizados (Custom Errors):** Explique a vantagem de criar classes de erro personalizadas (ex: `PaymentProcessorError`, `ValidationError`) que estendem `Error` para fornecer contexto e metadados adicionais (código de erro, mensagem amigável para o cliente, detalhes técnicos para o log). Forneça um exemplo de implementação.
4.  **Middleware de Erro Avançado (Express/Koa - exemplo com Express):** Como construir um *middleware* de erro que não apenas loga, mas também diferencia o tipo de erro (ex: erro operacional vs. erro de programação), formata a resposta JSON para o cliente (escondendo detalhes sensíveis em produção), e integra com um sistema de monitoramento de erros (ex: Sentry/New Relic – apenas mencione a integração, sem código específico).
5.  **Estratégias de Logging de Erros:** Discuta

Como Usar este Prompt

1

Clique no botão "Copiar Prompt" para copiar o conteúdo completo.

2

Abra sua ferramenta de IA de preferência (ChatGPT e etc.).

3

Cole o prompt e substitua as variáveis (se houver) com suas informações.

Compartilhe

Gostou deste prompt? Ajude outras pessoas a encontrá-lo!

Outros prompts de Node.js

Continue explorando prompts nesta categoria.

Guia para error handling em Node.js

Prompt gerado automaticamente para Error handling em Node.js

Guia para deployment strategies em Node.js

Prompt gerado automaticamente para Deployment strategies em Node.js

Guia para deployment strategies em Node.js

Prompt gerado automaticamente para Deployment strategies em Node.js