2016-11-25 8 views
0

Я развернул стек анализа Bitnami на виртуальную виртуальную машину Google. Этот стек в основном Apache работает как прокси-сервер. Затем обрабатывается панель анализа данных MEAN и панель инструментов и т. Д.Parse Server + Express - Проблемы с ParseError и отмиранием/перезапуском сайта

Все работает нормально, когда вы обращаетесь к панели управления и отправляете отдельные запросы CURL, чтобы проверить, что все это доступно.

Однако в этом есть фатальный недостаток. Когда Parse возвращает одну из своих ошибок, например.

{"code":101,"error":"Object not found."} 

Экспресс считает это невольным исключением и умирает. Теперь я понимаю, что это преднамеренное поведение (есть достаточная информация о том, почему вы не хотите упорствовать после неперехваченного исключения)

Стек Bitnami использует Forever для запуска Parse Server, но, как вы можете видеть из журналы, которые я буду включать ниже, вы по-прежнему сталкиваетесь с проблемами с отказавшими соединениями.

2016-11-25T11:41:16+00:00 DEBUG (7): {"code":101,"error":"Object not found."} 
2016-11-25T11:41:16+00:00 DEBUG (7): Failed to connect to X.X.X.X: Connection refused 
2016-11-25T11:41:17+00:00 DEBUG (7): Failed to connect to X.X.X.X: Connection refused 
2016-11-25T11:41:17+00:00 DEBUG (7): Failed to connect to X.X.X.X: Connection refused 
2016-11-25T11:41:17+00:00 DEBUG (7): Failed to connect to X.X.X.X: Connection refused 

Между тем в навсегда входит:

Error generating response. ParseError { code: 101, message: 'Object not found.' } code=101, message=Object not found. 
[object Object] 
/opt/bitnami/apps/parse/htdocs/node_modules/parse-server/lib/ParseServer.js:425 
     throw err; 
     ^

Error: EACCES: permission denied, open '/opt/bitnami/apps/parse/htdocs/logs/parse-server.info.2016-11-25' 
at Error (native) 
error: Forever detected script exited with code: 7 
error: Script restart attempt #1 
parse-server running on port 1337 
parse-dashboard running on port 4040 

Таким образом, вы можете увидеть, что сразу же после ошибки Анализировать возвращается, Услуга недоступна, пока навсегда не может перезапустить Синтаксическая Server.

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

Итак, вопрос в том, как это должно быть правильно обработано? Разве Parse + Express не способ? Или есть какой-то способ настройки узла или Express для возврата ошибки API к запрашивающему без экспресс-смерти (и без необходимости попадания в ловушку использования uncaughtException для сохранения узла в сети)

Любая помощь будет очень признательна, спасибо

+0

Это не ошибка разрешения от Parse? Я думаю, что Parse не может записать информационный журнал в каталог журналов. – iKoala

+0

Ничего себе, я надеюсь, что это так просто .. Однако я проверял разрешения на/opt/bitnami/apps/parse/htdocs/logs /, и он принадлежит пользователю Node работает как, и у пользователя есть разрешение на запись –

+0

Я думаю, что журнал ошибок сказал, что это «Ошибка доступа». Если это только сервер разработки, вы пытались установить '/ opt/bitnami/apps/parse/htdocs/logs' значение 777? – iKoala

ответ

0

Журналы с Forever сказали, что это EACCES ошибка, то есть ParseServer не смог получить доступ к файлу журнала и не смог записать в него информационный журнал.

Error: EACCES: permission denied, open '/opt/bitnami/apps/parse/htdocs/logs/parse-server.info.2016-11-25' 
at Error (native) 
error: Forever detected script exited with code: 7 
error: Script restart attempt #1 
parse-server running on port 1337 
parse-dashboard running on port 4040 

Я думаю, что вы должны изменить /opt/bitnami/apps/parse/htdocs/logs с надлежащего разрешения, так что ParseServer может записывать файлы войти него.

+0

Еще раз спасибо, я добавил комментарий к сообществу Bitnami [сообщение в форуме] (https://community.bitnami.com/t/problem-with-logging/43612/ 4) по этому вопросу. –

 Смежные вопросы

  • Нет связанных вопросов^_^