WebUI - Alert Rule Editor: new notes field (#15631)

* add a new notes field to the rule editor. use a bigger text field for sql queries to avoid mistakes...
* add api doc
* allow notes field from the collection
* add a sample notes to the collection
* lint and db schema
* unmix some schema changes from a nother PR
* unmix schema update No°2
* unmix schema update No°3 - silly me
* add strip_tags, minor optimisation, db default value
* apply linting
* db_schema empty '' as default
* update db_schema.yaml
* default value changed as 'BLOB, TEXT, GEOMETRY or JSON column 'notes' can't have a default value'
* better keep the migration in 2023...
* Update 2023_12_12_171400_alert_rule_note.php
* Update create-alert-item.inc.php

---------

Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
This commit is contained in:
Stef
2024-01-17 09:09:19 +01:00
committed by GitHub
parent e9725358e3
commit 5733942aa2
10 changed files with 61 additions and 31 deletions

View File

@@ -1318,6 +1318,7 @@ function add_edit_rule(Illuminate\Http\Request $request)
$interval = $data['interval'];
$override_query = $data['override_query'];
$adv_query = $data['adv_query'];
$notes = $data['notes'];
$delay_sec = convert_delay($delay);
$interval_sec = convert_delay($interval);
if ($mute == 1) {
@@ -1355,10 +1356,10 @@ function add_edit_rule(Illuminate\Http\Request $request)
}
if (is_numeric($rule_id)) {
if (! (dbUpdate(['name' => $name, 'builder' => $builder, 'query' => $query, 'severity' => $severity, 'disabled' => $disabled, 'extra' => $extra_json], 'alert_rules', 'id=?', [$rule_id]) >= 0)) {
if (! (dbUpdate(['name' => $name, 'builder' => $builder, 'query' => $query, 'severity' => $severity, 'disabled' => $disabled, 'extra' => $extra_json, 'notes' => $notes], 'alert_rules', 'id=?', [$rule_id]) >= 0)) {
return api_error(500, 'Failed to update existing alert rule');
}
} elseif (! $rule_id = dbInsert(['name' => $name, 'builder' => $builder, 'query' => $query, 'severity' => $severity, 'disabled' => $disabled, 'extra' => $extra_json], 'alert_rules')) {
} elseif (! $rule_id = dbInsert(['name' => $name, 'builder' => $builder, 'query' => $query, 'severity' => $severity, 'disabled' => $disabled, 'extra' => $extra_json, 'notes' => $notes], 'alert_rules')) {
return api_error(500, 'Failed to create new alert rule');
}