我正在通过aws sdk调用aws cloudWatchEvent putRule和PutTarget api来创建cloudWatch规则并将目标附加到它.我的目标是一个lambda函数,规则被创建,目标附加到规则但当规则根据其计划触发时,目标lambda函数不会触发.所以我进一步看了一下,发现没有添加lambda函数下的事件源,这使得它不会触发.如果我通过AWS控制台创建规则和目标,则会创建事件源并且一切正常但不是API.
SELECT st.id
FROM
station st, strike s
WHERE s.srikedatetime > (current_timestamp - interval '20 seconds') and srikedatetime < current_timestamp
AND ST_Distance_Sphere(st.Geometry, s.strikepoint)/1000 <= st.radius
Run Code Online (Sandbox Code Playgroud)
这个想法是当一次打击命中时,它可能是基于站点监视半径的多个站点的边界.我需要选择在过去20秒内受到任何罢工影响的所有电台.在20秒内我可以进行数千次攻击,并且每20秒执行一次查询时,CPU会变高,查询需要几分钟才能完成.当CPU不高时,它以毫秒运行.
查询计划:
"Nested Loop (cost=0.42..505110.20 rows=21 width=7)"
" Join Filter: ((_st_distance(geography(a.Geometry), geography(s.strikepoint), 0::double precision, false) / 1000::double precision) <= (a.radius)::double precision)"
" -> Index Only Scan using dup_strike_constraint on strike s (cost=0.42..8.45 rows=1 width=36)"
" Index Cond: ((srikedatetime > (now() - '00:00:20'::interval)) AND (srikedatetime < now()))"
" -> Seq Scan on station st (cost=0.00..505084.86 rows=62 width=549)" …
Run Code Online (Sandbox Code Playgroud) 我在我的react应用程序中使用ag-grid,无法使CSS与Webpack一起使用。
网格看起来像这样
const path = require("path");
var webpack = require("webpack");
let HtmlWebpackPlugin = require("html-webpack-plugin");
let CopyWebpackPlugin = require("copy-webpack-plugin");
var BundleAnalyzerPlugin = require("webpack-bundle-analyzer")
.BundleAnalyzerPlugin;
var BitBarWebpackProgressPlugin = require("bitbar-webpack-progress-plugin");
let plug = require("@babel/plugin-proposal-class-properties");
module.exports = {
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: "babel-loader"
}
},
{
test: /\.(png|woff|woff2|eot|ttf|svg)$/,
loader: "url-loader?limit=100000"
},
{
test: /\.css$/,
use: "css-loader/locals"
}
]
},
node: {
fs: "empty"
},
context: path.join(__dirname, "Scripts", "src"),
entry: {
d1: "./entries/d1Page.js",
h1: "./entries/h1Page.js",
polyfills: …
Run Code Online (Sandbox Code Playgroud) 我可以在自己的AWS账户上创建的云监视最大规则数是多少。我可能有很多不同的规则,它们会按计划调用lambda函数。它是无限的吗?
调用Lambda函数时,它会创建SNS主题,向其添加订阅者,然后向其发布消息。发布消息后,它将删除主题。要创建的主题名称和订阅者将作为有效负载提供给lambda函数。
有时它会工作,有时会失败,Task timed out after x seconds
因为我增加了Lambda超时时间,但仍然是同样的问题。
我挖了一点,发现
sns.createTopic(params, function(err, data) {
if(err) {
console.log('Error Creating SNS Topic:',err);
} else {
console.log('SNS Topic Created Successfully:',data);
}
}
Run Code Online (Sandbox Code Playgroud)
永不返回,没有错误,没有数据,我看不到结果 console.log()
当它工作时,一切都很好,但是当它失败时,我看不到找到问题。
编辑:
因此,我做了更多的挖掘工作,我将SNS主题创建的超时时间默认为5分钟,现在为5秒。当失败发生时,我得到这个“
{ [TimeoutError: Connection timed out after 5000ms]
message: 'Connection timed out after 5000ms',
code: 'NetworkingError',
time: Thu Mar 30 2017 15:35:20 GMT+0000 (UTC),
region: 'us-east-1',
hostname: 'sns.us-east-1.amazonaws.com',
retryable: true }
Run Code Online (Sandbox Code Playgroud) 是否可以在AWS RDS中为Postgres启用/安装pgAgent(作业调度程序)?我环顾四周,在AWS文档上找不到任何内容.
我正在使用“ssh2-sftp-client”来完成这项工作。因此,如果我先将文件复制到 Lambda 的 /tmp/ 文件夹,然后将其上传到 s3,则基本上它可以正常工作。我想将读取流指向 s3 而不保存在 lambda /tmp/ 文件夹中。
所以基本上:
let sftp = new Client();
sftp.connect({
host: Config.host,
port: Config.port,
username: Config.user,
password: Config.password
}).then(() => {
return sftp.list('/photos');
}).then((files) => {
return get(files)
}).then((streams) => {
return streamToString(streams)
}).then((dataArray) => {
return uploadToS3.putBatch(Config,dataArray)
}).then(() => {
return cleanSFTP();
}).then(() => {
context.done();
}).catch((err) => {
console.log('Catch Error: ', err);
context.fail();
});
Run Code Online (Sandbox Code Playgroud)
从 sftp 获取读取流:
function get(files) {
return Promise.all(files.slice(0, 2).map((file) => {
fileList.push(file.name);
return sftp.get(BASIC_URL + '/' …
Run Code Online (Sandbox Code Playgroud) 我.nc
身边300MB的文件大小与一对夫妇的数据集(的TEMP
,DEWPOINT
)的预测数据。我需要将(TEMP
)数据集转换为多个GEOTIFF
(.tif
每个时间片一个)。
这是.nc
文件的外观。
调查了这个答案,但似乎是针对整个数据集的。
我尝试过GDAL
但不确定如何在每个时间片中使用它。
有什么想法吗?netcdf4
-蟒蛇?
我们有一个奇怪的要求,我们想根据客户正在监控的资产向他们发送短信。每个资产可以有 100 个订阅者,并且有 1000 个资产,因此显然,我们不能为每个资产创建一个 SNS 主题。我们在 AWS 上的 RDS 实例中拥有资产及其订阅者列表。
无论如何,SNS 是否可以使其订阅者列表动态化,每次我们向其发布消息时,我们还提供该消息应发送到的订阅者列表?我的其他选择或其他 AWS 服务有哪些?也许是拉姆达?请指教。谢谢
我有与谷歌一起运行的 IOS 和 Android 的 react-native 地图。有没有办法mapType
在 react-native expo 应用程序中启用像谷歌地图应用程序那样的图层切换器?以便用户可以切换地图类型(标准、卫星、....)
代码的简化版本
constructor(props) {
super(props);
this.state = {
mapRegion: null,
markers: [],
mapType: null
};
}
switchMapType() {
console.log('Changing');
this.state.mapType = 'satellite'
}
render() {
return (
<MapView
provider="google"
mapType={this.state.mapType}
>
<Icon
onPress={this.switchMapType}
/>
</MapView>
);
}
Run Code Online (Sandbox Code Playgroud)
在state 内部时出现未定义错误switchMapType()
。
我在 API 网关(身份验证:AWS_IAM)下设置了一个 GET 方法,并且有一个带有开发人员身份的 Cognito 池。我在 get 方法后面有一个 lambda。
当我调用 Cognito 时,我会获得临时凭证并承担一个角色。我担任的角色具有在 API 网关上执行和访问所有内容的适当权限。
...
{
"Effect": "Allow",
"Action": [
"execute-api:Invoke"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"apigateway:GET"
],
"Resource": [
"*"
]
}
...
Run Code Online (Sandbox Code Playgroud)
当我使用此设置调用 API 网关时,我收到 500,内部服务器错误。
如果我从策略中删除上述 API 网关权限,那么我会得到 403 error forbidden (User: arn:aws:sts::xxxxx:assumed-role/Cogn_Auth_Role/xxx is not authorized to perform: execute-api:Invoke on resource: arn:aws:execute-api:us-east-1:xxxx:xxx/xxx/GET/events
如果我去并将 附加AdminAccess
到这个角色,那么一切正常。这里有什么交易?我错过了什么吗?
amazon-web-services amazon-iam amazon-cognito aws-lambda aws-api-gateway
当调用AssumeRole时,我们可以设置从900秒(15分钟)到最大3600秒(1小时)的时间。默认值为 1 小时。这能超过1个小时吗?比如12小时?
aws-lambda ×6
amazon-sns ×2
gis ×2
postgresql ×2
ag-grid ×1
amazon-iam ×1
amazon-s3 ×1
amazon-sqs ×1
android ×1
aws-rds ×1
aws-sdk ×1
aws-sts ×1
css ×1
gdal ×1
geotiff ×1
ios ×1
netcdf ×1
node.js ×1
pgagent ×1
postgis ×1
python ×1
react-native ×1
reactjs ×1
sftp ×1
sql ×1
ssh2-sftp ×1
webpack ×1