fmsg: export logBaseError function
All checks were successful
Test / Create distribution (push) Successful in 25s
Test / Run NixOS test (push) Successful in 3m16s

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
Ophestra 2025-02-18 13:02:51 +09:00
parent e85be67fd9
commit e9b0f9faef
Signed by: cat
SSH Key Fingerprint: SHA256:gQ67O0enBZ7UdZypgtspB2FDM1g3GVw8nX0XSdcFw8Q
3 changed files with 13 additions and 12 deletions

View File

@ -44,13 +44,3 @@ func logWaitError(err error) {
} }
} }
} }
func logBaseError(err error, message string) {
var e *fmsg.BaseError
if fmsg.AsBaseError(err, &e) {
log.Print(e.Message())
} else {
log.Println(message, err)
}
}

View File

@ -2,6 +2,7 @@ package fmsg
import ( import (
"fmt" "fmt"
"log"
"reflect" "reflect"
) )
@ -70,3 +71,13 @@ func AsBaseError(err error, target **BaseError) bool {
*target = v.Convert(baseErrorType).Interface().(*BaseError) *target = v.Convert(baseErrorType).Interface().(*BaseError)
return true return true
} }
func PrintBaseError(err error, fallback string) {
var e *BaseError
if AsBaseError(err, &e) {
log.Print(e.Message())
} else {
log.Println(fallback, err)
}
}

View File

@ -330,11 +330,11 @@ func runApp(config *fst.Config) {
if a, err := app.New(sys); err != nil { if a, err := app.New(sys); err != nil {
log.Fatalf("cannot create app: %s", err) log.Fatalf("cannot create app: %s", err)
} else if err = a.Seal(config); err != nil { } else if err = a.Seal(config); err != nil {
logBaseError(err, "cannot seal app:") fmsg.PrintBaseError(err, "cannot seal app:")
internal.Exit(1) internal.Exit(1)
} else if err = a.Run(ctx, rs); err != nil { } else if err = a.Run(ctx, rs); err != nil {
if !rs.Start { if !rs.Start {
logBaseError(err, "cannot start app:") fmsg.PrintBaseError(err, "cannot start app:")
} else { } else {
logWaitError(err) logWaitError(err)
} }