def process()

in processors/logging.py [0:0]


    def process(self, output_var='logging'):
        if 'mode' not in self.config:
            raise NotConfiguredException(
                'No Cloud Logging operation specified.')
        if 'resourceNames' not in self.config:
            raise NotConfiguredException(
                'No Cloud Logging resource names specified.')

        credentials, credentials_project_id = google.auth.default()
        project = self._jinja_expand_string(
            self.config['project'],
            'project') if 'project' in self.config else credentials_project_id
        if not project:
            project = credentials.quota_project_id

        logging_service = discovery.build(
            'logging', 'v2', http=self._get_branded_http(credentials))

        resource_names = self._jinja_expand_list(self.config['resourceNames'])
        log_filter = self._jinja_expand_string(
            self.config['filter']) if 'filter' in self.config else ''
        order_by = self._jinja_expand_string(
            self.config['orderBy']
        ) if 'orderBy' in self.config else 'timestamp asc'

        if self.config['mode'] == 'logging.entries':
            request_params = {
                "resourceNames": resource_names,
                "filter": log_filter,
                "orderBy": order_by,
            }
            msg_format = self._jinja_expand_string(
                self.config['format']) if 'format' in self.config else 'full'
            ret = []
            while True:
                log_request = logging_service.entries().list(
                    body=request_params)
                log_response = log_request.execute()
                if 'entries' in log_response:
                    if msg_format == 'text-only' or msg_format == 'with-timestamps':
                        for entry in log_response['entries']:
                            if 'textPayload' in entry:
                                if msg_format == 'with-timestamps':
                                    ret.append('%s %s' %
                                               (entry['receiveTimestamp'],
                                                entry['textPayload']))
                                else:
                                    ret.append(entry['textPayload'])
                    else:
                        ret += log_response['entries']
                if 'nextPageToken' in log_response:
                    request_params['pageToken'] = log_response['nextPageToken']
                else:
                    break
            return {output_var: ret}

        return {output_var: None}