12345678910111213141516171819202122 |
- from django.core.management.base import BaseCommand
- import socket, csv
- from pytz import timezone
- from collections import namedtuple
- from itertools import groupby
- from services.models import IPResource
- from djadhere.utils import from_livestatus
- class Command(BaseCommand):
- help = 'Récupération du label check_mk'
- def handle(self, *args, **options):
- paris = timezone('Europe/Paris')
- hosts = from_livestatus('hosts', columns=['name', 'address'])
- data = {}
- # quelques IP sont listées curieusement plusieurs fois, on prend la première occurence
- for address, group in groupby(sorted(hosts, key=lambda host: host.address), lambda host: host.address):
- host = next(group)
- IPResource.objects.filter(ip=address).update(checkmk_label=host.name)
|