Skip to content

Commit 9f75aec

Browse files
committed
refactor(plugins): enhance error handling for database operations and variable parsing in config plugin
1 parent 8232fde commit 9f75aec

File tree

1 file changed

+19
-9
lines changed

1 file changed

+19
-9
lines changed

plugins/config/main.go

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,13 @@ func main() {
250250
time.Sleep(30 * time.Second)
251251
return
252252
}
253-
defer func() { _ = db.Close() }()
253+
254+
defer func() {
255+
err := db.Close()
256+
if err != nil {
257+
_ = catcher.Error("failed to close database connection", err, map[string]any{"process": "plugin_com.utmstack.config"})
258+
}
259+
}()
254260

255261
filters, err := getFilters(db)
256262
if err != nil {
@@ -446,11 +452,11 @@ func getFilters(db *sql.DB) ([]Filter, error) {
446452
}
447453

448454
filter := Filter{}
449-
filter.FromVar(
450-
id,
451-
name,
452-
body,
453-
)
455+
456+
if err := filter.FromVar(id, name, body); err != nil {
457+
continue
458+
}
459+
454460
filters = append(filters, filter)
455461
}
456462

@@ -487,7 +493,9 @@ func getAssets(db *sql.DB) ([]Asset, error) {
487493

488494
asset := Asset{}
489495

490-
asset.FromVar(name, hostnames, ips, confidentiality, integrity, availability)
496+
if err := asset.FromVar(name, hostnames, ips, confidentiality, integrity, availability); err != nil {
497+
continue
498+
}
491499

492500
assets = append(assets, asset)
493501
}
@@ -532,10 +540,12 @@ func getRules(db *sql.DB) ([]Rule, error) {
532540

533541
dataTypes, err := getRuleDataTypes(db, id)
534542
if err != nil {
535-
return nil, err
543+
continue
536544
}
537545

538-
rule.FromVar(id, dataTypes, ruleName, confidentiality, integrity, availability, category, technique, description, references, where, adversary, deduplicate, after)
546+
if err := rule.FromVar(id, dataTypes, ruleName, confidentiality, integrity, availability, category, technique, description, references, where, adversary, deduplicate, after); err != nil {
547+
continue
548+
}
539549

540550
rules = append(rules, rule)
541551
}

0 commit comments

Comments
 (0)