- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
背景:
alerts
的集合更新查询,该查询运行每个收到“流”的时间。列入黑名单的通讯
。应该发生什么:
当新流到达时,仅如果该流的 client_addr
和 server_addr
则更新 alerts
文档尚未出现在 blacklistedCommuication
中。与此同时,如果我们确实发现重复项,它应该只增加 flowCount
。
当前查询:
以下更新查询可将新对象推送到 blacklistedCommunication
对象(如果该对象尚不存在)。但是,如果它确实存在,则不会更新 flowCount
如何将此逻辑合并到查询中?如果出现重复,我是否需要编写单独的更新查询?
alerts.update({
alertLevel: "orgLevelAlert",
alertCategory: "blacklistedServersViolationAlert",
alertState: "open",
'blacklistedCommunication.client': {
$ne: flow.netflow.client_addr
},
// 'blacklistedCommunication.server': {
// $ne: flow.netflow.server_addr
// }
}, {
$set: {
"misc.updatedTime": new Date()
},
$inc: {
flowCount: 1
},
$push: {
blacklistedCommunication: {
client: flow.netflow.client_addr,
server: flow.netflow.server_addr
}
}
});
最佳答案
您可以使用$addToSet而不是$push
。它将确保 blacklistedCommunication
中唯一的 {client:*,server:*}
对象,并且始终更新 flowCount
:
alerts.update({
alertLevel: "orgLevelAlert",
alertCategory: "blacklistedServersViolationAlert",
alertState: "open"
}, {
$set: {
"misc.updatedTime": new Date()
},
$inc: {
flowCount: 1
},
$addToSet: {
blacklistedCommunication: {
client: flow.netflow.client_addr,
server: flow.netflow.server_addr
}
}
});
关于javascript - 更新处理重复项和增量运算符的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47434299/
我在获取列表项时遇到问题,下面是我的 hibernate 代码,在该代码之后是我的方法..下面是我的 junit 测试。我如何确保查询正确执行,以及如何检查结果是否实际工作..这个查询应该返回几个pi
我正在尝试填充对象 Point 3D 的 vector 。我的应用程序读取一个 csv 文件以通过三个坐标 x、y、z 加载 vector 。我使用 float 类型。这是我的代码。 main.cpp
如果我有一个 DataTemplate(或类似的东西),我可以在 Canvas 中使用非 UIElements 吗?我觉得我以前做过这个,这是可能的,但我想不通。这是一些代码...
何时调用类方法 fetchItems()而不是 getItems() ?有区别吗? fetchImage()对比 getImage()等等... 最佳答案 “获取”通常被认为是一个本地操作,只涉及戳内
我的数组中有多个项目,比如说超过 14 个项目。 如何以这种方式将它们分为 2 个不同的组:前 3 个(#1,2,3)将在数组 A 中,接下来的 4 个(#4,5,6,7)将在数组 B 中,下一个 3
这是我正在解决的问题: Assume that the developers of Myro are developing a new black box function called travel
有一个列表框,里面有一些项目。还有一个带有 3x3 矩阵的网格。用户将拖动一个项目并将其放在网格的一个单元格上。 我发现的大多数示例都是关于从一个列表框拖放到另一个列表框的。但我想放入一个网格单元格。
我是一名优秀的程序员,十分优秀!