Exemplo n.º 1
0
def alarms(begin_time, end_time, text, utc, show, state, priority, priority2,
           report, report_hostname):
    """Read alarms from given host in given time."""
    query = alarm_query_builder(eval_datetime(begin_time),
                                eval_datetime(end_time),
                                text, utc, state, priority, priority2)

    if show:
        print(query)
        return

    try:
        toc = tic()
        w = wincc(host_info.address, host_info.database)
        w.connect()
        w.execute(query)

        if report:
            alarms = w.create_alarm_record()
            if report_hostname:
                host_description = report_hostname
            else:
                host_description = host_info.description
            if not end_time:
                end_time = datetime_to_str_without_ms(datetime.now())
            generate_alarms_report(alarms, begin_time, end_time,
                                   host_description, text)
            print(unicode(alarms))
        else:
            w.print_alarms()

        print("Fetched data in {time}.".format(time=round(toc(), 3)))
    except WinCCException as e:
        print(e)
        print(traceback.format_exc())
    finally:
        w.close()
Exemplo n.º 2
0
def alarms(begin_time, end_time, text, utc, show, state, priority, priority2,
           report, report_hostname):
    """Read alarms from given host in given time."""
    query = alarm_query_builder(eval_datetime(begin_time),
                                eval_datetime(end_time), text, utc, state,
                                priority, priority2)

    if show:
        print(query)
        return

    try:
        toc = tic()
        w = wincc(host_info.address, host_info.database)
        w.connect()
        w.execute(query)

        if report:
            alarms = w.create_alarm_record()
            if report_hostname:
                host_description = report_hostname
            else:
                host_description = host_info.description
            if not end_time:
                end_time = datetime_to_str_without_ms(datetime.now())
            generate_alarms_report(alarms, begin_time, end_time,
                                   host_description, text)
            print(unicode(alarms))
        else:
            w.print_alarms()

        print("Fetched data in {time}.".format(time=round(toc(), 3)))
    except WinCCException as e:
        print(e)
        print(traceback.format_exc())
    finally:
        w.close()
Exemplo n.º 3
0
 def test_alarm_query_builder(self):
     self.assertEqual(alarm_query_builder("2015-08-24 10:07:48", "2015-08-24 10:08:12", '', False, ''),
                      u"ALARMVIEW:SELECT * FROM ALGVIEWDEU WHERE MsgNr < 12508141 AND DateTime > '2015-08-24 08:07:48' AND DateTime < '2015-08-24 08:08:12'")
Exemplo n.º 4
0
 def test_alarm_query_builder(self):
     self.assertEqual(
         alarm_query_builder("2015-08-24 10:07:48", "2015-08-24 10:08:12",
                             '', False, ''),
         u"ALARMVIEW:SELECT * FROM ALGVIEWDEU WHERE MsgNr < 12508141 AND DateTime > '2015-08-24 08:07:48' AND DateTime < '2015-08-24 08:08:12'"
     )