MozDef/cron/setupIndexTemplates.py

48 строки
1.5 KiB
Python
Executable File

#!/usr/bin/env python
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Copyright (c) 2014 Mozilla Corporation
# Use this to setup the index templates for mozdef
# You only need to run it once, it will setup the templates
# used as future indexes are created
import requests
import sys
import os
from configlib import getConfig, OptionParser
sys.path.insert(1, os.path.join(sys.path[0], '..'))
from utils import es as es_module
def initConfig():
options.esservers = list(getConfig(
'esservers',
'http://localhost:9200',
options.configfile).split(',')
)
options.templatenames = list(getConfig(
'templatenames',
'defaulttemplate',
options.configfile).split(',')
)
options.templatefiles = list(getConfig(
'templatefiles',
'',
options.configfile).split(',')
)
if __name__ == '__main__':
parser = OptionParser()
parser.add_option("-c",
dest='configfile',
default=sys.argv[0].replace('.py', '.conf'),
help="configuration file to use")
(options, args) = parser.parse_args()
initConfig()
es = es_module.Elasticsearch(options.esservers[0])
for templatename, templatefile in zip(options.templatenames, options.templatefiles):
es.setupIndexTemplate(templatename, templatefile)