Alvin Rusly
11/10/2025, 11:15 PM2025-11-05 06:20:22 — ERROR — Could not send the alert - <class 'elementary.monitor.alerts.test_alert.TestAlertModel'>.
on 2: ERROR:elementary.monitor.data_monitoring.alerts.data_monitoring_alerts:Could not send the alert - <class 'elementary.monitor.alerts.test_alert.TestAlertModel'>.
• we tried to also update our elementary package from 0.18.3 to 0.20.1 - but doing so creates a few errors in our production pipeline
06:15:52 Encountered an error:
Runtime Error
Compilation Error in operation elementary-on-run-end-0 (./dbt_project.yml)
'VarProvider' object is not iterable
> in macro upload_dbt_invocation (macros/edr/dbt_artifacts/upload_dbt_invocation.sql)
> called by macro on_run_end (macros/edr/system/hooks/on_run_end.sql)
> called by operation elementary-on-run-end-0 (./dbt_project.yml)
06:19:27 Encountered an error:
Compilation Error in operation elementary-on-run-end-0 (./dbt_project.yml)
'dbt.contracts.graph.nodes.ModelNode object' has no attribute 'get'
> in macro flatten_run_result (macros/edr/dbt_artifacts/upload_run_results.sql)
> called by macro upload_artifacts_to_table (macros/edr/dbt_artifacts/upload_artifacts_to_table.sql)
> called by macro upload_run_results (macros/edr/dbt_artifacts/upload_run_results.sql)
> called by macro on_run_end (macros/edr/system/hooks/on_run_end.sql)
> called by operation elementary-on-run-end-0 (./dbt_project.yml)kapa.ai
11/10/2025, 11:15 PMkapa.ai
11/10/2025, 11:15 PMCould not send the alert - <class 'elementary.monitor.alerts.test_alert.TestAlertModel'>. is not directly explained in the knowledge sources. However, similar issues have occurred after dbt or adapter upgrades, especially when there are breaking changes in dbt or its adapters that Elementary has not yet adapted to. In such cases, the recommendation is often to ensure that both dbt and Elementary are compatible and up to date, and to check for any breaking changes in the new dbt/adapter versions that might affect Elementary’s alerting or monitoring logic. ### 2. Errors after upgrading Elementary (0.18.3 → 0.20.1) #### a. 'VarProvider' object is not iterable This error occurs in the upload_dbt_invocation macro during the on-run-end hook. Similar errors have been reported in the past, often related to incompatibilities between dbt versions and Elementary, or due to changes in how dbt handles variables and context objects. In previous cases, a workaround was to set the following in your `dbt_project.yml`: yaml vars: disable_dbt_invocation_autoupload: true This disables the automatic upload of dbt invocation metadata, which is where the error is occurring. This workaround has resolved similar issues for other users until a permanent fix is released in a future Elementary version. If you are overriding the ref() macro or have custom macros that affect dbt’s context, that can also cause such issues and should be reviewed as a possible source of incompatibility[Slack thread: MacroGenerator/config error](https://slack.com/archives/C02CTC89LAX/p1667235374261789). #### b. 'dbt.contracts.graph.nodes.ModelNode object' has no attribute 'get' This error in the flatten_run_result macro is also indicative of a breaking change in dbt’s internal APIs or data structures, which Elementary’s macros are not yet compatible with. This type of error has been seen before when dbt or its adapters are upgraded and the Elementary package is not yet updated to handle the new object structures. The recommended approach is to: - Ensure you are using a version of Elementary that is explicitly compatible with your dbt and adapter versions. - If you have just upgraded, make sure to run dbt deps and dbt run -s elementary to recompile and update all package dependencies, as this has resolved similar issues for other users after upgrades[GitHub issue: dbt compile failed after installing elementary-data](https://github.com/elementary-data/elementary/issues/1427). ### General Troubleshooting Steps - Double-check compatibility between your dbt, dbt-adapter, and Elementary versions. - After upgrading either dbt or Elementary, always run: dbt deps dbt run -s elementary - If you use custom macros (especially overrides of ref() or schema generation), review them for compatibility with the latest dbt and Elementary versions, as these have caused similar issues in the past[Slack thread: MacroGenerator/config error](https://slack.com/archives/C02CTC89LAX/p1667235374261789). - If the error persists, try temporarily disabling problematic features (like dbt invocation autoupload) using the vars workaround above. If these steps do not resolve the issue, the knowledge sources do not provide a more specific solution for the exact errors you are seeing. In that case, you may need to reach out to Elementary support with your logs and configuration for further assistance.