googleapis / nodejs-dialogflow

This repository is deprecated. All of its content and history has been moved to googleapis/google-cloud-node.
https://dialogflow.com/
Apache License 2.0
797 stars 272 forks source link

Security error on www.googleapis.com #514

Closed DaRo0 closed 4 years ago

DaRo0 commented 4 years ago

Environment details

Problem you have encountered:

Suddenly, in our chatbot, we are getting an error when doing the detectIndent function from the dialogflow node module (v 1.1.1).

The error that we are encountering is:

{ Error: 2 UNKNOWN: Getting metadata from plugin failed with error: request to
   https://www.googleapis.com/oauth2/v4/token failed, reason: Security error on www.googleapis.com
   at Object.callErrorFromStatus (/usr/src/app/node_modules/@grpc/grpc-js/build/src/call.js:30:26)
   at Http2CallStream.call.on (/usr/src/app/node_modules/@grpc/grpc-js/build/src/client.js:96:33)
   at Http2CallStream.emit (events.js:203:15)
   at Http2CallStream.EventEmitter.emit (domain.js:448:20)
   at process.nextTick (/usr/src/app/node_modules/@grpc/grpc-js/build/src/call-stream.js:97:22)
   at process._tickCallback (internal/process/next_tick.js:61:11)
   code: 2,
   details:
   'Getting metadata from plugin failed with error: request to https://www.googleapis.com/oauth2/v4/token failed, reason:
   Security error on www.googleapis.com',
   metadata: Metadata { internalRepr: Map {}, options: {} } }

We are calling this method for a year now, and it is crashing just recently. Does anybody have a guess about what are we doing wrong?

We even tried to generate another key in JSON, replaced the old ones but the error persists.

What you expected to happen:

Go on to the next function instead going to the CATCH section and displaying the error described above.

Steps to reproduce:

app = new dialogflow.SessionsClient({
    keyFileName : 'path/to/file'
  });

app..detectIntent(request).

the request object looks like this:

{
   "session":"projects/projectIDXXXXXX/agent/sessions/SESSIONID",
   "queryInput": {
      "text": {
         "text": "hello",
         "languageCode": "es-ES"
      }
   }
}

So at the backend we are able to see the message written on the facebook messenger chatbot.

Other information:

We checked all the documentation for the detectIndent function of the v2 dialogflow api and apparently we are doing everything as it should be.

Thank you everybody and regards, Daniel

jaime-amate commented 4 years ago

I got the same issue, this is failing since 3 weeks or so

bcoe commented 4 years ago

@nnegrey any thoughts on this one? seems pretty weird to suddenly start cropping up.

nnegrey commented 4 years ago

Um. No, but let me start digging around to see if I can try to reproduce something.

nnegrey commented 4 years ago

I'm gonna assume this isn't the actual issue, but for a sanity check. Is your spelling correct for keyFileName? The above spelling is incorrect. (Maybe something changed) But it should be: keyFilename lower case n

From: https://github.com/googleapis/google-auth-library-nodejs/blob/master/src/auth/googleauth.ts#L67

I'm gonna keep digging, cus I'm guessing you have that correct, but just want to check.

nnegrey commented 4 years ago

What library version dialogflow are you using? Do you set any other underlying dependency versions as well for google cloud?

DaRo0 commented 4 years ago

Hello @nnegrey , because of deleting the name of the file I messed it up by writing it here, but in the script it is spelled correctly, thank you for the observation.

I'm using the dialogflow node module version 1.1.1 (I've also tried with the 1.1.2 which was released recently, getting the same error).

In the main package.json I'm not using any dependency for google, but the dialogflow module has google dependencies for it. Would it help if I give you a list of all the modules that I'm using for the project?

Thank you for your help and regards, Daniel

DaRo0 commented 4 years ago

Bye the way, I just got what you mean @nnegrey . I haven't changed any underlying dependency versions (didn't know from where should I start)

nnegrey commented 4 years ago

I've been unable to reproduce, couple clarifying questions.

  1. (doubt this matters) is this running on AWS and can you reproduce if you run locally?
  2. You downloaded a new service_account.json file from the GCP console? https://cloud.google.com/iam/docs/creating-managing-service-account-keys#iam-service-account-keys-create-console
  3. Since you pass the keyFilename, just curious have you tried just setting the environment variable GOOGLE_APPLICATION_CREDENTIALS?
  4. Any other environment variables that maybe mess with this?
nnegrey commented 4 years ago

I think the error is happening here, I'm just not sure why yet. https://github.com/grpc/grpc-node/blob/master/packages/grpc-js/src/channel.ts#L250-L254

DaRo0 commented 4 years ago

Hello @nnegrey ,

  1. Yes I can reproduce it locally, and yes I'm running it into an elasticsearch beanstalk
  2. yes I did that
  3. that's right, at the beggining I was just setting that environment variable along with others like bot id and so on, and apparently none of the environment variables are colliding with eachother

Thank you very much for taking this time to help me out!

PS: yes, that's the error that I'm getting :(

DaRo0 commented 4 years ago

Hello @nnegrey ,

I think this might help, here u have the contents of the dependencies in my package.json: "dependencies": { "aws-sdk": "^2.610.0", "body-parser": "^1.19.0", "clim": "^1.1.1", "compression": "^1.7.4", "cors": "^2.8.5", "cron": "^1.8.2", "csvtojson": "^2.0.10", "dialogflow": "1.1.2", "dotenv": "^8.2.0", "express": "~4.16.1", "helmet": "^3.21.2", "jsonwebtoken": "^8.5.1", "lokijs": "^1.5.8", "md5": "^2.2.1", "moment": "^2.24.0", "mongoose": "^5.8.10", "morgan": "~1.9.1", "pg": "^7.18.1", "pm2": "^4.2.3", "request": "^2.88.0", "universal-analytics": "^0.4.20", "uuid": "^3.4.0" }, "devDependencies": { "chai": "^4.2.0", "chai-http": "^4.3.0", "jsdoc": "^3.6.3", "mocha": "^7.0.1" }

And also, the result of the command npm list:

├─┬ aws-sdk@2.610.0 │ ├─┬ buffer@4.9.1 │ │ ├── base64-js@1.3.1 │ │ ├── ieee754@1.1.13 deduped │ │ └── isarray@1.0.0 │ ├── events@1.1.1 │ ├── ieee754@1.1.13 │ ├── jmespath@0.15.0 │ ├── querystring@0.2.0 │ ├── sax@1.2.1 │ ├─┬ url@0.10.3 │ │ ├── punycode@1.3.2 │ │ └── querystring@0.2.0 deduped │ ├── uuid@3.3.2 │ └─┬ xml2js@0.4.19 │ ├── sax@1.2.1 deduped │ └── xmlbuilder@9.0.7 ├─┬ body-parser@1.19.0 │ ├── bytes@3.1.0 │ ├── content-type@1.0.4 │ ├─┬ debug@2.6.9 │ │ └── ms@2.0.0 │ ├── depd@1.1.2 │ ├─┬ http-errors@1.7.2 │ │ ├── depd@1.1.2 deduped │ │ ├── inherits@2.0.3 │ │ ├── setprototypeof@1.1.1 deduped │ │ ├── statuses@1.5.0 deduped │ │ └── toidentifier@1.0.0 │ ├─┬ iconv-lite@0.4.24 │ │ └── safer-buffer@2.1.2 │ ├─┬ on-finished@2.3.0 │ │ └── ee-first@1.1.1 │ ├── qs@6.7.0 │ ├─┬ raw-body@2.4.0 │ │ ├── bytes@3.1.0 deduped │ │ ├── http-errors@1.7.2 deduped │ │ ├── iconv-lite@0.4.24 deduped │ │ └── unpipe@1.0.0 │ └─┬ type-is@1.6.18 │ ├── media-typer@0.3.0 │ └── mime-types@2.1.26 deduped ├─┬ chai@4.2.0 │ ├── assertion-error@1.1.0 │ ├── check-error@1.0.2 │ ├─┬ deep-eql@3.0.1 │ │ └── type-detect@4.0.8 deduped │ ├── get-func-name@2.0.0 │ ├── pathval@1.1.0 │ └── type-detect@4.0.8 ├─┬ chai-http@4.3.0 │ ├── @types/chai@4.2.8 │ ├─┬ @types/superagent@3.8.7 │ │ ├── @types/cookiejar@2.1.1 │ │ └── @types/node@10.17.14 │ ├── cookiejar@2.1.2 │ ├─┬ is-ip@2.0.0 │ │ └── ip-regex@2.1.0 │ ├── methods@1.1.2 │ ├── qs@6.7.0 deduped │ └─┬ superagent@3.8.3 │ ├── component-emitter@1.3.0 │ ├── cookiejar@2.1.2 deduped │ ├─┬ debug@3.2.6 │ │ └── ms@2.1.2 │ ├── extend@3.0.2 deduped │ ├── form-data@2.3.3 deduped │ ├── formidable@1.2.1 │ ├── methods@1.1.2 deduped │ ├── mime@1.6.0 │ ├── qs@6.7.0 deduped │ └─┬ readable-stream@2.3.7 │ ├── core-util-is@1.0.2 │ ├── inherits@2.0.3 deduped │ ├── isarray@1.0.0 deduped │ ├── process-nextick-args@2.0.1 │ ├── safe-buffer@5.1.2 deduped │ ├─┬ string_decoder@1.1.1 │ │ └── safe-buffer@5.1.2 deduped │ └── util-deprecate@1.0.2 ├── clim@1.1.1 ├─┬ compression@1.7.4 │ ├─┬ accepts@1.3.7 │ │ ├── mime-types@2.1.26 deduped │ │ └── negotiator@0.6.2 │ ├── bytes@3.0.0 │ ├─┬ compressible@2.0.18 │ │ └── mime-db@1.43.0 │ ├── debug@2.6.9 deduped │ ├── on-headers@1.0.2 │ ├── safe-buffer@5.1.2 │ └── vary@1.1.2 ├─┬ cors@2.8.5 │ ├── object-assign@4.1.1 │ └── vary@1.1.2 deduped ├─┬ cron@1.8.2 │ └─┬ moment-timezone@0.5.27 │ └── moment@2.24.0 deduped ├─┬ csvtojson@2.0.10 │ ├── bluebird@3.7.2 │ ├── lodash@4.17.15 │ └─┬ strip-bom@2.0.0 │ └── is-utf8@0.2.1 ├─┬ dialogflow@1.1.2 │ ├─┬ google-gax@1.14.1 │ │ ├─┬ @grpc/grpc-js@0.6.15 │ │ │ └── semver@6.3.0 deduped │ │ ├─┬ @grpc/proto-loader@0.5.3 │ │ │ ├── lodash.camelcase@4.3.0 │ │ │ └── protobufjs@6.8.8 deduped │ │ ├─┬ @types/fs-extra@8.0.1 │ │ │ └── @types/node@10.17.14 deduped │ │ ├── @types/long@4.0.1 │ │ ├─┬ abort-controller@3.0.0 │ │ │ └── event-target-shim@5.0.1 │ │ ├─┬ duplexify@3.7.1 │ │ │ ├─┬ end-of-stream@1.4.4 │ │ │ │ └── once@1.4.0 deduped │ │ │ ├── inherits@2.0.3 deduped │ │ │ ├── readable-stream@2.3.7 deduped │ │ │ └── stream-shift@1.0.1 │ │ ├─┬ google-auth-library@5.9.2 │ │ │ ├── arrify@2.0.1 │ │ │ ├── base64-js@1.3.1 deduped │ │ │ ├── fast-text-encoding@1.0.0 │ │ │ ├─┬ gaxios@2.3.0 │ │ │ │ ├── abort-controller@3.0.0 deduped │ │ │ │ ├── extend@3.0.2 deduped │ │ │ │ ├─┬ https-proxy-agent@4.0.0 │ │ │ │ │ ├── agent-base@5.1.1 │ │ │ │ │ └─┬ debug@4.1.1 │ │ │ │ │ └── ms@2.1.2 │ │ │ │ ├── is-stream@2.0.0 │ │ │ │ └── node-fetch@2.6.0 deduped │ │ │ ├─┬ gcp-metadata@3.3.1 │ │ │ │ ├── gaxios@2.3.0 deduped │ │ │ │ └─┬ json-bigint@0.3.0 │ │ │ │ └── bignumber.js@7.2.1 │ │ │ ├─┬ gtoken@4.1.4 │ │ │ │ ├── gaxios@2.3.0 deduped │ │ │ │ ├─┬ google-p12-pem@2.0.4 │ │ │ │ │ └── node-forge@0.9.1 │ │ │ │ ├── jws@4.0.0 deduped │ │ │ │ └── mime@2.4.4 │ │ │ ├─┬ jws@4.0.0 │ │ │ │ ├─┬ jwa@2.0.0 │ │ │ │ │ ├── buffer-equal-constant-time@1.0.1 deduped │ │ │ │ │ ├── ecdsa-sig-formatter@1.0.11 deduped │ │ │ │ │ └── safe-buffer@5.1.2 deduped │ │ │ │ └── safe-buffer@5.1.2 deduped │ │ │ └─┬ lru-cache@5.1.1 │ │ │ └── yallist@3.1.1 │ │ ├── is-stream-ended@0.1.4 │ │ ├── lodash.at@4.6.0 │ │ ├── lodash.has@4.5.2 │ │ ├── node-fetch@2.6.0 │ │ ├── protobufjs@6.8.8 deduped │ │ ├─┬ retry-request@4.1.1 │ │ │ ├─┬ debug@4.1.1 │ │ │ │ └── ms@2.1.2 │ │ │ └─┬ through2@3.0.1 │ │ │ └── readable-stream@2.3.7 deduped │ │ ├── semver@6.3.0 │ │ └── walkdir@0.4.1 │ └─┬ protobufjs@6.8.8 │ ├── @protobufjs/aspromise@1.1.2 │ ├── @protobufjs/base64@1.1.2 │ ├── @protobufjs/codegen@2.0.4 │ ├── @protobufjs/eventemitter@1.1.0 │ ├─┬ @protobufjs/fetch@1.1.0 │ │ ├── @protobufjs/aspromise@1.1.2 deduped │ │ └── @protobufjs/inquire@1.1.0 deduped │ ├── @protobufjs/float@1.0.2 │ ├── @protobufjs/inquire@1.1.0 │ ├── @protobufjs/path@1.1.2 │ ├── @protobufjs/pool@1.1.0 │ ├── @protobufjs/utf8@1.1.0 │ ├── @types/long@4.0.1 deduped │ ├── @types/node@10.17.14 deduped │ └── long@4.0.0 ├── dotenv@8.2.0 ├─┬ express@4.17.1 │ ├── accepts@1.3.7 deduped │ ├── array-flatten@1.1.1 │ ├── body-parser@1.19.0 deduped │ ├─┬ content-disposition@0.5.3 │ │ └── safe-buffer@5.1.2 deduped │ ├── content-type@1.0.4 deduped │ ├── cookie@0.4.0 │ ├── cookie-signature@1.0.6 │ ├── debug@2.6.9 deduped │ ├── depd@1.1.2 deduped │ ├── encodeurl@1.0.2 │ ├── escape-html@1.0.3 │ ├── etag@1.8.1 │ ├─┬ finalhandler@1.1.2 │ │ ├── debug@2.6.9 deduped │ │ ├── encodeurl@1.0.2 deduped │ │ ├── escape-html@1.0.3 deduped │ │ ├── on-finished@2.3.0 deduped │ │ ├── parseurl@1.3.3 deduped │ │ ├── statuses@1.5.0 deduped │ │ └── unpipe@1.0.0 deduped │ ├── fresh@0.5.2 │ ├── merge-descriptors@1.0.1 │ ├── methods@1.1.2 deduped │ ├── on-finished@2.3.0 deduped │ ├── parseurl@1.3.3 │ ├── path-to-regexp@0.1.7 │ ├─┬ proxy-addr@2.0.5 │ │ ├── forwarded@0.1.2 │ │ └── ipaddr.js@1.9.0 │ ├── qs@6.7.0 deduped │ ├── range-parser@1.2.1 │ ├── safe-buffer@5.1.2 deduped │ ├─┬ send@0.17.1 │ │ ├── debug@2.6.9 deduped │ │ ├── depd@1.1.2 deduped │ │ ├── destroy@1.0.4 │ │ ├── encodeurl@1.0.2 deduped │ │ ├── escape-html@1.0.3 deduped │ │ ├── etag@1.8.1 deduped │ │ ├── fresh@0.5.2 deduped │ │ ├── http-errors@1.7.2 deduped │ │ ├── mime@1.6.0 │ │ ├── ms@2.1.1 │ │ ├── on-finished@2.3.0 deduped │ │ ├── range-parser@1.2.1 deduped │ │ └── statuses@1.5.0 deduped │ ├─┬ serve-static@1.14.1 │ │ ├── encodeurl@1.0.2 deduped │ │ ├── escape-html@1.0.3 deduped │ │ ├── parseurl@1.3.3 deduped │ │ └── send@0.17.1 deduped │ ├── setprototypeof@1.1.1 │ ├── statuses@1.5.0 │ ├── type-is@1.6.18 deduped │ ├── utils-merge@1.0.1 │ └── vary@1.1.2 deduped ├─┬ helmet@3.21.2 │ ├── depd@2.0.0 │ ├── dns-prefetch-control@0.2.0 │ ├── dont-sniff-mimetype@1.1.0 │ ├── expect-ct@0.2.0 │ ├── feature-policy@0.3.0 │ ├── frameguard@3.1.0 │ ├── helmet-crossdomain@0.4.0 │ ├─┬ helmet-csp@2.9.4 │ │ ├── bowser@2.9.0 │ │ ├── camelize@1.0.0 │ │ ├── content-security-policy-builder@2.1.0 │ │ └── dasherize@2.0.0 │ ├── hide-powered-by@1.1.0 │ ├── hpkp@2.0.0 │ ├─┬ hsts@2.2.0 │ │ └── depd@2.0.0 │ ├── ienoopen@1.1.0 │ ├── nocache@2.1.0 │ ├── referrer-policy@1.2.0 │ └── x-xss-protection@1.3.0 ├─┬ jsdoc@3.6.3 │ ├── @babel/parser@7.8.4 │ ├── bluebird@3.7.2 deduped │ ├─┬ catharsis@0.8.11 │ │ └── lodash@4.17.15 deduped │ ├── escape-string-regexp@2.0.0 │ ├─┬ js2xmlparser@4.0.0 │ │ └── xmlcreate@2.0.1 │ ├─┬ klaw@3.0.0 │ │ └── graceful-fs@4.2.3 │ ├─┬ markdown-it@8.4.2 │ │ ├─┬ argparse@1.0.10 │ │ │ └── sprintf-js@1.0.3 │ │ ├── entities@1.1.2 │ │ ├─┬ linkify-it@2.2.0 │ │ │ └── uc.micro@1.0.6 deduped │ │ ├── mdurl@1.0.1 │ │ └── uc.micro@1.0.6 │ ├── markdown-it-anchor@5.2.5 │ ├── marked@0.7.0 │ ├─┬ mkdirp@0.5.1 │ │ └── minimist@0.0.8 │ ├─┬ requizzle@0.2.3 │ │ └── lodash@4.17.15 deduped │ ├── strip-json-comments@3.0.1 │ ├── taffydb@2.6.2 │ └── underscore@1.9.2 ├─┬ jsonwebtoken@8.5.1 │ ├─┬ jws@3.2.2 │ │ ├─┬ jwa@1.4.1 │ │ │ ├── buffer-equal-constant-time@1.0.1 │ │ │ ├─┬ ecdsa-sig-formatter@1.0.11 │ │ │ │ └── safe-buffer@5.1.2 deduped │ │ │ └── safe-buffer@5.1.2 deduped │ │ └── safe-buffer@5.1.2 deduped │ ├── lodash.includes@4.3.0 │ ├── lodash.isboolean@3.0.3 │ ├── lodash.isinteger@4.0.4 │ ├── lodash.isnumber@3.0.3 │ ├── lodash.isplainobject@4.0.6 │ ├── lodash.isstring@4.0.1 │ ├── lodash.once@4.1.1 │ ├── ms@2.1.2 │ └── semver@5.7.1 ├── lokijs@1.5.8 ├─┬ md5@2.2.1 │ ├── charenc@0.0.2 │ ├── crypt@0.0.2 │ └── is-buffer@1.1.6 ├─┬ mocha@7.0.1 │ ├── ansi-colors@3.2.3 │ ├── browser-stdout@1.3.1 │ ├─┬ chokidar@3.3.0 │ │ ├─┬ anymatch@3.1.1 │ │ │ ├── normalize-path@3.0.0 deduped │ │ │ └── picomatch@2.2.1 │ │ ├─┬ braces@3.0.2 │ │ │ └─┬ fill-range@7.0.1 │ │ │ └─┬ to-regex-range@5.0.1 │ │ │ └── is-number@7.0.0 │ │ ├── fsevents@2.1.2 │ │ ├─┬ glob-parent@5.1.0 │ │ │ └── is-glob@4.0.1 deduped │ │ ├─┬ is-binary-path@2.1.0 │ │ │ └── binary-extensions@2.0.0 │ │ ├─┬ is-glob@4.0.1 │ │ │ └── is-extglob@2.1.1 │ │ ├── normalize-path@3.0.0 │ │ └─┬ readdirp@3.2.0 │ │ └── picomatch@2.2.1 deduped │ ├─┬ debug@3.2.6 │ │ └── ms@2.1.1 deduped │ ├── diff@3.5.0 │ ├── escape-string-regexp@1.0.5 │ ├─┬ find-up@3.0.0 │ │ └─┬ locate-path@3.0.0 │ │ ├─┬ p-locate@3.0.0 │ │ │ └─┬ p-limit@2.2.2 │ │ │ └── p-try@2.2.0 │ │ └── path-exists@3.0.0 │ ├─┬ glob@7.1.3 │ │ ├── fs.realpath@1.0.0 │ │ ├─┬ inflight@1.0.6 │ │ │ ├── once@1.4.0 deduped │ │ │ └── wrappy@1.0.2 │ │ ├── inherits@2.0.3 deduped │ │ ├── minimatch@3.0.4 deduped │ │ ├─┬ once@1.4.0 │ │ │ └── wrappy@1.0.2 deduped │ │ └── path-is-absolute@1.0.1 │ ├── growl@1.10.5 │ ├── he@1.2.0 │ ├─┬ js-yaml@3.13.1 │ │ ├── argparse@1.0.10 deduped │ │ └── esprima@4.0.1 │ ├─┬ log-symbols@2.2.0 │ │ └── chalk@2.4.2 deduped │ ├─┬ minimatch@3.0.4 │ │ └─┬ brace-expansion@1.1.11 │ │ ├── balanced-match@1.0.0 │ │ └── concat-map@0.0.1 │ ├── mkdirp@0.5.1 deduped │ ├── ms@2.1.1 │ ├─┬ node-environment-flags@1.0.6 │ │ ├─┬ object.getownpropertydescriptors@2.1.0 │ │ │ ├── define-properties@1.1.3 deduped │ │ │ └─┬ es-abstract@1.17.4 │ │ │ ├─┬ es-to-primitive@1.2.1 │ │ │ │ ├── is-callable@1.1.5 deduped │ │ │ │ ├── is-date-object@1.0.2 │ │ │ │ └─┬ is-symbol@1.0.3 │ │ │ │ └── has-symbols@1.0.1 deduped │ │ │ ├── function-bind@1.1.1 deduped │ │ │ ├─┬ has@1.0.3 │ │ │ │ └── function-bind@1.1.1 deduped │ │ │ ├── has-symbols@1.0.1 deduped │ │ │ ├── is-callable@1.1.5 │ │ │ ├─┬ is-regex@1.0.5 │ │ │ │ └── has@1.0.3 deduped │ │ │ ├── object-inspect@1.7.0 │ │ │ ├── object-keys@1.1.1 deduped │ │ │ ├── object.assign@4.1.0 deduped │ │ │ ├─┬ string.prototype.trimleft@2.1.1 │ │ │ │ ├── define-properties@1.1.3 deduped │ │ │ │ └── function-bind@1.1.1 deduped │ │ │ └─┬ string.prototype.trimright@2.1.1 │ │ │ ├── define-properties@1.1.3 deduped │ │ │ └── function-bind@1.1.1 deduped │ │ └── semver@5.7.1 │ ├─┬ object.assign@4.1.0 │ │ ├─┬ define-properties@1.1.3 │ │ │ └── object-keys@1.1.1 deduped │ │ ├── function-bind@1.1.1 │ │ ├── has-symbols@1.0.1 │ │ └── object-keys@1.1.1 │ ├── strip-json-comments@2.0.1 │ ├─┬ supports-color@6.0.0 │ │ └── has-flag@3.0.0 │ ├─┬ which@1.3.1 │ │ └── isexe@2.0.0 │ ├─┬ wide-align@1.1.3 │ │ └─┬ string-width@2.1.1 │ │ ├── is-fullwidth-code-point@2.0.0 │ │ └─┬ strip-ansi@4.0.0 │ │ └── ansi-regex@3.0.0 │ ├─┬ yargs@13.3.0 │ │ ├─┬ cliui@5.0.0 │ │ │ ├─┬ string-width@3.1.0 │ │ │ │ ├── emoji-regex@7.0.3 deduped │ │ │ │ ├── is-fullwidth-code-point@2.0.0 deduped │ │ │ │ └── strip-ansi@5.2.0 deduped │ │ │ ├─┬ strip-ansi@5.2.0 │ │ │ │ └── ansi-regex@4.1.0 │ │ │ └─┬ wrap-ansi@5.1.0 │ │ │ ├── ansi-styles@3.2.1 deduped │ │ │ ├─┬ string-width@3.1.0 │ │ │ │ ├── emoji-regex@7.0.3 deduped │ │ │ │ ├── is-fullwidth-code-point@2.0.0 deduped │ │ │ │ └── strip-ansi@5.2.0 deduped │ │ │ └─┬ strip-ansi@5.2.0 │ │ │ └── ansi-regex@4.1.0 │ │ ├── find-up@3.0.0 deduped │ │ ├── get-caller-file@2.0.5 │ │ ├── require-directory@2.1.1 │ │ ├── require-main-filename@2.0.0 │ │ ├── set-blocking@2.0.0 │ │ ├─┬ string-width@3.1.0 │ │ │ ├── emoji-regex@7.0.3 │ │ │ ├── is-fullwidth-code-point@2.0.0 deduped │ │ │ └─┬ strip-ansi@5.2.0 │ │ │ └── ansi-regex@4.1.0 │ │ ├── which-module@2.0.0 │ │ ├── y18n@4.0.0 │ │ └── yargs-parser@13.1.1 deduped │ ├─┬ yargs-parser@13.1.1 │ │ ├── camelcase@5.3.1 │ │ └── decamelize@1.2.0 │ └─┬ yargs-unparser@1.6.0 │ ├─┬ flat@4.1.0 │ │ └── is-buffer@2.0.4 │ ├── lodash@4.17.15 deduped │ └── yargs@13.3.0 deduped ├── moment@2.24.0 ├─┬ mongoose@5.8.10 │ ├── bson@1.1.3 │ ├── kareem@2.3.1 │ ├─┬ mongodb@3.4.1 │ │ ├── bson@1.1.3 deduped │ │ ├─┬ require_optional@1.0.1 │ │ │ ├── resolve-from@2.0.0 │ │ │ └── semver@5.7.1 │ │ ├── safe-buffer@5.1.2 deduped │ │ └─┬ saslprep@1.0.3 │ │ └─┬ sparse-bitfield@3.0.3 │ │ └── memory-pager@1.5.0 │ ├── mongoose-legacy-pluralize@1.0.2 │ ├── mpath@0.6.0 │ ├─┬ mquery@3.2.2 │ │ ├── bluebird@3.5.1 │ │ ├─┬ debug@3.1.0 │ │ │ └── ms@2.0.0 deduped │ │ ├── regexp-clone@1.0.0 deduped │ │ ├── safe-buffer@5.1.2 deduped │ │ └── sliced@1.0.1 deduped │ ├── ms@2.1.2 │ ├── regexp-clone@1.0.0 │ ├── safe-buffer@5.1.2 deduped │ ├── sift@7.0.1 │ └── sliced@1.0.1 ├─┬ morgan@1.9.1 │ ├─┬ basic-auth@2.0.1 │ │ └── safe-buffer@5.1.2 deduped │ ├── debug@2.6.9 deduped │ ├── depd@1.1.2 deduped │ ├── on-finished@2.3.0 deduped │ └── on-headers@1.0.2 deduped ├─┬ pg@7.18.1 │ ├── buffer-writer@2.0.0 │ ├── packet-reader@1.0.0 │ ├── pg-connection-string@0.1.3 │ ├── pg-packet-stream@1.1.0 │ ├── pg-pool@2.0.10 │ ├─┬ pg-types@2.2.0 │ │ ├── pg-int8@1.0.1 │ │ ├── postgres-array@2.0.0 │ │ ├── postgres-bytea@1.0.0 │ │ ├── postgres-date@1.0.4 │ │ └─┬ postgres-interval@1.2.0 │ │ └── xtend@4.0.2 │ ├─┬ pgpass@1.0.2 │ │ └─┬ split@1.0.1 │ │ └── through@2.3.8 │ └── semver@4.3.2 ├─┬ pm2@4.2.3 │ ├─┬ @pm2/agent@0.5.26 │ │ ├─┬ async@2.6.3 │ │ │ └── lodash@4.17.15 deduped │ │ ├── chalk@2.4.2 deduped │ │ ├── eventemitter2@5.0.1 deduped │ │ ├── fclone@1.0.11 deduped │ │ ├── moment@2.24.0 deduped │ │ ├─┬ nssocket@0.6.0 │ │ │ ├── eventemitter2@0.4.14 │ │ │ └── lazy@1.0.11 │ │ ├── pm2-axon@3.3.0 deduped │ │ ├── pm2-axon-rpc@0.5.1 deduped │ │ ├─┬ proxy-agent@3.1.1 │ │ │ ├─┬ agent-base@4.3.0 │ │ │ │ └─┬ es6-promisify@5.0.0 │ │ │ │ └── es6-promise@4.2.8 │ │ │ ├─┬ debug@4.1.1 │ │ │ │ └── ms@2.1.2 │ │ │ ├─┬ http-proxy-agent@2.1.0 │ │ │ │ ├─┬ agent-base@4.3.0 │ │ │ │ │ └── es6-promisify@5.0.0 deduped │ │ │ │ └─┬ debug@3.1.0 │ │ │ │ └── ms@2.0.0 deduped │ │ │ ├─┬ https-proxy-agent@3.0.1 │ │ │ │ ├── agent-base@4.3.0 deduped │ │ │ │ └─┬ debug@3.2.6 │ │ │ │ └── ms@2.1.2 deduped │ │ │ ├── lru-cache@5.1.1 deduped │ │ │ ├─┬ pac-proxy-agent@3.0.1 │ │ │ │ ├─┬ agent-base@4.3.0 │ │ │ │ │ └── es6-promisify@5.0.0 deduped │ │ │ │ ├─┬ debug@4.1.1 │ │ │ │ │ └── ms@2.1.2 │ │ │ │ ├─┬ get-uri@2.0.4 │ │ │ │ │ ├── data-uri-to-buffer@1.2.0 │ │ │ │ │ ├── debug@2.6.9 deduped │ │ │ │ │ ├── extend@3.0.2 deduped │ │ │ │ │ ├── file-uri-to-path@1.0.0 │ │ │ │ │ ├─┬ ftp@0.3.10 │ │ │ │ │ │ ├─┬ readable-stream@1.1.14 │ │ │ │ │ │ │ ├── core-util-is@1.0.2 deduped │ │ │ │ │ │ │ ├── inherits@2.0.3 deduped │ │ │ │ │ │ │ ├── isarray@0.0.1 │ │ │ │ │ │ │ └── string_decoder@0.10.31 │ │ │ │ │ │ └── xregexp@2.0.0 │ │ │ │ │ └── readable-stream@2.3.7 deduped │ │ │ │ ├── http-proxy-agent@2.1.0 deduped │ │ │ │ ├─┬ https-proxy-agent@3.0.1 │ │ │ │ │ ├── agent-base@4.3.0 deduped │ │ │ │ │ └─┬ debug@3.2.6 │ │ │ │ │ └── ms@2.1.2 deduped │ │ │ │ ├─┬ pac-resolver@3.0.0 │ │ │ │ │ ├── co@4.6.0 │ │ │ │ │ ├─┬ degenerator@1.0.4 │ │ │ │ │ │ ├── ast-types@0.13.2 │ │ │ │ │ │ ├─┬ escodegen@1.13.0 │ │ │ │ │ │ │ ├── esprima@4.0.1 │ │ │ │ │ │ │ ├── estraverse@4.3.0 │ │ │ │ │ │ │ ├── esutils@2.0.3 │ │ │ │ │ │ │ ├─┬ optionator@0.8.3 │ │ │ │ │ │ │ │ ├── deep-is@0.1.3 │ │ │ │ │ │ │ │ ├── fast-levenshtein@2.0.6 │ │ │ │ │ │ │ │ ├─┬ levn@0.3.0 │ │ │ │ │ │ │ │ │ ├── prelude-ls@1.1.2 deduped │ │ │ │ │ │ │ │ │ └── type-check@0.3.2 deduped │ │ │ │ │ │ │ │ ├── prelude-ls@1.1.2 │ │ │ │ │ │ │ │ ├─┬ type-check@0.3.2 │ │ │ │ │ │ │ │ │ └── prelude-ls@1.1.2 deduped │ │ │ │ │ │ │ │ └── word-wrap@1.2.3 │ │ │ │ │ │ │ └── source-map@0.6.1 deduped │ │ │ │ │ │ └── esprima@3.1.3 │ │ │ │ │ ├── ip@1.1.5 │ │ │ │ │ ├── netmask@1.0.6 │ │ │ │ │ └── thunkify@2.1.2 │ │ │ │ ├── raw-body@2.4.0 deduped │ │ │ │ └── socks-proxy-agent@4.0.2 deduped │ │ │ ├── proxy-from-env@1.0.0 │ │ │ └─┬ socks-proxy-agent@4.0.2 │ │ │ ├─┬ agent-base@4.2.1 │ │ │ │ └── es6-promisify@5.0.0 deduped │ │ │ └─┬ socks@2.3.3 │ │ │ ├── ip@1.1.5 deduped │ │ │ └── smart-buffer@4.1.0 │ │ ├── semver@5.7.1 │ │ └─┬ ws@5.2.2 │ │ └── async-limiter@1.0.1 │ ├─┬ @pm2/io@4.3.3 │ │ ├─┬ @opencensus/core@0.0.9 │ │ │ ├─┬ continuation-local-storage@3.2.1 │ │ │ │ ├─┬ async-listener@0.6.10 │ │ │ │ │ ├── semver@5.7.1 │ │ │ │ │ └── shimmer@1.2.1 deduped │ │ │ │ └─┬ emitter-listener@1.1.2 │ │ │ │ └── shimmer@1.2.1 deduped │ │ │ ├── log-driver@1.2.7 │ │ │ ├── semver@5.7.1 │ │ │ ├── shimmer@1.2.1 deduped │ │ │ └── uuid@3.4.0 deduped │ │ ├─┬ @opencensus/propagation-b3@0.0.8 │ │ │ ├─┬ @opencensus/core@0.0.8 │ │ │ │ ├── continuation-local-storage@3.2.1 deduped │ │ │ │ ├── log-driver@1.2.7 deduped │ │ │ │ ├── semver@5.7.1 │ │ │ │ ├── shimmer@1.2.1 deduped │ │ │ │ └── uuid@3.4.0 deduped │ │ │ └── uuid@3.4.0 deduped │ │ ├─┬ @pm2/agent-node@1.1.10 │ │ │ ├─┬ debug@3.2.6 │ │ │ │ └── ms@2.1.2 │ │ │ ├── eventemitter2@5.0.1 deduped │ │ │ ├── proxy-agent@3.1.1 deduped │ │ │ └─┬ ws@6.2.1 │ │ │ └── async-limiter@1.0.1 deduped │ │ ├─┬ async@2.6.3 │ │ │ └── lodash@4.17.15 deduped │ │ ├─┬ debug@3.1.0 │ │ │ └── ms@2.0.0 deduped │ │ ├── eventemitter2@5.0.1 deduped │ │ ├─┬ require-in-the-middle@5.0.3 │ │ │ ├─┬ debug@4.1.1 │ │ │ │ └── ms@2.1.2 │ │ │ ├── module-details-from-path@1.0.3 │ │ │ └─┬ resolve@1.15.0 │ │ │ └── path-parse@1.0.6 │ │ ├── semver@5.5.0 │ │ ├── shimmer@1.2.1 │ │ ├── signal-exit@3.0.2 │ │ └── tslib@1.9.3 │ ├─┬ @pm2/js-api@0.5.60 │ │ ├─┬ async@2.6.3 │ │ │ └── lodash@4.17.15 deduped │ │ ├─┬ axios@0.19.2 │ │ │ └─┬ follow-redirects@1.5.10 │ │ │ └─┬ debug@3.1.0 │ │ │ └── ms@2.0.0 deduped │ │ ├── debug@2.6.9 deduped │ │ ├── eventemitter2@4.1.2 │ │ └─┬ ws@3.3.3 │ │ ├── async-limiter@1.0.1 deduped │ │ ├── safe-buffer@5.1.2 deduped │ │ └── ultron@1.1.1 │ ├─┬ @pm2/pm2-version-check@1.0.3 │ │ └─┬ debug@4.1.1 │ │ └── ms@2.1.2 │ ├── async@3.1.1 │ ├── blessed@0.1.81 │ ├─┬ chalk@2.4.2 │ │ ├─┬ ansi-styles@3.2.1 │ │ │ └─┬ color-convert@1.9.3 │ │ │ └── color-name@1.1.3 │ │ ├── escape-string-regexp@1.0.5 deduped │ │ └─┬ supports-color@5.5.0 │ │ └── has-flag@3.0.0 deduped │ ├─┬ chokidar@3.3.1 │ │ ├── anymatch@3.1.1 deduped │ │ ├── braces@3.0.2 deduped │ │ ├── fsevents@2.1.2 deduped │ │ ├── glob-parent@5.1.0 deduped │ │ ├── is-binary-path@2.1.0 deduped │ │ ├── is-glob@4.0.1 deduped │ │ ├── normalize-path@3.0.0 deduped │ │ └─┬ readdirp@3.3.0 │ │ └── picomatch@2.2.1 deduped │ ├─┬ cli-table-redemption@1.0.1 │ │ └─┬ chalk@1.1.3 │ │ ├── ansi-styles@2.2.1 │ │ ├── escape-string-regexp@1.0.5 deduped │ │ ├─┬ has-ansi@2.0.0 │ │ │ └── ansi-regex@2.1.1 │ │ ├─┬ strip-ansi@3.0.1 │ │ │ └── ansi-regex@2.1.1 deduped │ │ └── supports-color@2.0.0 │ ├── commander@2.15.1 │ ├─┬ cron@1.7.1 │ │ └── moment-timezone@0.5.27 deduped │ ├── date-fns@1.30.1 │ ├─┬ debug@4.1.1 │ │ └── ms@2.1.2 │ ├─┬ enquirer@2.3.4 │ │ └── ansi-colors@3.2.4 │ ├── eventemitter2@5.0.1 │ ├── fclone@1.0.11 │ ├── lodash@4.17.14 │ ├── mkdirp@0.5.1 deduped │ ├── moment@2.24.0 deduped │ ├─┬ needle@2.4.0 │ │ ├─┬ debug@3.2.6 │ │ │ └── ms@2.1.2 │ │ ├── iconv-lite@0.4.24 deduped │ │ └── sax@1.2.4 │ ├─┬ pidusage@2.0.17 │ │ └── safe-buffer@5.1.2 deduped │ ├─┬ pm2-axon@3.3.0 │ │ ├── amp@0.3.1 │ │ ├─┬ amp-message@0.1.2 │ │ │ └── amp@0.3.1 deduped │ │ ├─┬ debug@3.2.6 │ │ │ └── ms@2.1.2 │ │ └── escape-regexp@0.0.1 │ ├─┬ pm2-axon-rpc@0.5.1 │ │ └─┬ debug@3.2.6 │ │ └── ms@2.1.2 │ ├─┬ pm2-deploy@0.4.0 │ │ ├─┬ async@2.6.3 │ │ │ └── lodash@4.17.15 deduped │ │ └── tv4@1.3.0 │ ├─┬ pm2-multimeter@0.1.2 │ │ └── charm@0.1.2 │ ├─┬ promptly@2.2.0 │ │ └─┬ read@1.0.7 │ │ └── mute-stream@0.0.8 │ ├── ps-list@6.3.0 │ ├── semver@5.7.1 │ ├─┬ shelljs@0.8.3 │ │ ├─┬ glob@7.1.6 │ │ │ ├── fs.realpath@1.0.0 deduped │ │ │ ├── inflight@1.0.6 deduped │ │ │ ├── inherits@2.0.3 deduped │ │ │ ├── minimatch@3.0.4 deduped │ │ │ ├── once@1.4.0 deduped │ │ │ └── path-is-absolute@1.0.1 deduped │ │ ├── interpret@1.2.0 │ │ └─┬ rechoir@0.6.2 │ │ └── resolve@1.15.0 deduped │ ├─┬ source-map-support@0.5.12 │ │ ├── buffer-from@1.1.1 │ │ └── source-map@0.6.1 │ ├── sprintf-js@1.1.2 │ ├── systeminformation@4.21.0 │ ├─┬ vizion@2.0.2 │ │ ├─┬ async@2.6.1 │ │ │ └── lodash@4.17.15 deduped │ │ ├── git-node-fs@1.0.0 │ │ ├── ini@1.3.5 │ │ ├─┬ js-git@0.7.8 │ │ │ ├── bodec@0.1.0 │ │ │ ├── culvert@0.1.2 │ │ │ ├── git-sha1@0.1.2 │ │ │ └── pako@0.2.9 │ │ ├── lodash.findindex@4.6.0 │ │ ├── lodash.foreach@4.5.0 │ │ ├── lodash.get@4.4.2 │ │ └── lodash.last@3.0.0 │ └─┬ yamljs@0.3.0 │ ├── argparse@1.0.10 deduped │ └── glob@7.1.6 deduped ├─┬ request@2.88.0 │ ├── aws-sign2@0.7.0 │ ├── aws4@1.9.1 │ ├── caseless@0.12.0 │ ├─┬ combined-stream@1.0.8 │ │ └── delayed-stream@1.0.0 │ ├── extend@3.0.2 │ ├── forever-agent@0.6.1 │ ├─┬ form-data@2.3.3 │ │ ├── asynckit@0.4.0 │ │ ├── combined-stream@1.0.8 deduped │ │ └── mime-types@2.1.26 deduped │ ├─┬ har-validator@5.1.3 │ │ ├─┬ ajv@6.11.0 │ │ │ ├── fast-deep-equal@3.1.1 │ │ │ ├── fast-json-stable-stringify@2.1.0 │ │ │ ├── json-schema-traverse@0.4.1 │ │ │ └─┬ uri-js@4.2.2 │ │ │ └── punycode@2.1.1 │ │ └── har-schema@2.0.0 │ ├─┬ http-signature@1.2.0 │ │ ├── assert-plus@1.0.0 │ │ ├─┬ jsprim@1.4.1 │ │ │ ├── assert-plus@1.0.0 deduped │ │ │ ├── extsprintf@1.3.0 │ │ │ ├── json-schema@0.2.3 │ │ │ └─┬ verror@1.10.0 │ │ │ ├── assert-plus@1.0.0 deduped │ │ │ ├── core-util-is@1.0.2 deduped │ │ │ └── extsprintf@1.3.0 deduped │ │ └─┬ sshpk@1.16.1 │ │ ├─┬ asn1@0.2.4 │ │ │ └── safer-buffer@2.1.2 deduped │ │ ├── assert-plus@1.0.0 deduped │ │ ├─┬ bcrypt-pbkdf@1.0.2 │ │ │ └── tweetnacl@0.14.5 deduped │ │ ├─┬ dashdash@1.14.1 │ │ │ └── assert-plus@1.0.0 deduped │ │ ├─┬ ecc-jsbn@0.1.2 │ │ │ ├── jsbn@0.1.1 deduped │ │ │ └── safer-buffer@2.1.2 deduped │ │ ├─┬ getpass@0.1.7 │ │ │ └── assert-plus@1.0.0 deduped │ │ ├── jsbn@0.1.1 │ │ ├── safer-buffer@2.1.2 deduped │ │ └── tweetnacl@0.14.5 │ ├── is-typedarray@1.0.0 │ ├── isstream@0.1.2 │ ├── json-stringify-safe@5.0.1 │ ├─┬ mime-types@2.1.26 │ │ └── mime-db@1.43.0 deduped │ ├── oauth-sign@0.9.0 │ ├── performance-now@2.1.0 │ ├── qs@6.5.2 │ ├── safe-buffer@5.1.2 deduped │ ├─┬ tough-cookie@2.4.3 │ │ ├── psl@1.7.0 │ │ └── punycode@1.4.1 │ ├─┬ tunnel-agent@0.6.0 │ │ └── safe-buffer@5.1.2 deduped │ └── uuid@3.4.0 deduped ├─┬ universal-analytics@0.4.20 │ ├─┬ debug@3.2.6 │ │ └── ms@2.1.2 │ ├── request@2.88.0 deduped │ └── uuid@3.4.0 deduped └── uuid@3.4.0

I thought this would be helpfull in order to reproduce the bug!

Thank you and regards, Daniel

nnegrey commented 4 years ago

The below code throws the error for you?

  const dialogflow = require('dialogflow');
  const sessionClient = new dialogflow.SessionsClient({
    keyFilename:'path/to/my/service_account_key.json'
  });

  async function detectIntent() {
    projectId = await sessionClient.getProjectId();
    const sessionPath = sessionClient.sessionPath(projectId, '1234');

    const request = {
      "session": sessionPath,
      "queryInput": {
        "text": {
          "text": "hello",
          "languageCode": "es-ES",
        },
      },
    };

    const responses = await sessionClient.detectIntent(request);
    console.log(responses[0])
  }
  detectIntent();
DaRo0 commented 4 years ago

Hello @nnegrey ,

I've tried that code, I needed to change it slightly (it was returning an unhandled promise rejection): try { await detectIntent(); }catch (e){ console.log("ERROR: ",e); }

I still get the same error :(

I tried to debug a bit more:

At the file: grpc/grpc-js/build/src/channel.js:137 I've placed a console log to print the complete error, and here you have it:

{"message":"request to https://www.googleapis.com/oauth2/v4/token failed, reason: Security error on www.googleapis.com","type":"system","config":{"method":"POST","url":"https://www.googleapis.com/oauth2/v4/token","data":{"grant_type":"urn:ietf:params:oauth:grant-type:jwt-bearer","assertion":"xxxxxxxx"},"headers":{"Content-Type":"application/json","Accept":"application/json"},"responseType":"json","params":{},"body":"{\"grant_type\":\"urn:ietf:params:oauth:grant-type:jwt-bearer\",\"assertion\":\"xxxxxxxxxx\"}"}}

I've hided the jwt part.

Also, at the file: grpc/grpc-js/build/src/client.js:92 I've placed a console log to print the status and this is the result (nothing new so far, but a bit more data...): "code":2,"details":"Getting metadata from plugin failed with error: request to https://www.googleapis.com/oauth2/v4/token failed, reason: Security error on www.googleapis.com","metadata":{"internalRepr":{},"options":{}}}

If I can give you more info, put any console log somewhere else... anything, I'm here to help!

Thank you for your time @nnegrey and thank you @bcoe for mentioning him!

Regards, Daniel

nnegrey commented 4 years ago

What role does your service account have?

Might also be worth filing an issue here: https://cloud.google.com/support/docs/issue-trackers

DaRo0 commented 4 years ago

Hello @nnegrey ,

My service account has the role "admin".

I've also oppened an issue into google cloud forums the same day that I've opened it here: https://issuetracker.google.com/issues/148347362

But I got no answer yet :(

Thank you for your time @nnegrey

nnegrey commented 4 years ago

When you run that code locally, were you also running it inside the docker image?

DaRo0 commented 4 years ago

Hello @nnegrey ,

Nope, I run it outside the docker image, directly with node

nnegrey commented 4 years ago

What's your output from node -p process.versions?

DaRo0 commented 4 years ago

@nnegrey { http_parser: '2.8.0', node: '10.10.0', v8: '6.8.275.30-node.24', uv: '1.23.0', zlib: '1.2.11', ares: '1.14.0', modules: '64', nghttp2: '1.33.0', napi: '3', openssl: '1.1.0i', icu: '62.1', unicode: '11.0', cldr: '33.1', tz: '2018e' }

nnegrey commented 4 years ago

Would you mind trying to upgrade your openssl version to at least 1.1.1 as from their pages, 1.1.0 is no longer supported.

DaRo0 commented 4 years ago

Hello @nnegrey ,

I updated to node 12.13.1 (I was using 10.10.0) in order to update the openssl version attached to node to openssl: '1.1.1d' and I still get the same error

nnegrey commented 4 years ago

Dang, ok some, been asking around the from that error, we think it has to do with a certificate issue with ssl/tls.

Can you run with this NODE_DEBUG=http,https node

Just note that the http could expose some stuff, so check first. But that might give a better idea if a secure connection is even created.

bcoe commented 4 years ago

:wave: @DaRo0 if you have any flexibility in the container you run, I might also recommend experimenting with another distribution, e.g., Debian rather than Alpine, this sounds like an issue with the certificate chain.

DaRo0 commented 4 years ago

Hello @nnegrey , I will try it right now! Thank you :)

Hello @bcoe , actually I'm running it in local now, without any container (running it with node in my mac), we also tried with an alpine node installation, but I will try again with a debian image!

Thank you so much to both of you!

DaRo0 commented 4 years ago

Hello @nnegrey and @bcoe ,

We can confirm that it was failing because of a ssl/tls error. We had a custom module that was overriding the http.request method. Originally the logs were pointing to the grpc module, but the error was coming from that method mentioned above (which coincidently was exactly the same error string as the grpc module, and also logs were reflecting that file).

I'm really sorry to have you loose your time because at the end it was a mistake in one of our libraries, but at least you know that this is not due your node module!

Thank you very much for your time here, we can close this bug as it was completely my mistake!

nnegrey commented 4 years ago

Woo! Just glad you found an answer! :)