Eu tenho um aplicativo RoR trabalhando no meu computador local, mas quando o envio para heroku, ele trava. O log de erros fornece um erro H10 e diz:
2012-11-21T15:26:47+00:00 app[web.1]: from /app/vendor/bundle/ruby/1.9.1/gems/newrelic_rpm-3.4.2/lib/new_relic/control/instance_methods.rb:95:in `start_agent'
2012-11-21T15:26:48+00:00 heroku[web.1]: State changed from starting to crashed
2012-11-21T15:26:48+00:00 heroku[web.1]: Process exited with status 1
2012-11-21T15:26:59+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:27:00+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:30:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:30:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:30:59+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:31:19+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:31:19+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:32:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
2012-11-21T15:32:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes=
Editar:
2012-11-22T10:00:58+00:00 app[web.1]:
2012-11-22T10:00:59+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno=web.1 queue=0 wait=0ms connect=1ms service=26ms status=200 bytes=0
Alguém já teve isso antes e sabe o que pode estar causando o problema? Não consigo encontrar uma solução.
Obrigado.
ruby-on-rails
deployment
heroku
bskool
fonte
fonte
Respostas:
Corri para o mesmo erro acima, o aplicativo estava travando no heroku (rodando bem no dev), mas os logs de erro no heroku não revelavam nenhuma pista. Li outras respostas nesta página e comecei a suar depois de ver "reconstruir o aplicativo". Achei que talvez pudesse entrar no console heroku e olhar em volta. Eu fiz e até o console travou, mas desta vez me disse o porquê. Era uma variável obscura que esqueci de excluir durante uma sessão de solução de problemas, horas antes. Não estou dizendo que você terá o mesmo problema, mas encontrei mais informações ao tentar acessar o console. Espero que isto ajude.
fonte
heroku restart
me ajudou a identificar meu problema. Minhabin
pasta estava faltando.Eu estava tendo o mesmo problema. Logs não estavam me dando nenhuma pista também. Então, reduzi a escala e subi de volta os dynos. Isso resolveu o problema para mim:
Esperou alguns segundos ...
fonte
heroku restart
foi a solução que funcionou para mim e acho que (nos bastidores) esse é um truque semelhante. A reinicialização será implementada parando todos os dynos e iniciando-os novamente.Esta é a melhor opção, pois irá fornecer um erro no seu terminal, que será muito mais detalhado do que o erro 'app crashed' nos seus logs Heroku.
fonte
me ajudou a colocar meu dinamômetro funcionando novamente. Sou novo no Heroku, mas feliz por saber agora.
fonte
isso aconteceu comigo quando eu estava ouvindo na porta errada
Mudei meu listen () para "process.env.PORT" para:
ao invés de
fonte
Teve o mesmo problema esta noite. Não é um erro muito útil, então tentei executar no console
falhou e me deu um erro muito mais útil. Eu tinha me esquecido de excluir uma chamada de método na produção. Depois de corrigir isso, o aplicativo funcionou bem.
fonte
SyntaxError
. Os logs não davam muita informação, mas davamrails c
.Eu resolvi esse problema pressionando para o Git:
então empurre para Heroku:
então rake db: migrate no Heroku:
fonte
Consegui não incluir meu arquivo .gitignore -> que quebra o heroku. #doh
Aqui está um arquivo .gitignore em funcionamento
Para criar um arquivo .gitignore, no terminal, navegue até o diretório de aplicativos e use o seguinte comando
Em seguida, você pode abri-lo no seu editor de texto e inserir o código acima.
fonte
No meu caso, eu estava usando variáveis ENV no meu aplicativo, mas não foi definido na configuração heroku.
O console heroku deu o erro adequado:
Em seguida, defina a configuração ENV
Reinicie o Heroku
funciona!!
fonte
Eu estava recebendo esse mesmo erro de aplicativo H10 no Heroku. Cliquei em 'reiniciar todos os dynos' na interface heroku e o problema foi resolvido.
fonte
Eu tive
H10
com Heroku e Node devido ao nome errado do arquivo de código principal. Editarpackage.json
:Ou renomeie o arquivo.
fonte
Veja se você recebe
nos logs durante a execução do comando (heroku logs -t), se sim, execute
Não sobrescreva seus arquivos, no final, este comando criará
envie esses arquivos para o heroku e pronto.
fonte
A raiz do problema que eu estava enfrentando era devido a não ter um banco de dados. Para resolver o problema, primeiro exportei meu banco de dados local:
Em seguida, importou-o para o Heroku:
As variáveis para substituir nestes exemplos são:
mypassword
,myuser
,mydb
ehttp://site.tld/mydb.dump
. Observe que eu tive que carregar o despejo em um servidor temporário.Resolvendo todos os meus problemas, escrevi um guia rápido sobre como implantar o Enki no Heroku, que pode ser encontrado aqui .
fonte
Eu recebi o mesmo erro acima de "aplicativo travado" e os logs do aplicativo heroku não mostram muitas informações relacionadas aos motivos de erro da mensagem. Em seguida, reiniciei os dynos no heroku e, em seguida, ele mostrou o erro dizendo chave adicional em um dos arquivos index.js. na minha instalação. O problema foi corrigido depois de removido e reimplementado o aplicativo no heroku.
Espero que isso seja útil para alguém que enfrenta o mesmo problema.
fonte
Depois de ler toda a lista de respostas, deparei-me com este site: https://status.heroku.com/, que detalha o status / incidentes atuais com o Heroku. É sempre seguro verificar se há incidentes antes de bater com a cabeça na parede. Para mim, foi o relatório de incidente em anexo publicado no link acima mencionado que estava causando o erro.
fonte
No meu caso, o que
Procfile
eu usei estava quebrando tudo. O Heroku procuraProcfile
e aplica suas configurações ao iniciar o aplicativo - claramente as configurações de desenvolvimento que eu usei não faziam sentido para o servidor prod. Eu tive que mudar o nomeProcfile.dev
e tudo começou a funcionar normalmente.fonte
Eu tive o mesmo problema, fiz o seguinte
Ele identificou um erro de sintaxe e vírgula ausente nos parâmetros permitidos de um controlador. Como mencionado acima, os logs do Heroku não forneceram informações suficientes para solucionar o problema.
Eu não vi o aplicativo travar a mensagem no Heroku anteriormente.
fonte
uninitialized constant
erro no Heroku que não estava presente localmente. Embora ainda precise resolver isso, consegui recuperar uma implantação em funcionamento.Se você estiver usando o Node, tente executar o comando serve diretamente no console. No meu caso, estou executando um aplicativo angular, então tentei com:
Isso me mostrou o erro exato durante a inicialização do aplicativo.
fonte
Rastreei meu problema de volta ao servidor Puma, como fez @Ahmed Elkoussy, mas resolvi apenas comentando a seguinte linha no arquivo puma.rb:
# pidfile ENV.fetch("PIDFILE") { "tmp/pids/server.pid" }
fonte
Encontrei o mesmo problema hoje. Eu fiz
heroku run rake db:migrate
que eu migraram do modelo anterior, e o aplicativo não falha.fonte
Seja muito cauteloso ao copiar e colar código. Às vezes, quando você adiciona um bloco a um arquivo, ele é formatado incorretamente e gera um erro.
Eu já tive esse problema e obtive este erro: inesperado tIDENTIFIER, esperando keyword_end
fonte
Teve o mesmo problema. para mim foi um erro nos filtros before_action (porque o banco de dados vazio) Verifique seus filtros before_action, talvez eles gerem exceções não tratadas.
fonte
Eu tive esse problema ao tentar executar o Rails em um subdiretório, e não no
/
. Por exemplo, eu tinha o aplicativo Angular / Node / Gulp sendo executado/client
e um aplicativo Rails/server
, mas ambos estavam no mesmo repositório git, para que eu pudesse acompanhar as alterações no front end e back end. Eu recebi esse erro ao tentar implantá-los no Heroku. Para qualquer pessoa que tenha esse problema, aqui está um pacote de compilação personalizado que permitirá executar o Rails em um subdiretório.https://github.com/aarongray/heroku-buildpack-ruby
fonte
Eu tive o mesmo problema (o mesmo erro no heroku, trabalhando na máquina local) e tentei todas as soluções listadas aqui, incluindo as
heroku run rails console
que eram executadas sem mensagens de erro. Eu tenteiheroku run rake db:migrate
eheroku run rake db:migrate:reset
algumas vezes. Nada disso resolveu o problema. Ao analisar alguns arquivos que são usados na produção, mas não no ambiente de desenvolvimento, encontrei algum espaço em branco no arquivo puma.rb como o culpado. Espero que isso ajude alguém que tenha o mesmo problema. Alterar isso fez funcionarpara
fonte
Corri para o mesmo problema ao implantar no Heroku (falha do aplicativo). Os logs não indicavam qual poderia ser o problema. O console Heroku exibiu erro de sintaxe no código de um colchete extra. Surpreendentemente, eu não tive um problema nos trilhos locais durante a execução do aplicativo e, portanto, o perdi. Após a correção e o git push para o Heroku, o aplicativo começou a trabalhar no Heroku!
fonte
Atualizei minhas configurações de app.set ('endereço_ip', process.env.IP || '127.0.0.1' );
para
app.set ('endereço_ip', process.env.IP || '0.0.0.0' );
que eu mudei para hospedagem Openshift
fonte
Eu tive o mesmo problema quando comecei a usar o Puma no heroku, conforme a página do guia , esse problema foi resolvido quando comentei a linha de porta mostrada abaixo
Portanto, desabilitar a linha acima no puma.rb no diretório config resolveu o problema
fonte
No meu caso, eu estava executando
git push heroku master
quando não estou no ramo principal. Eu tive que ir para o master branch primeiro, mesclar o código com o meu outro branch e depois git push.fonte
Eu também encontrei o mesmo erro. Adicionando um
.gitignore
arquivo ao meu projeto resolveu meu problema.Meu
.gitignore
arquivo está aqui:E eu mudei de
listen()
função;Eu mudei para;
fonte
A solução que publiquei no Dev e trabalhei para a maioria das pessoas usando o React:
https://medium.com/@uros.randelovic/causes-of-heroku-h10-app-crashederer-and-how-to-solve-them-70495914d2a3?sk=1c51cf95e904f754a43a4b63a06b5503
fonte