16149 add (optional) obj hyperlink to script list table

This commit is contained in:
Arthur 2024-05-23 13:13:37 -07:00
parent 6c51b89502
commit bc248208e2
3 changed files with 17 additions and 6 deletions

View File

@ -144,11 +144,11 @@ These two methods will load data in YAML or JSON format, respectively, from file
The Script object provides a set of convenient functions for recording messages at different severity levels:
* `log_debug(message, object=None)`
* `log_success(message, object=None)`
* `log_info(message, object=None)`
* `log_warning(message, object=None)`
* `log_failure(message, object=None)`
* `log_debug(message, obj=None)`
* `log_success(message, obj=None)`
* `log_info(message, obj=None)`
* `log_warning(message, obj=None)`
* `log_failure(message, obj=None)`
Log messages are returned to the user upon execution of the script. Markdown rendering is supported for log messages. A message may optionally be associated with a particular object by passing it as the second argument to the logging method.

View File

@ -505,7 +505,9 @@ class BaseScript:
# Record to the system log
if obj:
message = f"{obj}: {message}"
self.logger.log(LogLevelChoices.SYSTEM_LEVELS[level], message)
self.logger.log(LogLevelChoices.SYSTEM_LEVELS[level], f"{obj}: {message}")
else:
self.logger.log(LogLevelChoices.SYSTEM_LEVELS[level], message)
def log_debug(self, message, obj=None):
self._log(message, obj, level=LogLevelChoices.LOG_DEBUG)

View File

@ -545,6 +545,12 @@ class ScriptResultsTable(BaseTable):
template_code="""{% load log_levels %}{% log_level record.status %}""",
verbose_name=_('Level')
)
object = tables.Column(
verbose_name=_('Object')
)
url = tables.Column(
verbose_name=_('URL')
)
message = columns.MarkdownColumn(
verbose_name=_('Message')
)
@ -552,6 +558,9 @@ class ScriptResultsTable(BaseTable):
class Meta(BaseTable.Meta):
empty_text = _(EMPTY_TABLE_TEXT)
fields = (
'index', 'time', 'status', 'object', 'url', 'message',
)
default_columns = (
'index', 'time', 'status', 'message',
)