Skip to main content

Bigeye Airflow Library supports Airflow versions >=2.2.0, <2.8.0 and offers custom operators for interacting with your your bigeye workspace.

Project description

Bigeye Airflow Operators for Airflow Versions 2.x

Operators

Create Metric Operator (bigeye_airflow.operators.create_metric_operator)

The CreateMetricOperator creates metrics from a list of metric configurations provided to the operator. This operator will fill in reasonable defaults like setting thresholds. It authenticates through an Airflow connection ID and offers the option to run the metrics after those metrics have been created. Please review the link below to understand the structure of the configurations.

Create or Update Metric Swagger

Parameters

  1. connection_id: str - The Airfow connection ID used to store the required Bigeye credential.
  2. warehouse_id: int - The Bigeye source/warehouse id to which the metric configurations will be deployed.
  3. configuration: List[dict] - A list of metric configurations conforming to the following schema.
    schema_name: str
    table_name: str
    column_name: str
    metric_template_id: uuid.UUID
    metric_name: str
    description: str
    notifications: List[str]
    thresholds: List[dict]
    filters: List[str]
    group_by: List[str]
    user_defined_metric_name: str
    metric_type: SimpleMetricCategory
    default_check_frequency_hours: int
    update_schedule: str
    delay_at_update: str
    timezone: str
    should_backfill: bool
    lookback_type: str
    lookback_days: int
    window_size: str
    _window_size_seconds
    
  4. run_after_upsert: bool - If true it will run the metrics after creation. Defaults to False.
  5. workspace_id: Optional[int] - The ID of the workspace where metrics should be created. If only 1 workspace configured, then will default to that else this will be required.

Run Metrics Operator (bigeye_airflow.operators.run_metrics_operator)

The RunMetricsOperator will run metrics in Bigeye based on the following:

  1. All metrics for a given table, by providing warehouse ID, schema name and table name.
  2. All metrics for a given collection, by providing the collection ID.
  3. Any and all metrics, given a list of metric IDs.

Currently, if a list of metric IDs is provided these will be run instead of metrics provided for warehouse_id, schema_name, table_name, and collection_id

Parameters

  1. connection_id: str - The Airfow connection ID used to store the required Bigeye credential.
  2. warehouse_id: int - The Bigeye source/warehouse id for which metrics will be run.
  3. schema_name: str - The schema name for which metrics will be run.
  4. table_name: str - The table name for which metrics will be run.
  5. collection_id: int - The ID of the collection where the operator will run the metrics.
  6. metric_ids: List[int] - The metric ids to run.
  7. workspace_id: Optional[int] - The ID of the workspace where metrics should be run. If only 1 workspace configured, then will default to that else this will be required.
  8. circuit_breaker_mode: bool - Whether dag should raise an exception if metrics result in alerting state, default False.

Create Delta Operator (bigeye_airflow.operators.create_delta_operator)

The CreateDeltaOperator creates deltas from a list of delta configurations provided to the operator. This operator will fill in reasonable defaults like column mappings. It authenticates through an Airflow connection ID and offers the option to run the deltas after those deltas have been created. Please review the link below to understand the structure of the configurations.

Parameters

  1. connection_id: str - The Airfow connection ID used to store the required Bigeye credential.
  2. warehouse_id: int - The Bigeye source/warehouse id to which the metric configurations will be deployed.
  3. configuration: List[dict] - A list of delta configurations conforming to the following schema.
    delta_name: str
    fq_source_table_name: str
    target_table_comparisons: dict
    - example: {"target_table_comparisons": [{"fq_target_table_name": "Snowflake.TOOY_DEMO_DB.PROD_REPL.ORDERS"}]
    tolerance: Optional[float]
    - default = 0.0
    cron_schedule: Optional[dict] 
    - default = None 
    - example: {"cron_schedule": {"name": "Midnight UTC", "cron": "0 0 * * *"}}
    notification_channels: Optional[List[dict]]
    - default = None
    - example: {"notification_channels: [{"slack": "#data-alerts"}]
    
  4. run_after_upsert: bool - If true it will run the deltas after creation. Defaults to False.
  5. workspace_id: Optional[int] - The ID of the workspace where deltas should be created. If only 1 workspace configured, then will default to that else this will be required.

Run Deltas Operator (bigeye_airflow.operators.run_deltas_operator)

The RunDeltasOperator will run deltas in Bigeye based on the following:

  1. All deltas for a given table, by providing warehouse ID, schema name and table name.
  2. Any and all deltas, given a list of delta IDs.

Currently, if a list of delta IDs is provided these will be run instead of metrics provided for warehouse_id, schema_name, table_name.

Parameters

  1. connection_id: str - The Airfow connection ID used to store the required Bigeye credential.
  2. warehouse_id: int - The Bigeye source/warehouse id for which metrics will be run.
  3. schema_name: str - The schema name for which metrics will be run.
  4. table_name: str - The table name for which metrics will be run.
  5. delta_ids: List[int] - The delta ids to run.
  6. workspace_id: Optional[int] - The ID of the workspace where deltas should be run. If only 1 workspace configured, then will default to that else this will be required.
  7. circuit_breaker_mode: bool - Whether dag should raise an exception if deltas result in alerting state, default False.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bigeye_airflow-0.1.31.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bigeye_airflow-0.1.31-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file bigeye_airflow-0.1.31.tar.gz.

File metadata

  • Download URL: bigeye_airflow-0.1.31.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.4 Darwin/23.3.0

File hashes

Hashes for bigeye_airflow-0.1.31.tar.gz
Algorithm Hash digest
SHA256 875d80c8a5d121f108d2544f4b4a84166613150a1c8785dbedc72f89ba769b69
MD5 630f658b45f240d05c4cd7e693d5cd8f
BLAKE2b-256 79c28764c87036f7891ff222d065412d6b3159d4c7e5ea5432c5d5d44bb2e941

See more details on using hashes here.

File details

Details for the file bigeye_airflow-0.1.31-py3-none-any.whl.

File metadata

  • Download URL: bigeye_airflow-0.1.31-py3-none-any.whl
  • Upload date:
  • Size: 16.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.4 Darwin/23.3.0

File hashes

Hashes for bigeye_airflow-0.1.31-py3-none-any.whl
Algorithm Hash digest
SHA256 2851dcabcba6a0e81b29f4d32cc8e1ec0a570281a55ab66879237cb5fe4d067a
MD5 9856c99589c816a3e366b94b0bf67126
BLAKE2b-256 bb8f9d38da5660bfdeb6226eeef7aa925b2861913fd38c24732ced9d120d63af

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page