code: def parse_trail(self, global_params, region, trail):
          
          trail_config = {}
          trail_config['name'] = trail.pop('Name')
          trail_id = self.get_non_aws_id(trail_config['name'])
          trail_details = None
  
          api_client = api_clients[region]
  
          # Do not duplicate entries for multiregion trails
          if 'IsMultiRegionTrail' in trail and trail['IsMultiRegionTrail'] and trail['HomeRegion'] != region:
              for key in ['HomeRegion', 'TrailARN']:
                  trail_config[key] = trail[key]
              trail_config['scout2_link'] = 'services.cloudtrail.regions.%s.trails.%s' % (trail['HomeRegion'], trail_id)
          else:
              for key in trail:
                  trail_config[key] = trail[key]
              trail_config['bucket_id'] = self.get_non_aws_id(trail_config.pop('S3BucketName'))
              for key in ['IsMultiRegionTrail', 'LogFileValidationEnabled']:
                  if key not in trail_config:
                      trail_config[key] = False
              trail_details = api_client.get_trail_status(Name=trail['TrailARN'])
              for key in ['IsLogging', 'LatestDeliveryTime', 'LatestDeliveryError', 'StartLoggingTime', 'StopLoggingTime', 'LatestNotificationTime', 'LatestNotificationError', 'LatestCloudWatchLogsDeliveryError', 'LatestCloudWatchLogsDeliveryTime']:
                  trail_config[key] = trail_details[key] if key in trail_details else None
  
          if trail_details:
              trail_config['wildcard_data_logging'] = self.data_logging_status(trail_config['name'], trail_details, api_client)
  
          self.trails[trail_id] = trail_config
docs: Parse a single CloudTrail trail
  
          :param global_params:           Parameters shared for all regions
          :param region:                  Name of the AWS region
          :param cluster:                 Trail