예제 #1
0
def es_delete_alerts_by_sid_v5(sid):
    delete_url = get_es_path(DELETE_ALERTS_URL_V5)
    data = { "query": { "match": { "alert.signature_id": sid } } }
    try:
        r = requests.post(delete_url, data = json.dumps(data))
    except Exception, err:
        return {'msg': 'Elasticsearch error: %s' % str(err), 'status': 500 }
예제 #2
0
파일: es_graphs.py 프로젝트: ykl124/scirius
def es_get_dashboard(count=20):
    req = urllib2.Request(get_es_path(DASHBOARDS_QUERY_URL) + str(count))
    try:
        out = urllib2.urlopen(req, timeout=TIMEOUT)
    except:
        return None
    data = out.read()
    # returned data is JSON
    data = json.loads(data)
    # total number of results
    try:
        data = data['hits']['hits']
    except:
        return None
    if data != None:
        dashboards = {}
        for elt in data:
            try:
                if settings.ELASTICSEARCH_VERSION >= 6:
                    dashboards[elt["_id"].split(':')
                               [1]] = elt["_source"]["dashboard"]["title"]
                else:
                    dashboards[elt["_id"]] = elt["_source"]["title"]
            except:
                dashboards[elt["_id"]] = elt["_id"]
                pass
        return dashboards
    return None
예제 #3
0
def es_get_json(uri):
    req = urllib2.Request(get_es_path(uri))
    try:
        out = urllib2.urlopen(req, timeout=TIMEOUT)
    except:
        return None
    data = out.read()
    # returned data is JSON
    data = json.loads(data)
    return data
예제 #4
0
def es_delete_alerts_by_sid_v2(sid):
    delete_url = get_es_path(DELETE_ALERTS_URL) % int(sid)
    try:
        r = requests.delete(delete_url)
    except Exception, err:
        return {'msg': 'Elasticsearch error: %s' % str(err), 'status': 500 }
예제 #5
0
def es_delete_alerts_by_sid(sid):
    delete_url = get_es_path(DELETE_ALERTS_URL) % int(sid)
    r = requests.delete(delete_url)
    data = json.loads(r.text)
    return data