首页 > 解决方案 > 停止在 pymongo 中插入重复文档

问题描述

我正在使用 pymongo 将处于警报状态的 AWS cloudwatch 警报指标存储到 mongodb

代码如下所示:

import pymongo
import boto3
    
cloudwatch = boto3.client('cloudwatch')
cluster = pymongo.MongoClient('Here goes mongo URL')

paginator = cloudwatch.get_paginator('describe_alarms')
for response in paginator.paginate(StateValue='ALARM'):
    log = response['MetricAlarms']

db = cluster.demo
col = db.demo

col.insert_many(log)

log变量包含以下数据:

[{'AlarmName': "demo1",
'ActionsEnabled': True,
'Namespace': 'AWS/EC2',}]

当此代码再次执行时,它将再次存储该警报的相同指标。如何阻止这种重复?

标签: pythonmongodbmongodb-querypymongoaws-sdk

解决方案


推荐阅读