Files
EdgeAPI/internal/rpc/services/service_http_access_log_policy.go

42 lines
1.1 KiB
Go
Raw Normal View History

2020-09-20 11:56:30 +08:00
package services
import (
"context"
"github.com/TeaOSLab/EdgeAPI/internal/db/models"
"github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb"
)
type HTTPAccessLogPolicyService struct {
BaseService
2020-09-20 11:56:30 +08:00
}
2021-07-11 18:05:57 +08:00
// FindAllEnabledHTTPAccessLogPolicies 获取所有可用策略
2020-09-20 11:56:30 +08:00
func (this *HTTPAccessLogPolicyService) FindAllEnabledHTTPAccessLogPolicies(ctx context.Context, req *pb.FindAllEnabledHTTPAccessLogPoliciesRequest) (*pb.FindAllEnabledHTTPAccessLogPoliciesResponse, error) {
// 校验请求
2021-07-11 18:05:57 +08:00
_, err := this.ValidateAdmin(ctx, 0)
2020-09-20 11:56:30 +08:00
if err != nil {
return nil, err
}
tx := this.NullTx()
policies, err := models.SharedHTTPAccessLogPolicyDAO.FindAllEnabledAccessLogPolicies(tx)
2020-09-20 11:56:30 +08:00
if err != nil {
return nil, err
}
result := []*pb.HTTPAccessLogPolicy{}
for _, policy := range policies {
result = append(result, &pb.HTTPAccessLogPolicy{
Id: int64(policy.Id),
Name: policy.Name,
IsOn: policy.IsOn == 1,
Type: policy.Name,
OptionsJSON: []byte(policy.Options),
2020-09-29 17:22:33 +08:00
CondsJSON: []byte(policy.Conds),
2020-09-20 11:56:30 +08:00
})
}
return &pb.FindAllEnabledHTTPAccessLogPoliciesResponse{AccessLogPolicies: result}, nil
}