Ошибка развертывания Heroku H10 (приложение упало)

У меня на локальном компьютере работает приложение RoR, но когда я отправляю его на heroku, оно вылетает. Журнал ошибок выдает ошибку H10 & говорит:

    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=

Edit:

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

Кто-нибудь имел это раньше и знает, что может быть причиной проблемы? Я не могу найти решение.

Спасибо.

108 голосов | спросил bskool 21 32012vEurope/Moscow11bEurope/MoscowWed, 21 Nov 2012 19:45:49 +0400 2012, 19:45:49

24 ответа


0

Корень проблемы, с которой я столкнулся, был связан с отсутствием базы данных. Чтобы решить эту проблему, я сначала экспортировал свою локальную базу данных:

$ heroku addons:add heroku-postgresql:dev 
$ heroku addons:add pgbackups
$ PGPASSWORD=mypassword pg_dump -Fc --no-acl --no-owner -h localhost -U myuser mydb > mydb.dump 

Затем импортировал его в Heroku:

$ heroku pgbackups:restore DATABASE 'http://site.tld/mydb.dump'

Переменные для замены в этих примерах: mypassword, myuser, mydb & http://site.tld/mydb.dump. Обратите внимание, что мне пришлось загрузить дамп на временный сервер.

Решая все мои проблемы, я написал краткое руководство по развертыванию Enki в Heroku, , которые можно найти здесь .

ответил bskool 11 TueEurope/Moscow2012-12-11T14:21:52+04:00Europe/Moscow12bEurope/MoscowTue, 11 Dec 2012 14:21:52 +0400 2012, 14:21:52
0

Я столкнулся с той же ошибкой, что и выше, приложение зависало на heroku (работает нормально в dev), но в журналах ошибок на heroku не было обнаружено никаких подсказок. Я прочитал другие ответы на этой странице и вспотел, увидев «восстановление приложения». Я подумал, что, может быть, я смогу сесть в консоль герою и осмотреться. Я сделал, и даже консоль рухнула, но на этот раз он сказал мне, почему. Это была какая-то неясная переменная, которую я забыл удалить во время сеанса устранения неполадок часами ранее. Я не говорю, что вы столкнетесь с той же проблемой, но я нашел больше информации, когда попытался пройти через консоль. Надеюсь, это поможет.

$ heroku run rails console
ответил ntimba20 9 J0000006Europe/Moscow 2014, 07:23:37
0

У меня была такая же проблема. Логи тоже не давали мне никаких подсказок. Таким образом, я уменьшил и увеличил обратно динамов. Это решило проблему для меня:

heroku ps:scale web=0

Ждал несколько секунд ...

heroku ps:scale web=1
ответил Hunter 12 Jpm1000000pmTue, 12 Jan 2016 19:43:41 +030016 2016, 19:43:41
0
$heroku run rails console 

Это лучший вариант, поскольку он выдаст вам ошибку в вашем терминале, которая будет гораздо более детальной, чем ошибка "приложение упало" в ваших журналах Heroku.

ответил EricSchulz 1 J000000Tuesday14 2014, 00:26:48
0
$ heroku restart

помог мне снова запустить мой динамо. Я новичок в Heroku, но рад, что теперь знаю.

ответил Kyle Kwon 22 FebruaryEurope/MoscowbMon, 22 Feb 2016 01:20:51 +0300000000amMon, 22 Feb 2016 01:20:51 +030016 2016, 01:20:51
0

это случилось со мной, когда я слушал не на том порту

Я изменил свой listen () на "process.env.PORT" так:

http.listen((process.env.PORT || 5000), function(){
  console.log('listening on *:5000');
});

вместо

http.listen(5000, function(){
  console.log('listening on *:5000');
});
ответил newshorts 7 J000000Tuesday15 2015, 00:49:29
0

У меня была такая же проблема этим вечером. Не очень полезная ошибка, поэтому я попытался запустить ее в консоли

heroku run rails c

это не удалось и дал мне гораздо более полезную ошибку. Я пренебрег удалением вызова метода в производстве. Как только я это исправил, приложение работало нормально.

ответил Gregory 14 AMpThu, 14 Apr 2016 06:04:46 +030004Thursday 2016, 06:04:46
0

Я решил эту проблему, нажав Git:

git add .
git commit -am "some text"
git push

затем нажмите на Heroku:

git push heroku

затем rake db: migrate на Heroku:

heroku run rake db:migrate
ответил Frank C Jones 17 MaramSun, 17 Mar 2013 11:59:28 +04002013-03-17T11:59:28+04:0011 2013, 11:59:28
0

Мне не удалось включить мой файл .gitignore -> что ломает героку. #doh

Вот рабочий файл .gitignore

/.bundle
/vendor/bundle/
/vendor/ruby/


db/*.sqlite3
/db/*.sqlite3-journal
/log/*
/tmp/*


**.war
*.rbc
*.sassc
.redcar/
.sass-cache
/config/config.yml
/config/database.yml
/coverage.data
/coverage/
/db/*.javadb/
/db/*.sqlite3
/doc/api/
/doc/app/
/doc/features.html
/doc/specs.html
/public/cache
/public/stylesheets/compiled
/public/system/*
/spec/tmp/*
/cache
/capybara*
/capybara-*.html
/gems
/specifications
rerun.txt
pickle-email-*.html
.zeus.sock

**.orig

.DS_Store

/nbproject/

.idea

/*.tmproj

**.swp

.env
.powenv

Чтобы создать файл .gitignore, в терминале перейдите в каталог приложений и используйте следующую команду

touch .gitignore

Затем вы можете открыть его в текстовом редакторе и вставить в него приведенный выше код.

ответил Joe Mellin 17 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 17 Sep 2014 21:26:11 +0400 2014, 21:26:11
0

Я получал эту же ошибку приложения H10 при сбое в Heroku. Я нажал «перезапустить все dynos» в интерфейсе heroku, и проблема решена.

ответил tomb 4 FebruaryEurope/MoscowbThu, 04 Feb 2016 22:30:46 +0300000000pmThu, 04 Feb 2016 22:30:46 +030016 2016, 22:30:46
0

В моем случае я использовал переменные ENV в своем приложении, но это не было установлено в конфигурации heroku.

Консоль heroku выдала правильную ошибку:

heroku console
`validate_options': Missing required arguments: aws_access_key_id, aws_secret_access_key (ArgumentError)

Затем установите конфигурацию ENV

heroku config:set AWS_ACCESS_KEY_ID='key'

Перезагрузите Heroku

heroku restart

это работает !!

ответил devudilip 20 J0000006Europe/Moscow 2017, 22:24:50
0

Посмотри, получишь ли ты

bash: bin/rails: No such file or directory

в журналах во время выполнения команды (heroku logs -t), если да, тогда пожалуйста, запустите

bundle exec rake rails:update

Не перезаписывайте ваши файлы, в конце эта команда создаст

  create  bin
  create  bin/bundle
  create  bin/rails
  create  bin/rake

подтолкни эти файлы к героку и все готово.

ответил Saqib R. 10 J0000006Europe/Moscow 2015, 11:41:47
0

Я получил ту же ошибку выше, что и "приложение упало", и в журналах приложения heroku не отображается много информации, связанной с причинами ошибки msg. Затем я перезапустил dynos в heroku, и затем он показал ошибку, сообщающую дополнительную фигурную скобку в одном из файлов index.js в моей установке. Эта проблема была исправлена ​​после того, как она была удалена и заново развернута приложение на герою.

Надеюсь, это будет полезно для тех, кто сталкивается с той же проблемой.

ответил Praveen 6 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 06 Sep 2017 07:48:20 +0300 2017, 07:48:20
0

Изучив весь список ответов, я наткнулся на этот сайт: https://status.heroku.com/ в котором подробно описывается текущее состояние /инциденты с Heroku. Всегда безопасно проверить наличие инцидентов, прежде чем ударить головой о стену. Для меня это был прикрепленный отчет об инциденте, опубликованный по вышеупомянутой ссылке, который стал причиной ошибки.

 ОБНОВЛЕНИЕ ИНЦИДЕНТА СЕРВЕРА

ответил PallavBakshi 4 Jpm1000000pmThu, 04 Jan 2018 23:31:29 +030018 2018, 23:31:29
0

У меня была такая же проблема, я сделал следующее

heroku run rails c

Это идентифицировало синтаксическую ошибку и пропущенную запятую в разрешенных параметрах контроллера. Как уже упоминалось выше, журналы Heroku не предоставили достаточной информации для решения проблемы.

Ранее я не видел сообщения о сбое приложения в Heroku.

ответил Ben Strachan 6 +03002018-10-06T14:36:34+03:00312018bEurope/MoscowSat, 06 Oct 2018 14:36:34 +0300 2018, 14:36:34
0

Я столкнулся с той же проблемой сегодня. Я сделал heroku run rake db:migrate, хотя перенес модель раньше, и приложение не падает.

ответил Tu H. 11 TueEurope/Moscow2012-12-11T09:20:50+04:00Europe/Moscow12bEurope/MoscowTue, 11 Dec 2012 09:20:50 +0400 2012, 09:20:50
0

Будьте очень осторожны при копировании и вставке кода. Иногда, когда вы добавляете блок в файл, он форматируется неправильно и выдает ошибку.

У меня раньше была эта проблема, и я получил эту ошибку: неожиданный tIDENTIFIER, ожидающий keyword_end

ответил Matt Perejda 2 +04002014-10-02T06:07:42+04:00312014bEurope/MoscowThu, 02 Oct 2014 06:07:42 +0400 2014, 06:07:42
0

Была такая же проблема. для меня это была ошибка в фильтрах before_action (потому что пустая БД) Проверьте ваши фильтры before_action, возможно, они генерируют беспрепятственные исключения.

ответил sphinx96 30 J0000006Europe/Moscow 2015, 13:05:43
0

У меня была эта проблема при попытке запустить Rails в подкаталоге, а не в /. Например, у меня было приложение Angular /Node /Gulp, запущенное в /client, и приложение Rails, работающее в /server, но оба они были в одном и том же git-репо, так что я мог отслеживать изменения через интерфейс и бэкэнд. Я получил эту ошибку при попытке развернуть их в Heroku. Для всех, у кого есть эта проблема, вот пользовательский пакет сборки, который позволит запускать Rails в подкаталоге.

https://github.com/aarongray/heroku-buildpack-ruby

ответил Aaron Gray 14 J000000Tuesday15 2015, 01:20:27
0

У меня была та же проблема (та же ошибка на heroku, работа на локальной машине), и я попробовал все решения, перечисленные здесь, включая heroku run rails console который работал без сообщений об ошибках. Я пробовал heroku run rake db:migrate и heroku run rake db:migrate:reset несколько раз , Ничто из этого не решило проблему. Проходя через некоторые файлы, которые используются в рабочей среде, но не в среде разработки, я обнаружил, что некоторые пробелы в файле puma.rb являются причиной. Надеюсь, что это помогает кому-то, кто имеет ту же проблему. Изменение этого заставило это работать

  ActiveRecord::Base.establish_connection
  End

к

  ActiveRecord::Base.establish_connection
end
ответил Rahul Madhavan 12 SatEurope/Moscow2015-12-12T18:59:18+03:00Europe/Moscow12bEurope/MoscowSat, 12 Dec 2015 18:59:18 +0300 2015, 18:59:18
0

Я столкнулся с той же проблемой при развертывании в Heroku (сбой приложения). Логи не указывали, в чем может быть проблема. Консоль Heroku отображала синтаксическую ошибку в коде дополнительной скобки. Удивительно, но у меня не было проблем с локальными рельсами при запуске приложения, и поэтому я пропустил его. После исправления и толчка к Heroku приложение начало работать на Heroku!

ответил M Donde 18 52016vEurope/Moscow11bEurope/MoscowFri, 18 Nov 2016 01:17:11 +0300 2016, 01:17:11
0

Я обновил свои настройки с app.set ('ip_address', process.env.IP || '127.0.0.1' );

до

app.set ('ip_address', process.env.IP || '0.0.0.0' );

который я изменил для хостинга Openshift

ответил Neville Dabreo 12 J0000006Europe/Moscow 2017, 19:06:41
0

У меня было H10 с Heroku и Node из-за неправильного имени основного файла кода. Изменить package.json:

{

  ...

  "main": "correct_file_name.js",

  ...

  "scripts": {
    "start": "node correct_file_name.js"
  }
}

Или переименуйте файл.

ответил ariel 28 22017vEurope/Moscow11bEurope/MoscowTue, 28 Nov 2017 06:11:13 +0300 2017, 06:11:13
0

В моем случае, Procfile, которое я использовал, ломало все. Heroku ищет Procfile и применяет его настройки при запуске приложения - очевидно, что используемые мной настройки dev не имели никакого смысла для сервера prod , Мне пришлось переименовать его в Procfile.dev, и все стало работать нормально.

ответил The Whiz of Oz 22 J0000006Europe/Moscow 2018, 18:33:53

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132