diff --git a/waterbutler/core/remote_logging.py b/waterbutler/core/remote_logging.py index e537f8d16..4eee7edcd 100644 --- a/waterbutler/core/remote_logging.py +++ b/waterbutler/core/remote_logging.py @@ -19,7 +19,7 @@ @utils.async_retry(retries=5, backoff=5) async def log_to_callback(action, source=None, destination=None, start_time=None, errors=[]): """PUT a logging payload back to the callback given by the auth provider.""" - if action in ('download_file', 'download_zip'): + if action in ('download_file', 'download_zip', 'metadata'): logger.debug('Not logging for {} action'.format(action)) return @@ -41,10 +41,6 @@ async def log_to_callback(action, source=None, destination=None, start_time=None log_payload['metadata'] = source.serialize() log_payload['provider'] = log_payload['metadata']['provider'] - if action in ('download_file', 'download_zip'): - logger.info('Not logging for {} action'.format(action)) - return - resp = await utils.send_signed_request('PUT', auth['callback_url'], log_payload) resp_data = await resp.read() diff --git a/waterbutler/server/api/v1/provider/__init__.py b/waterbutler/server/api/v1/provider/__init__.py index 5c724fb75..971dd41f6 100644 --- a/waterbutler/server/api/v1/provider/__init__.py +++ b/waterbutler/server/api/v1/provider/__init__.py @@ -147,12 +147,10 @@ def on_finish(self): if any((method in ('HEAD', 'OPTIONS'), status == 202, status > 302, status < 200)): return - if method == 'GET' and 'meta' in self.request.query_arguments: - return - # Done here just because method is defined action = { - 'GET': lambda: 'download_file' if self.path.is_file else 'download_zip', + 'GET': lambda: 'metadata' if 'meta' in self.request.query_arguments else ( + 'download_file' if self.path.is_file else 'download_zip'), 'PUT': lambda: ('create' if self.target_path.is_file else 'create_folder') if status == 201 else 'update', 'POST': lambda: 'move' if self.json['action'] == 'rename' else self.json['action'], 'DELETE': lambda: 'delete' @@ -177,7 +175,7 @@ def _send_hook(self, action): ) elif action in ('create', 'create_folder', 'update'): source = LogPayload(self.resource, self.provider, metadata=self.metadata) - elif action in ('delete', 'download_file', 'download_zip'): + elif action in ('delete', 'download_file', 'download_zip', 'metadata'): source = LogPayload(self.resource, self.provider, path=self.path) else: return