docs: def _update_kube_events(self, instance, pods_list, event_items):
          """
          Process kube events and send ddog events
          The namespace filtering is done here instead of KubeEventRetriever
          to avoid interfering with service discovery
          """
          node_ip, node_name = self.kubeutil.get_node_info()
          self.log.debug('Processing events on {} [{}]'.format(node_name, node_ip))
  
          k8s_namespaces = instance.get('namespaces', DEFAULT_NAMESPACES)
          if not isinstance(k8s_namespaces, list):
              self.log.warning('Configuration key "namespaces" is not a list: fallback to the default value')
              k8s_namespaces = DEFAULT_NAMESPACES
  
          # handle old config value
          if 'namespace' in instance and instance.get('namespace') not in (None, 'default'):
              self.log.warning('''The 'namespace' parameter is deprecated and will stop being supported starting '''
                               '''from 5.13. Please use 'namespaces' and/or 'namespace_name_regexp' instead.''')
              k8s_namespaces.append(instance.get('namespace'))
  
          if self.k8s_namespace_regexp:
              namespaces_endpoint = '{}/namespaces'.format(self.kubeutil.kubernetes_api_url)
              self.log.debug('Kubernetes API endpoint to query namespaces: %s' % namespaces_endpoint)
  
              namespaces = self.kubeutil.retrieve_json_auth(namespaces_endpoint).json()
              for namespace in namespaces.get('items', []):
                  name = namespace.get('metadata', {}).get('name', None)
                  if name and self.k8s_namespace_regexp.match(name):
                      k8s_namespaces.append(name)
  
          k8s_namespaces = set(k8s_namespaces)
  
          for event in event_items:
              event_ts = calendar.timegm(time.strptime(event.get('lastTimestamp'), '%Y-%m-%dT%H:%M:%SZ'))
              involved_obj = event.get('involvedObject', {})
  
              # filter events by white listed namespaces (empty namespace belong to the 'default' one)
              if involved_obj.get('namespace', 'default') not in k8s_namespaces:
                  continue
  
              tags = self.kubeutil.extract_event_tags(event)
              tags.extend(instance.get('tags', []))
  
              title = '{} {} on {}'.format(involved_obj.get('name'), event.get('reason'), node_name)
              message = event.get('message')
              source = event.get('source')
              k8s_event_type = event.get('type')
              alert_type = K8S_ALERT_MAP.get(k8s_event_type, 'info')
  
              if source:
                  message += '\nSource: {} {}\n'.format(source.get('component', ''), source.get('host', ''))
              msg_body = "%%%\n{}\n```\n{}\n```\n%%%".format(title, message)
              dd_event = {
                  'timestamp': event_ts,
                  'host': node_ip,
                  'event_type': EVENT_TYPE,
                  'msg_title': title,
                  'msg_text': msg_body,
                  'source_type_name': EVENT_TYPE,
                  'alert_type': alert_type,
                  'event_object': 'kubernetes:{}'.format(involved_obj.get('name')),
                  'tags': tags,
              }
              self.event(dd_event)