feat(startup): print service banner after listener ready

This commit is contained in:
ryan
2026-07-13 15:49:19 +08:00
parent 26be762c3a
commit 6b6c786cfe
11 changed files with 200 additions and 13 deletions
+18 -2
View File
@@ -30,9 +30,9 @@ const (
var clickhouseMigrationFS embed.FS
// MigrateClickHouse runs goose migrations against ClickHouse when enabled.
func MigrateClickHouse() {
func MigrateClickHouse() Report {
if !config.Config.ClickHouse.Enabled {
return
return Report{Backend: "ClickHouse"}
}
cfg := config.Config.ClickHouse
@@ -74,14 +74,30 @@ func MigrateClickHouse() {
closeClickHouseDB(sqlDB)
log.Fatalf("[ClickHouse] create goose provider failed: %v\n", err)
}
previousVersion, err := provider.GetDBVersion(context.Background())
if err != nil {
closeClickHouseDB(sqlDB)
log.Fatalf("[ClickHouse] get goose version failed: %v\n", err)
}
if _, err := provider.Up(context.Background()); err != nil {
closeClickHouseDB(sqlDB)
log.Fatalf("[ClickHouse] goose migrate failed: %v\n", err)
}
currentVersion, err := provider.GetDBVersion(context.Background())
if err != nil {
closeClickHouseDB(sqlDB)
log.Fatalf("[ClickHouse] get migrated goose version failed: %v\n", err)
}
closeClickHouseDB(sqlDB)
log.Println("[ClickHouse] goose migrate success")
return Report{
Backend: "ClickHouse",
Enabled: true,
Version: currentVersion,
Applied: currentVersion != previousVersion,
}
}
func closeClickHouseDB(sqlDB *sql.DB) {