Существует веб-служба Azure NodeJS с нулевым кодом состояния и сигналом SIGSEGV. - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь развернуть приложение NodeJS в веб-службе Azure (версия узла 10.14, план Azure B1), однако, когда я запускаю приложение, оно всегда существует со статусом null и сигналом SIGSEGV .

Не было выдано ошибок. Я попытался развернуть тот же код на Heroku, и никаких проблем не было.

Я пытался использовать модуль segfault-handler в надежде, что он покажет, что не так, но единственное, что он записывает в журнал:

PID 147 received SIGSEGV for address: 0x2c26

Есть идеи, что может вызвать это? Одна вещь, которую я смог найти, это может быть связано с родными модулями, но я до сих пор не знаю, какой из них может вызвать это.

EDIT Веб-служба Azure использует ОС Linux, а не Windows. Используемые модули:

  "dependencies": {
    "apidoc": "^0.17.7",
    "applicationinsights": "^1.3.1",
    "bcrypt": "^3.0.5",
    "chalk": "^2.4.2",
    "concurrently": "^3.6.1",
    "dotenv": "^6.2.0",
    "excel4node": "^1.7.1",
    "express": "^4.17.1",
    "express-sslify": "^1.2.0",
    "firebase-admin": "^7.2.0",
    "get-port": "^4.2.0",
    "is-json": "^2.0.1",
    "joi": "^14.3.1",
    "jsonwebtoken": "^8.5.1",
    "lodash": "^4.17.11",
    "mailgun-js": "^0.22.0",
    "mkdirp": "^0.5.1",
    "moment": "^2.24.0",
    "morgan": "^1.9.1",
    "node-cache": "^4.2.0",
    "node-cleanup": "^2.1.2",
    "node-schedule": "^1.3.1",
    "nodemon": "^1.19.0",
    "number-to-words": "^1.2.4",
    "pdf-to-base64": "^1.0.2",
    "pdfkit": "^0.9.1",
    "pg": "^7.9.0",
    "pug": "^2.0.3",
    "rate-limiter-flexible": "^1.0.2",
    "request": "^2.88.0",
    "request-promise-native": "^1.0.7",
    "segfault-handler": "^1.2.0",
    "sequelize": "^5.8.7",
    "socketcluster": "^14.3.3",
    "socketcluster-client": "^14.2.2",
    "socketcluster-server": "^14.4.0",
    "systeminformation": "^4.0.15",
    "twilio": "^3.30.0",
    "umzug": "^2.2.0",
    "uuid": "^3.3.2"
  },
  "devDependencies": {
    "@types/chai": "^4.1.7",
    "@types/chalk": "^2.2.0",
    "@types/cookie-parser": "^1.4.1",
    "@types/dotenv": "^6.1.0",
    "@types/express": "^4.16.0",
    "@types/joi": "^14.3.3",
    "@types/lodash": "^4.14.107",
    "@types/mocha": "^5.2.6",
    "@types/moment": "^2.13.0",
    "@types/morgan": "^1.7.35",
    "@types/node": "^9.6.5",
    "@types/request-promise": "^4.1.42",
    "@types/serialize-javascript": "^1.3.2",
    "@types/sinon": "^7.0.11",
    "@types/uuid": "^3.4.3",
    "casual": "^1.6.0",
    "chai": "^4.2.0",
    "chai-as-promised": "^7.1.1",
    "mocha": "^5.2.0",
    "sinon": "^7.2.3"
  }

1 Ответ

0 голосов
/ 12 июня 2019

Как вы сказали, если есть несколько узловых модулей, связанных с собственным API, таких как Win32k.sys, он будет немедленно завершен изолированной программной средой веб-приложения Azure после запуска.

Следовательно, возможной причиной могут быть эти ограничения и ограничения, описанные в защищенной среде для песочницы, например ниже.

enter image description here

Пожалуйста, внимательно осмотрите использованные модули. Надеюсь, это поможет.

...