dns clickhouse改造

This commit is contained in:
robin
2026-02-10 23:43:05 +08:00
parent 1bb8140a41
commit c28317ee07
13 changed files with 280 additions and 59 deletions

View File

@@ -88,6 +88,10 @@ func (this *CreatePopupAction) RunPost(params struct {
Require("请选择存储类型")
baseType, _ := serverconfigs.ParseStorageTypeAndWriteTargets(params.Type)
_, writeTargets := serverconfigs.ParseStorageTypeAndWriteTargets(params.Type)
if writeTargets == nil {
writeTargets = &serverconfigs.AccessLogWriteTargets{File: true, MySQL: true}
}
storedType := baseType
if serverconfigs.IsFileBasedStorageType(params.Type) {
storedType = params.Type
@@ -178,6 +182,12 @@ func (this *CreatePopupAction) RunPost(params struct {
this.ErrorPage(err)
return
}
writeTargetsMap := map[string]bool{
"file": writeTargets.File,
"mysql": writeTargets.MySQL,
"clickhouse": writeTargets.ClickHouse,
}
writeTargetsJSON, _ := json.Marshal(writeTargetsMap)
createResp, err := this.RPC().HTTPAccessLogPolicyRPC().CreateHTTPAccessLogPolicy(this.AdminContext(), &pb.CreateHTTPAccessLogPolicyRequest{
Name: params.Name,
Type: storedType,
@@ -186,7 +196,7 @@ func (this *CreatePopupAction) RunPost(params struct {
IsPublic: params.IsPublic,
FirewallOnly: params.FirewallOnly,
DisableDefaultDB: params.DisableDefaultDB,
WriteTargetsJSON: nil,
WriteTargetsJSON: writeTargetsJSON,
})
if err != nil {
this.ErrorPage(err)

View File

@@ -46,7 +46,11 @@ func (this *IndexAction) RunGet(params struct{}) {
return
}
}
typeDisplay := policy.Type
writeTargets := serverconfigs.ParseWriteTargetsFromPolicy(policy.WriteTargetsJSON, policy.Type, policy.DisableDefaultDB)
typeDisplay := serverconfigs.ComposeStorageTypeDisplay(policy.Type, writeTargets)
if typeDisplay == "" {
typeDisplay = policy.Type
}
policyMaps = append(policyMaps, maps.Map{
"id": policy.Id,
"name": policy.Name,

View File

@@ -36,7 +36,11 @@ func InitPolicy(parent *actionutils.ParentAction, policyId int64) error {
}
}
typeDisplay := policy.Type
writeTargets := serverconfigs.ParseWriteTargetsFromPolicy(policy.WriteTargetsJSON, policy.Type, policy.DisableDefaultDB)
typeDisplay := serverconfigs.ComposeStorageTypeDisplay(policy.Type, writeTargets)
if typeDisplay == "" {
typeDisplay = policy.Type
}
parent.Data["policy"] = maps.Map{
"id": policy.Id,

View File

@@ -107,6 +107,10 @@ func (this *UpdateAction) RunPost(params struct {
Require("请选择存储类型")
baseType, _ := serverconfigs.ParseStorageTypeAndWriteTargets(params.Type)
_, writeTargets := serverconfigs.ParseStorageTypeAndWriteTargets(params.Type)
if writeTargets == nil {
writeTargets = &serverconfigs.AccessLogWriteTargets{File: true, MySQL: true}
}
storedType := baseType
if serverconfigs.IsFileBasedStorageType(params.Type) {
storedType = params.Type
@@ -204,6 +208,12 @@ func (this *UpdateAction) RunPost(params struct {
this.ErrorPage(err)
return
}
writeTargetsMap := map[string]bool{
"file": writeTargets.File,
"mysql": writeTargets.MySQL,
"clickhouse": writeTargets.ClickHouse,
}
writeTargetsJSON, _ := json.Marshal(writeTargetsMap)
_, err = this.RPC().HTTPAccessLogPolicyRPC().UpdateHTTPAccessLogPolicy(this.AdminContext(), &pb.UpdateHTTPAccessLogPolicyRequest{
HttpAccessLogPolicyId: params.PolicyId,
Name: params.Name,
@@ -214,7 +224,7 @@ func (this *UpdateAction) RunPost(params struct {
IsPublic: params.IsPublic,
FirewallOnly: params.FirewallOnly,
DisableDefaultDB: params.DisableDefaultDB,
WriteTargetsJSON: nil,
WriteTargetsJSON: writeTargetsJSON,
})
if err != nil {
this.ErrorPage(err)