Heroku code=H10 desc="Приложение упало" - не могу понять, почему оно падает
Я долго искал это и не могу найти ничего подходящего в моей ситуации. Я смотрел на эти журналы, и я не вижу, в чем проблема.
Это уже происходило во время развертываний, но всегда казалось, что само собой разрешается. Теперь это произошло само по себе (без развертывания), и я не могу выйти из этого. Попытался вернуться к предыдущей версии приложения, но, похоже, я застрял. Я сбросил dyno и также сделал рейк db: migrate.
В журнале есть некоторые повторяющиеся вещи, но я просто не знаю, что из них читать. Кто-нибудь есть идеи, где проблема? Любое руководство будет с благодарностью. Смотрите журналы ниже.
Jun 18 15:51:54 snapclass-production app/heroku-postgres: source=HEROKU_POSTGRESQL_WHITE measure.current_transaction=1077 measure.db_size=6153016bytes measure.tables=0 measure.active-connections=3 measure.waiting-connections=0 measure.index-cache-hit-rate=0.99981 measure.table-cache-hit-rate=0.99349
Jun 18 15:52:06 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="46.165.195.139" dyno= connect= service= status=503 bytes=
Jun 18 15:52:07 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="178.255.152.2" dyno= connect= service= status=503 bytes=
Jun 18 15:52:12 snapclass-production app/postgres: [47-1] [] LOG: checkpoint starting: time
Jun 18 15:52:13 snapclass-production app/postgres: [48-1] [] LOG: checkpoint complete: wrote 0 buffers (0.0%); 0 transaction log file(s) added, 0 removed, 0 recycled; write=0.000 s, sync=0.000 s, total=0.334 s; sync files=0, longest=0.000 s, average=0.000 s
Jun 18 15:52:51 snapclass-production app/heroku-postgres: source=HEROKU_POSTGRESQL_WHITE measure.current_transaction=1077 measure.db_size=6153016bytes measure.tables=0 measure.active-connections=3 measure.waiting-connections=0 measure.index-cache-hit-rate=0.99994 measure.table-cache-hit-rate=0.99997
Jun 18 15:53:06 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="95.141.32.46" dyno= connect= service= status=503 bytes=
Jun 18 15:53:48 snapclass-production app/heroku-postgres: source=HEROKU_POSTGRESQL_WHITE measure.current_transaction=1077 measure.db_size=6153016bytes measure.tables=0 measure.active-connections=3 measure.waiting-connections=0 measure.index-cache-hit-rate=0.97826 measure.table-cache-hit-rate=0.99999
Jun 18 15:54:06 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="95.211.217.68" dyno= connect= service= status=503 bytes=
Jun 18 15:54:17 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="205.197.158.210" dyno= connect= service= status=503 bytes=
Jun 18 15:54:17 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=www.snapclass.com fwd="205.197.158.210" dyno= connect= service= status=503 bytes=
Jun 18 15:54:25 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=demosidney.snapclass.com fwd="202.46.61.33" dyno= connect= service= status=503 bytes=
Jun 18 15:54:44 snapclass-production heroku/web.1: State changed from crashed to starting
Jun 18 15:54:44 snapclass-production app/heroku-postgres: source=HEROKU_POSTGRESQL_WHITE measure.current_transaction=1077 measure.db_size=6153016bytes measure.tables=0 measure.active-connections=3 measure.waiting-connections=0 measure.index-cache-hit-rate=0.98897 measure.table-cache-hit-rate=0.99087
Jun 18 15:54:48 snapclass-production heroku/web.1: Starting process with command `bundle exec thin start -R config.ru -e $RAILS_ENV -p 50180`
Jun 18 15:55:40 snapclass-production app/heroku-postgres: source=HEROKU_POSTGRESQL_WHITE measure.current_transaction=1077 measure.db_size=6153016bytes measure.tables=0 measure.active-connections=3 measure.waiting-connections=0 measure.index-cache-hit-rate=0.99926 measure.table-cache-hit-rate=0.99996
Jun 18 15:55:50 snapclass-production heroku/web.1: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
Jun 18 15:55:50 snapclass-production heroku/web.1: Stopping process with SIGKILL
Jun 18 15:55:51 snapclass-production heroku/web.1: Process exited with status 137
Jun 18 15:55:51 snapclass-production heroku/web.1: State changed from starting to crashed
Jun 18 15:55:52 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=demosidney.snapclass.com fwd="119.63.193.130" dyno= connect= service= status=503 bytes=
Jun 18 15:55:52 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/snapclasses/sat-prep-math/register host=www.snapclass.com fwd="173.199.115.115" dyno= connect= service= status=503 bytes=
Jun 18 15:55:53 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="23.21.36.78" dyno= connect= service= status=503 bytes=
Jun 18 15:55:54 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="23.22.98.102" dyno= connect= service= status=503 bytes=
Jun 18 15:55:54 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="91.109.115.41" dyno= connect= service= status=503 bytes=
Jun 18 15:56:06 snapclass-production heroku/router: at=error code=H10 desc="App crashed" method=GET path=/ host=www.snapclass.com fwd="174.34.224.167" dyno= connect= service= status=503 bytes=
9 ответов
Попробуйте следующие шаги:
- git push heroku master # if not done
- heroku run rake db:migrate
- heroku restart
Подожди пару минут...
В моем случае это было потому, что я жестко запрограммировал порт для использования,
Я изменил с помощью этого, и это сработало
app.listen(process.env.PORT || 3000);
Создать аккаунт на герою
$heroku create
Чтобы проверить ваш мерзавец конфигурации хорошо
$git remote -v
Свяжите репозиторий Git с существующим приложением
$heroku git:remote -a herokuapp-name
Выполнить толчок к мастеру
$git push heroku master
Чтобы ваша база данных заработала, вам нужно перейти на рабочую базу данных.
$heroku run bundle exec rake db:migrate
Затем перезагрузите
heroku restart
наконец, перейдите к вашему местоположению
Я также столкнулся с этой ошибкой, в целом эта ошибка означает, что она не может работать с вашими зависимостями, и одной из причин могут быть старые версии зависимостей. Я решил это, выполнив два шага: 1) Я вручную обновил все свои зависимости. 2) Я изменил свой Flask API с app.py на err.py (может быть полезно иметь другое имя, но не обязательно.
Это сработало для меня. Надеюсь, это поможет!!
Вам нужно скомпилировать ваши ресурсы локально. Я обычно бегаю
bundle exec rake assets:precompile
а затем совершить и подтолкнуть к героку.
изменение способа подключения к базе данных в коде помогло
let databaseURL = pgURL
if var postgresConfig = PostgresConfiguration(url: databaseURL) {
postgresConfig.tlsConfiguration = tls
app.databases.use(.postgres(
configuration: postgresConfig
), as: .psql)
app.middleware.use(ErrorMiddleware.default(environment: app.environment))
app.migrations.add(CreateTranscription())
app.migrations.add(CreateTemplate())
app.routes.defaultMaxBodySize = "10mb"
try app.autoMigrate().wait()
// register routes
try routes(app)
} else{
fatalError("DATABASE_URL not configured")
}
В моем случае я работал с express на ES6 с использованием babel, babel был импортирован как devDependency (Heroku игнорирует devDependencies в производстве) после включения их в зависимости, которые у меня сработали.
"dependencies": {
"@babel/register": "^7.8.3",
"@babel/core": "^7.8.4",
"@babel/preset-env": "^7.8.4"
}
У меня была основная запись в package.json
указывая не на тот каталог. Убедитесь, что он указывает на выходной каталог сборки. Что касается моего случая, у меня был файл сервера в папке /bin, поэтому я установил свойpackage.json
{
"main": "build/bin/www.js"
"scripts": {
"start": "node ."
}
}