【发布时间】:2021-10-18 06:56:09
【问题描述】:
我正在运行当前的 Mongo 查询并收到此错误: { "message" : "$out 阶段需要一个字符串参数,但找到了对象", "operationTime" : "时间戳(1634539335, 2)", “好”:0, “代码”:14, "codeName" : "类型不匹配", “$clusterTime”:{ "clusterTime" : "时间戳(1634539335, 2)", “签名” : { “哈希”:“sP5j8mWdcjkUzZ3iHkg3obPhjMw=”, “keyId”:“6985187295267651587” } }, “名称”:“MongoError” }
我使用此代码较早地复制到其他 s3 存储桶并且没有问题。
有谁知道问题出在哪里?
var startDate = ISODate("2021-04-10");
var endDate = ISODate("2021-04-11");
var currDate = ISODate()
publishersId.forEach(publisherId =>
{
for (var d = startDate; d <= endDate; d.setDate(d.getDate() + 1)) {
print(publisherId + "_" + d);
db.direct_client_extended_alerts_dl.aggregate([
{
"$match":
{ "publisher_id":publisherId,"created_date": d}
},
{
"$out":
{
"s3": {
"bucket": "mongo-datalake-prod",
"filename": {
"$concat": [
"direct_client_extended_alerts/", {"$toString": "$publisher_id"}, "/",
{"$toString": "$created_date"}, "/",
{"$toString":currDate},"/"
]
}
}
}
}
],{ allowDiskUse: true })
}
}```
【问题讨论】:
标签: mongodb mongodb-query