diff --git a/ingestion/src/metadata/ingestion/ometa/mixins/dashboard_mixin.py b/ingestion/src/metadata/ingestion/ometa/mixins/dashboard_mixin.py index 796315f50ec..ef2f192ed83 100644 --- a/ingestion/src/metadata/ingestion/ometa/mixins/dashboard_mixin.py +++ b/ingestion/src/metadata/ingestion/ometa/mixins/dashboard_mixin.py @@ -40,7 +40,7 @@ class OMetaDashboardMixin: :param dashboard: Table Entity to update :param dashboard_usage_request: Usage data to add """ - resp = self.client.post( + resp = self.client.put( f"/usage/dashboard/{dashboard.id.__root__}", data=dashboard_usage_request.json(), ) diff --git a/ingestion/src/metadata/ingestion/ometa/mixins/table_mixin.py b/ingestion/src/metadata/ingestion/ometa/mixins/table_mixin.py index bd8f652466e..5ee0052a7d6 100644 --- a/ingestion/src/metadata/ingestion/ometa/mixins/table_mixin.py +++ b/ingestion/src/metadata/ingestion/ometa/mixins/table_mixin.py @@ -123,7 +123,7 @@ class OMetaTableMixin: :param table: Table Entity to update :param table_usage_request: Usage data to add """ - resp = self.client.post( + resp = self.client.put( f"/usage/table/{table.id.__root__}", data=table_usage_request.json() ) logger.debug("published table usage %s", resp) diff --git a/ingestion/src/metadata/ingestion/source/dashboard/dashboard_service.py b/ingestion/src/metadata/ingestion/source/dashboard/dashboard_service.py index 6f210b2a7e2..8b5c7b7334a 100644 --- a/ingestion/src/metadata/ingestion/source/dashboard/dashboard_service.py +++ b/ingestion/src/metadata/ingestion/source/dashboard/dashboard_service.py @@ -11,6 +11,7 @@ """ Base class for ingesting dashboard services """ +import traceback from abc import ABC, abstractmethod from dataclasses import dataclass from typing import Any, Iterable, List, Optional @@ -273,7 +274,16 @@ class DashboardServiceSource(TopologyRunnerMixin, Source, ABC): def get_dashboard(self) -> Any: for dashboard in self.get_dashboards_list(): - dashboard_details = self.get_dashboard_details(dashboard) + + try: + dashboard_details = self.get_dashboard_details(dashboard) + except Exception as err: + logger.error( + f"Cannot extract dashboard details from {dashboard} - {err}" + ) + logger.debug(traceback.format_exc()) + continue + if filter_by_dashboard( self.source_config.dashboardFilterPattern, self.get_dashboard_name(dashboard_details),