Esempio n. 1
0
    def status(self, bot, sender):
        "Show status of all live alerts."

        if not self.alerts:
            with bot.message(sender) as m:
                if self.maintenance:
                    print >> m, "IN MAINTENANCE"
                print >> m, "No live alerts. :)"
            return

        now = datetime.datetime.now()
        with bot.message(sender) as m:
            if self.maintenance:
                print >> m, "IN MAINTENANCE"

            print >> m, "Live alerts:"
            for tag, alert in self.alerts.iteritems():
                print >> m, ("<%s>%s seen %dx. started %s ago. "
                             "last seen %s ago.") % (
                                 tag,
                                 " ack'd by %s." %
                                 alert.muted if alert.muted else "",
                                 alert.count,
                                 pretty_time_span(now - alert.first_seen),
                                 pretty_time_span(now - alert.last_seen),
                             )
Esempio n. 2
0
    def status(self, bot, sender):
        "Show status of all live alerts."

        if not self.alerts:
            with bot.message(sender) as m:
                if self.maintenance:
                    print >> m, "IN MAINTENANCE"
                print >> m, "No live alerts. :)"
            return

        now = datetime.datetime.now()
        with bot.message(sender) as m:
            if self.maintenance:
                print >>m, "IN MAINTENANCE"

            print >>m, "Live alerts:"
            for tag, alert in self.alerts.iteritems():
                print >>m, ("<%s>%s seen %dx. started %s ago. "
                            "last seen %s ago.") % (
                    tag,
                    " ack'd by %s." % alert.muted if alert.muted else "",
                    alert.count,
                    pretty_time_span(now - alert.first_seen),
                    pretty_time_span(now - alert.last_seen),
                )
Esempio n. 3
0
    def watches(self, bot, sender):
        "Check the status of all registered services."

        if not self.services:
            bot.sendMessage(sender, "Not watching any services.")
            return

        now = datetime.datetime.now()
        with bot.message(sender) as m:
            print >>m, "Monitored services:"

            for tag, service in self.services.iteritems():
                print >>m, "<%s> %s. last seen %s ago." % (
                    tag,
                    ("MISSING for %d heartbeats" % service.failure_count
                     if service.failure_count else "HEALTHY"),
                    pretty_time_span(now - service.last_seen)
                )