node.jsでAerospikeへの接続を試みています。
MacOS(El capitan)では正常に読み込み書き込みを確認できています。
Amazon EC2上では以下の様なエラーがでて動作しません。
エラー位置はAerospike接続したあとの、kinesis接続の箇所ですが、
エラーメッセージの内容はAerospikeになっています。
{ [AerospikeError: uv_tcp_connect failed: unknown error] name: 'AerospikeError', message: 'uv_tcp_connect failed: unknown error', code: -6, func: 'as_uv_connect', file: 'src/main/aerospike/as_event_uv.c', line: 585 } /home/services/jenkins/worker/USER/routes/kinesis.js:28 if (error) throw error; ^ AerospikeError: uv_tcp_connect failed: unknown error at Function.AerospikeError.fromASError (/home/services/jenkins/worker/USER/node_modules/aerospike/lib/aerospike_error.js:113:10) at Client.DefaultCallbackHandler [as callbackHandler] (/home/services/jenkins/worker/USER/node_modules/aerospike/lib/client.js:72:72) at /home/services/jenkins/worker/USER/node_modules/aerospike/lib/client.js:825:10 at Client.get (/home/services/jenkins/worker/USER/node_modules/aerospike/lib/client.js:824:18) at null._onTimeout (/home/services/jenkins/worker/USER/routes/kinesis.js:27) at Timer.listOnTimeout [as ontimeout] (timers.js:121:15) npm ERR! weird error 8 npm ERR! not ok code 0
接続をしているコードは以下のとおりです。
var aerospike = require('aerospike'); var config = require('../config/databases.json'); var Key = aerospike.Key; var StartingSequenceNumber = null; aws.config.update({ region: config.aws.region, accessKeyId: config.aws.accessKeyId, secretAccessKey: config.aws.secretAccessKey }); var kinesis = new aws.Kinesis({ region: config.aws.region }); aerospike.connect({ hosts: config.aerospike.host, policies: { timeout: config.aerospike.timeout } }, function(error, client) { if (error) throw error; var key = new Key(config.aerospike.namespace, config.aerospike.setname, "StartingSequenceNumber"); client.put(key, { seq: "123456789" }, function(error) { if (error) console.log(error); }); client.get(key, function (error, record) { if (error) throw error; console.log(record); kinesis.describeStream({ StreamName: config.kinesis.stream }, function(error, result) { if(error) throw error; console.log(result); }); }); });
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。