Commit 4d764558 authored by qiuqunfeng's avatar qiuqunfeng
Browse files

Enhance DeleteGatewayWaf method to improve error handling and logging. Added...

Enhance DeleteGatewayWaf method to improve error handling and logging. Added deferred function to log gateway deletion history with error messages and status. This change ensures better tracking of deletion operations and improves clarity in error reporting.
parent 1681721a
...@@ -636,13 +636,42 @@ func (s *wafService) EnableGatewayWaf(ctx context.Context, req *EnableGatewayWaf ...@@ -636,13 +636,42 @@ func (s *wafService) EnableGatewayWaf(ctx context.Context, req *EnableGatewayWaf
} }
func (s *wafService) DeleteGatewayWaf(ctx context.Context, req *GatewateInfo) error { func (s *wafService) DeleteGatewayWaf(ctx context.Context, req *GatewateInfo) error {
var errMsg string
var status int = 0 // Success by default
defer func() {
s.addListenerHistory(ctx, "", "", req.GatewayName, req.Namespace, req.RegionCode, errMsg, status, model.OperationDelete)
}()
client := s.clusterClientManager.GetClient(req.RegionCode) client := s.clusterClientManager.GetClient(req.RegionCode)
if client == nil { if client == nil {
return fmt.Errorf("failed to get cluster client") errMsg = "failed to get cluster client"
status = 1
return fmt.Errorf("%s", errMsg)
} }
labelSelector := fmt.Sprintf("apigateway_name=%s", req.GatewayName) labelSelector := fmt.Sprintf("apigateway_name=%s", req.GatewayName)
// serviceList, err := client.Versioned.WafV1alpha1().Services(req.Namespace).List(ctx, metav1.ListOptions{LabelSelector: labelSelector})
// if err != nil {
// errMsg = "failed to get WAF service"
// status = 1
// return fmt.Errorf("%s", errMsg)
// }
// listenerNames := []string{}
// wafNames := []string{}
// for _, service := range serviceList.Items {
// listenerNames = append(listenerNames, service.Spec.ServiceName)
// wafNames = append(wafNames, fmt.Sprintf("%s-%d", service.Spec.ServiceName, service.Spec.Port))
// }
// defer func() {
// for index, listenerName := range listenerNames {
// s.addListenerHistory(ctx, wafNames[index], listenerName, req.GatewayName, req.Namespace, req.RegionCode, errMsg, status, model.OperationDelete)
// }
// }()
if err := client.Versioned.WafV1alpha1().Services(req.Namespace).DeleteCollection(ctx, metav1.DeleteOptions{}, metav1.ListOptions{LabelSelector: labelSelector}); err != nil { if err := client.Versioned.WafV1alpha1().Services(req.Namespace).DeleteCollection(ctx, metav1.DeleteOptions{}, metav1.ListOptions{LabelSelector: labelSelector}); err != nil {
return fmt.Errorf("failed to delete WAF service: %v", err) errMsg = "failed to delete WAF service"
status = 1
return fmt.Errorf("%s", errMsg)
} }
return nil return nil
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment