Sobes.tech
Junior — Middle

Como processar e fornecer uma mensagem de erro informativa na aplicação?

sobes.tech IA

Resposta da IA

Em Go, para lidar com erros e fornecer mensagens informativas, geralmente usa-se o tipo error e a função fmt.Errorf para criar erros com contexto.

Exemplo de manipulação e transmissão de erro com mensagem:

func readFile(filename string) error {
    data, err := os.ReadFile(filename)
    if err != nil {
        return fmt.Errorf("não foi possível ler o arquivo %s: %w", filename, err)
    }
    // processamento de data
    return nil
}

Aqui:

  • Usa-se uma envoltória de erro com %w para manter o erro original.
  • A mensagem contém o contexto do que aconteceu e onde.

Ao chamar a função, pode-se verificar o erro e exibi-lo:

err := readFile("config.json")
if err != nil {
    log.Println("Erro ao ler o arquivo:", err)
}

Essa abordagem ajuda a entender rapidamente a origem e a causa do erro, o que é importante para depuração e suporte ao aplicativo.