Tag: amazon web services

无法在Elastic Beanstalk上部署KeystoneJS

我想要在T2.micro实例上的Elastic Beanstalk上部署一个KeystoneJS应用程序。 在部署过程中,部署与eb-activity.log中的以下输出错误: > kerberos@0.0.11 install /tmp/deployment/application/node_modules/keystone/node_modules/mongoose/node_modules/mongodb/node_modules/kerberos > (node-gyp rebuild 2> builderror.log) || (exit 0) Running npm install: /opt/elasticbeanstalk/node-install/node-v4.4.3-linux-x64/bin/npm Setting npm config jobs to 1 npm config jobs set to 1 Running npm with –production flag Failed to run npm install. Snapshot logs for more details. Traceback (most recent call last): File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 681, […]

AWS lambda内存消耗请求pipe道

我有一个Lambda函数,很简单: 'use strict'; var request = require('request'); var aws = require('aws-sdk'); var s3 = new aws.S3({ apiVersion: '2006-03-01' }); exports.handler = (event, context, callback) => { var stream = require('fs').createWriteStream('/tmp/tmpFile'); request .get(event.url) .pipe(stream); }; 但是,当我试图下载一个50MB的文件,我的function用完内存(使用:139,最大:128)。 我真的不明白,因为这个文件太小了。 你有一个想法,它可能来自哪里?

节点肥皂只向Mechanical Turk发送“帮助”请求?

我正在尝试使用节点肥皂与Amazon Mechanical Turk进行通信。 我用这个wsdl初始化soap客户端,但是当我尝试调用client.<SomeOperation>(…)对于Mechanical turk API中列出的任何操作 ,我发现我得到的响应没有包含API的结果呼叫。 API文档说响应应该包含一个“Result元素” ,但是我发现我得到的结果看起来像这样: <HelpResponse xmlns="http://requester.mturk.amazonaws.com/doc/2014-08-15"> <OperationRequest> <RequestId>(something)</RequestId> </OperationRequest> <Information> <Request> <IsValid>True</IsValid> </Request> <OperationInformation> <Name>Please see our online documentation at http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=28</Name> </OperationInformation> </Information> </HelpResponse> 经过进一步的调查,我发现问题出在我尝试使用它发出API请求时node-soap发送的内容。 当我尝试调用RegisterHITType ,而不是发送一个<RegisterHITType>元素,它似乎发送某种types的<Help>元素,看起来像这样: <Help xmlns="http://requester.mturk.amazonaws.com/doc/2014-08-15"> <Title>(something)</Title> <Description>(something)</Description> <Reward>(something)</Reward> <AssignmentDurationInSeconds>(something)</AssignmentDurationInSeconds> <AWSAccessKeyId>(something)</AWSAccessKeyId> <Timestamp>(something)</Timestamp> <Service>AWSMechanicalTurkRequester</Service> <Signature>(something)</Signature> </Help> 为什么它发送这个而不是预期的API请求? 这是一个小故障的结果,还是我误解如何使用节点肥皂? 有没有办法解决这个问题,还是我需要通过其他方式来研究使用Mechanical Turk API?

NodeJS和Mysql。 在终止之前不会调用connection.end()会被接受吗?

我想从AWS Lambda(托pipenodejs)使用mysql。 当没有新的请求出现几分钟时,nodejs实例将被Lambda自动终止。 由于这种Lambda行为,我不想调用end(),因为否则它会将每个请求转换为连接使用结束循环。 我想连接(或池)住在多个请求。 如果connection.end()没有被调用,并且实例被终止,那会是一个问题吗? (可以有泄漏什么的) var mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'me', password : 'secret', database : 'my_db' }); connection.connect(); index.handler = function(){ connection.query('SELECT x', function(err, rows, fields) { // do something here }); }; // * cannot call because potential incoming request still need to […]

AWS nodejs microservice:在S3存储桶中的文件发生更改时迭代调用服务

我使用nodejs在lambda上创build了一个微服务,以在S3存储桶中生成我的图像的缩略图。 但是,在将新映像上传到S3存储桶后,没有被触发。 我将触发器事件types设置为创build的S3对象。 而且我还将testing事件configuration为: "eventName": "ObjectCreated:*" ,这意味着在桶中创build/更改某些文件时,应该触发testing事件并调用此lambda函数。 我也在桶侧设置了相同的通知configuration。 它在我第一次从这个例子创build这个lambda函数的时候起作用: 创build一个部署包 该function只适用于确切的文件“HappyFace.jpg”,但失败的所有其他图像。 有时我得到“拒绝访问”错误。 我使用下面的代码: // dependencies var async = require('async'); var AWS = require('aws-sdk'); var gm = require('gm') .subClass({ imageMagick: true }); // Enable ImageMagick integration. var util = require('util'); var utils = require('utils'); // constants var MAX_WIDTH = 100; var MAX_HEIGHT = 100; // get […]

在亚马逊aws弹性beanstalk(或本地?)上安装parsing仪表板

我一直在遵循本指南在Amazon AWS上使用Elastic Beanstalk安装Parse Server,并且设置工作正常,但是特定指南只解决了Parse Server的安装问题,而不是parsing仪表板,我也想设置它向上。 作为Parse是一个Node.js应用程序,我希望能通过命令行脱离“npm install -g parse-dashboard”,但是看到实例上的更改可能被负载平衡器覆盖,我不是确定这是正确的道路。 我知道亚马逊有一个可用于安装应用程序的EB CLI,但是我不确定这是否是最好/最简单的方法呢? 我想要的是安装Parse Dashboard并将其与我的AWS EB设置连接起来的最简单的方法,我还希望在通过Github提供更改时可以轻松更新Parse Dashboard。 所以我的问题可以归结为两种select,正如我所见; 1)我应该在AWS上安装Parse Dashboard吗?如果是的话 – 这样做的最好方法是什么? 2)我是否可以设置Parse Dashboard的本地安装,并将其连接到AWS EB上托pipe的Parse Server? 如果是这样,那么推荐的方法是什么?

parsing仪表板不显示云代码和作业

我已经克隆从https://github.com/ParsePlatform/parse-dashboardparsingdahboard。 我已经在本地机器上设置了parsing仪表板。 它在本地机器上的4040端口上运行,但打开的仪表板不显示在parse.com上显示的云代码,作业和应用程序设置选项。 请帮助我如何在parsingdashbord上看到云代码,还告诉我如何将parsing仪表板部署到aws(远程服务器),以便其他开发人员也可以看到仪表板。

如何将node.js日志从Elastic Beanstalk Docker应用程序发送到Cloudwatch Logs?

Amazon提供这些用于将Tomcat / Apache / nginx日志发送到Cloudwatch日志的现成文件,这些日志很好用。 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.cloudwatchlogs.html 但是,为了我的目的,他们只发送nginx日志,这是不够的,不幸的是,他们也提供了零文件的文件格式。 我想要实现的是将Node.js日志从我的Docker应用程序发送到Cloudwatch(因为自动调节使得实例来来去去)。 所以像/var/log/eb-docker/containers/eb-current-app/add839a3b599-stdouterr.log中出现像/var/log/eb-docker/containers/eb-current-app/add839a3b599-stdouterr.log这样的文件。 所以,我到目前为止所尝试的是从上面的链接调整webrequestsconfiguration: ############################################################################## ## Sends docker logs to CloudWatch Logs ############################################################################## Mappings: CWLogs: ApplicationLogGroup: LogFile: "/var/log/eb-docker/containers/eb-current-app/*-stdouterr.log" TimestampFormat: "%Y-%m-%d %H:%M:%S" Outputs: ApplicationLogGroup: Description: "The name of the Cloudwatch Logs Log Group created for this environments web server access logs. You can specify this by setting the value for […]

AWS Elastic Beanstalk自定义静态文件夹403错误页面

我用: AWS Elastic Beanstalk并具有我的资源的静态public文件夹,在弹性beanstalk .ebextensions定义 nodejs并处理那里的错误 当我打开我的网站,并去example.com/public我看到丑陋的403页面,似乎不由nodejs服务器处理。 我想服务器以某种方式处理这个请求,看到没有权限,并扔到nodejs服务器之前403。 我怀疑,如果我决定从.ebextensionsconfiguration中删除这个方法,并将其定义为nodejs静态文件夹,它将按我的预期工作。 但有没有一些方法来使用我的自定义403页面是我使用.ebextensionsconfiguration?

Amazon Web Services DynamoDB错误

我正在使用Dynamoose来处理Node.js中的DynamoDB请求和操作。 当我尝试获得一个logging时,我得到这个错误。 (电子邮件是前面定义的variables) User.get({ 'email' : email }, function(err, user) { // if there are any errors, return the error if (err) return done(err); } err正在返回 ValidationException:无法将参数转换为数值:[object Object] 任何想法,为什么我会得到这个错误?