diff --git a/netbox/extras/reports.py b/netbox/extras/reports.py index 7bf8951ea..421c8456f 100644 --- a/netbox/extras/reports.py +++ b/netbox/extras/reports.py @@ -93,7 +93,7 @@ class Report(object): ('success', 0), ('info', 0), ('warning', 0), - ('failed', 0), + ('failure', 0), ('log', []), ]) if not test_methods: @@ -118,8 +118,19 @@ class Report(object): """ if level not in LOG_LEVEL_CODES: raise Exception("Unknown logging level: {}".format(level)) - logline = [timezone.now().isoformat(), level, str(obj), message] - self._results[self.active_test]['log'].append(logline) + self._results[self.active_test]['log'].append( + timezone.now().isoformat(), + LOG_LEVEL_CODES.get(level), + str(obj) if obj else None, + obj.get_absolute_url() if getattr(obj, 'get_absolute_url', None) else None, + message, + ) + + def log(self, message): + """ + Log a message which is not associated with a particular object. + """ + self._log(None, message, level=LOG_DEFAULT) def log_success(self, obj, message=None): """ @@ -148,7 +159,7 @@ class Report(object): Log a failure. Calling this method will automatically mark the report as failed. """ self._log(obj, message, level=LOG_FAILURE) - self._results[self.active_test]['failed'] += 1 + self._results[self.active_test]['failure'] += 1 self.failed = True def run(self): diff --git a/netbox/templates/extras/report.html b/netbox/templates/extras/report.html index cb3e716f5..2c087e437 100644 --- a/netbox/templates/extras/report.html +++ b/netbox/templates/extras/report.html @@ -24,7 +24,7 @@ {% endif %}
{{ report.description }}
{% endif %} @@ -34,5 +34,59 @@Last run: Never
{% endif %}Time | +Level | +Object | +Message | +
---|---|---|---|
{{ method }} | +|||
{{ time }} | ++ + | ++ {% if obj and url %} + {{ obj }} + {% elif obj %} + {{ obj }} + {% endif %} + | +{{ message }} | +