文件清理

This commit is contained in:
robin
2026-02-14 17:12:38 +08:00
parent f38505e210
commit 4259026c6e
22 changed files with 152 additions and 63 deletions

View File

@@ -13,6 +13,7 @@ import (
"github.com/iwind/TeaGo/dbs"
"github.com/iwind/TeaGo/lists"
"github.com/iwind/TeaGo/types"
"strings"
"sync"
"time"
)
@@ -126,6 +127,7 @@ func (this *StorageManager) Loop() error {
continue
}
}
this.applyFileStorageFallback(policy.Type, storage)
storage.SetVersion(types.Int(policy.Version))
storage.SetFirewallOnly(policy.FirewallOnly == 1)
@@ -143,6 +145,7 @@ func (this *StorageManager) Loop() error {
remotelogs.Error("ACCESS_LOG_STORAGE_MANAGER", "create policy '"+types.String(policyId)+"' failed: "+err.Error())
continue
}
this.applyFileStorageFallback(policy.Type, storage)
storage.SetVersion(types.Int(policy.Version))
storage.SetFirewallOnly(policy.FirewallOnly == 1)
this.storageMap[policyId] = storage
@@ -238,3 +241,20 @@ func (this *StorageManager) createStorage(storageType string, optionsJSON []byte
return nil, errors.New("invalid policy type '" + storageType + "'")
}
func (this *StorageManager) applyFileStorageFallback(policyType string, storage StorageInterface) {
if !serverconfigs.IsFileBasedStorageType(policyType) {
return
}
config, ok := storage.Config().(*serverconfigs.AccessLogFileStorageConfig)
if !ok || config == nil || strings.TrimSpace(config.Path) != "" {
return
}
// file_clickhouse / file_mysql_clickhouse 未填写 path 时回退到默认文件路径,避免启动失败。
if policyType == serverconfigs.AccessLogStorageTypeFileClickhouse || policyType == serverconfigs.AccessLogStorageTypeFileMySQLClickhouse {
config.Path = Tea.Root + "/logs/access-${date}.log"
config.AutoCreate = true
}
}