TransformTransport allows you to modify OpenLineage events just before they are sent, on a per-transport basis. This lets you send customized or transformed events to specific backends without changing the global OpenLineage configuration. Use OpenLineage client version 1.38 or higher. Upgrading the OpenLineage client version is safe and independent of your Airflow version. Astronomer recommends always using the latest version of OpenLineage client. Add the following to yourDocumentation Index
Fetch the complete documentation index at: https://astronomer-preview.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
requirements.txt to upgrade:
- TransformTransport only modifies the event right before sending.
- TransformTransport does not change the global OpenLineage configuration or variables such as the namespace. It means that the OpenLineage namespace remains unchanged globally.
- If you use global OpenLineage namespace elsewhere, such as passing it to Spark operators or OpenLineage macros, those references will still have the original namespace value. In such cases, you might need to manually update those references to ensure consistency or implement a similar approach for Spark integration.
Send OpenLineage events to Observe and Atlan with different namespaces
An example use case of TransformTransport for OpenLineage is you want to send OpenLineage events to both Astro Observe and Atlan, but need the OpenLineage namespace to be different only for Atlan. This can be done using the predefinedJobNamespaceReplaceTransformer transformer. This transformer lets you dynamically override the job namespace for specific backends using the TransformTransport interface.
Astro already configures OpenLineage transport for the default Astro Observe destination, so you don’t need to configure it again.
To add a secondary Atlan backend with a different job namespace, define the following environment variables:
Verify the setup
- Trigger a DAG that emits OpenLineage events.
- Confirm events appear in Astro Observe, the default backend.
- Check your Atlan instance to confirm receipt of events with the updated namespace.
- Check Airflow logs for any errors related to the OpenLineage transport layer.
OPENLINEAGE__TRANSPORT__CONTINUE_ON_FAILURE=true, a failed Atlan transport will not affect Astro delivery.