18 Sep 2024
09:23 PM
- last edited on
05 Aug 2025
07:42 AM
by
GosiaMurawska
Hi,
Does Monaco support state like Terraform?
Ex. If dashboard already exists in the target and you modify it in the source system. When performing the push with Monaco will Monaco recognize the same dashboard exists but just needs to be updated? Or will it create a duplicate dashboard with the updated changes?
Solved! Go to Solution.
19 Sep 2024 01:59 AM
Hi @RishiSuthar
I think monaco does not yet support state management similar to terraform does . It just applies the config based on the current sate of the configuration file , however if you are trying to make changes to config and apply to an existing dashboard in your environment it can check if a dashboard with similar config already exists and update the dashboard with changes
04 Aug 2025 12:16 PM
Hi Rishi,
To help you answer this question with detailed accurancy, I prepared this answer based on our POC results that we used to compare Monaco vs Terraform, I hope this is useful to you and to anyone in the community who is asking the same question.
Monaco CLI does not support state management in the same way as Terraform does but is not a big issue to manage.
What Monaco Does Instead
Monaco applies configurations based on the current state of your source files, not by tracking the target environment’s state.
It performs idempotent updates—meaning if a dashboard or config already exists, Monaco will attempt to update it rather than duplicate it.
There’s no .tfstate equivalent, no drift detection, and no rollback mechanism built into Monaco.
Implications for Your Workflows
Given your focus on governance and automation integrity:
You’ll need to validate configurations manually or via dry runs before applying them.
For environments with frequent changes, consider external tracking mechanisms (e.g. Git history, Dynatrace API queries) to simulate state awareness.
If you're integrating Monaco with Terraform, Terraform can manage state while Monaco handles config deployment—though they’ll operate independently.
I strongly recommend state update via artifacts by saving the previous version of the JSON dashboard at every level
You do not need to rely on this complexity of terraform if all functionality is already available in Monaco
Please share your experiece here if you are already a seasoned user of terraform or monaco or both?
Hope this helps
08 Aug 2025 04:31 PM
@MarwanC I have no real experience to share, I'm still learning and experimenting with Monaco (still don't have any experience with Terraform).
I just what to say Thank you very much for this detailed explanation.