Как добавить узел для мониторинга в munin с помощью скрипта Python?

Я не получаю точного решения для добавления узла в munin.conf с помощью скрипта Python. Я пытаюсь использовать ConfigParser, но поскольку munin.conf — это файл без разделов, использовать этот модуль невозможно. Может ли кто-нибудь предложить мне возможное решение?


person Deenal shah    schedule 27.07.2017    source источник


Ответы (1)


Добавить хост или узел в munin с помощью скрипта python можно с помощью модуля парсера конфигурации python. Ниже приведено решение для него: -

def addhost(self, host):
    cfile = '/etc/munin/munin.conf'
    hostname = host['host_name']
    address = host['address']
    # use_node_name = host['use_node_name']
    with open(cfile, "r+") as f:
        s = f.read()
        f.seek(0)
        f.write("[default]\n" + s)
        config.readfp(f)
        # config.add_section(hostname)
        # config.set(hostname, 'address '+ address )
        # config.set(hostname, 'use_node_name yes')

        #config.write(fout)
    with open(cfile,"w") as fout:
        print config.sections()
        #config.readfp(fout)
        config.add_section(hostname)
        config.set(hostname, 'address ' + address)
        config.set(hostname, 'use_node_name yes')
        config.write(fout)
    for line in fileinput.input(cfile, inplace=1):
        line = line.strip()
        if not '[default]' in line:
            print line

здесь, для использования синтаксического анализатора конфигурации, нам нужно внести некоторые изменения в munin.conf. во-первых, вам нужно записать раздел по умолчанию в файл вверху, во-вторых, записать данные, которые вы хотите записать, в-третьих, удалить этот раздел. Таким образом, вы можете добавить узел для мониторинга в munin через python.

person Deenal shah    schedule 07.09.2017