4
respostas

Ajuda em integrar com o heroku

Boa noite, alguem já integrou o bando do mongo db e fez deploy usando o heroku? Estou com uma aplicação exatamente igual ao desenvolvida em aula, somente com a alteração que eu coloquei a url de conecção em uma variavel local e acrescentei essas linhas no codigo:

const uri = process.env.MONGODB_URI

mongoose.connect(uri,{
    useNewUrlParser: true,
    useUnifiedTopology: true,
  });

No momento a primeira tela abre, mas quando tento navegar usando /algumaRota ele aparece esse erro: (a mesma rota pelo localhost funciona)

2022-04-13T22:54:16.019433+00:00 heroku[web.1]: Process exited with status 1
2022-04-13T22:54:16.085008+00:00 heroku[web.1]: State changed from up to crashed
2022-04-13T22:54:38.099988+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/projects" host=qapp-backend-app.herokuapp.com request_id=03565a1b-b074-4d10-b008-b6c612304d7f fwd="191.250.189.156" dyno= connect= service= status=503 bytes= protocol=https

Eu também adicionei a uri do mongoDB nas variaveis do heroku. Eu preciso acrescentar a URL que eu criei no heroku em algum lugar para ele entender? Está faltando algo?

4 respostas

Oi Erica, tudo bem? Esse erro pode estar acontecendo por outros motivos além do MongoDB, essa variável MONGODB_URI está configurada no projeto, mas é uma URL de algum MongoDB do Heroku? Você está usando aqueles Addon-s do Heroku? Me conta mais como você colocou sua aplicação no Heroku pra que eu entenda todos os passos que você fez e tentar te ajudar.

O problema que atualmente foi removido o add-ons do Mongo do Heroku e agora a interação e pelo MongoDB Atlas. https://devcenter.heroku.com/changelog-items/1823#:~:text=The%20mLab%20team%20has%20discontinued,the%20Dashboard%20or%20the%20CLI.

Realizei esse passo a passo e mesmo assim não consigo integrar https://www.mongodb.com/developer/how-to/use-atlas-on-heroku/

Esse é meu github se quiser dar uma olhada: https://github.com/kika-cavalher/qapp-backend Como estou usando o mesmo codigo de aula, fiquei na duvida se estou fazendo algo errado ou se o erro está no código.

Estranho a primeira renderização que não puxa do banco o heroku não apresentar erro e nas rotas do banco apresentar, não consigo achar a solução online.

Estranho, e ele não loga nada nos logs do Heroku sobre algum erro de conexão ou algo do tipo? Tudo que aparece nos Logs do Heroku são esses logs que você já postou aqui?

Bom dia Erica, conseguiu resolver? Eu tive o mesmo problema e me ocorreu que poderia ser o ip de acesso no atlas que estava configurado para ser meu ip local. Inclui um ip 0.0.0.0 no banco e depois de uns 2 minutos a aplicação começou a rodar. Também inclui um start no package.json

"scripts": {
    "dev": "nodemon server.js",
    "start": "node server.js"
  }