Undeleting a dashboard
Hi All,
Are there any mechanisms by which If a dashboard is accidentally deleted by the owner, can it be recovered at all, and are there any safeguards we can put in place (apart from server backups and version control) to avoid them being accidentally deleted?
thanks,
Rob.
-
Hi Rob,
I'm not sure if it's still relevant, but either way, at list the community will benefit from it (:
While it's not officially possible to recover a deleted dashboard, there is a hacky way to achieve that in extreme cases but only if the dashboard was shared with at list one other user and it's also a bit risky so it will be a good idea to completely backup the server prior to the modifications.
It's too complex to describe but the general idea is to drill down in the MongoDB that the Sisense app is using and pull the dashboard's XML using the share that was done. It's very tricky and I would recommend it only in extreme cases.
If relevant, feel free to contact me and we'll be able to help you out (:
Cheers,
Ravid
-
Hi Ravid
We have a dashboard admin user account which is owner of over 10+ dashboards in our product. We had to delete that account due to some system issues , and recreated a new one with the same name and login info from the ActiveDirectory. We found that all of the non-shared dashboards under the old account ownership are deleted permanently and can't be retrieved back(thru API either). The ones that were shared with other users and groups are still showing in our dashboard list but there is no option to assign them a new owner or export them Any recommendations ?
Regards
An
-
Hi An,
As for the non-shared dashboards, I'm afraid I don't have an idea on how to retrieve them, I'm guessing that they are permanently deleted.
If there is a complete server backup/snap of any kind then you might be able to revert back the mongoDB snap and pull them out.
As for those that were shared, have you tried duplicating them? If it will work it will probably assign the logged in user as their owner.
If not, you can manually fix it via the MongoDB, but you need to be !*super*! careful as you can easily break things. If that is the case - I suggest you'll contact support and get some proper assistance in the process.
Quick note for the future usage of Sisense - we keep version control of all dashboards and cubes for all of our clients, your use case is exactly one of the reasons for it.
Feel free to reach out if you have questions about our version control methodology:
-
Hi Ravid
We don’t know the MongoDB route of doing things yet, still learning Sisense, is there a link you could point me to?
For the non-shared dashboards doing ‘Duplicate’ is not a preferred option mainly because retaining DashboardIDs is really important for us. Our in-house tool that deploys the dashboards from DEV->Test->QA->PROD Server has everything DashboardID based to keep things in sync. We also have a heavy implementation of JumpTo and Hyperlinks on our dashboards that will take lot of efforts in re-pointing and testing if we duplicate.
That said, we do have the .dash files for some dashboards but when we import them through web ‘Import’ or API the ownership is still getting set to the old deleted account. We also tried these , didn’t work :
- Delete dashboards through API.
- Reassign ownership, via “Switch to Owner’s view” ->modify Share and Owner settings.
Sorry, missed out to mention before that all of these dashboards are located within a Folder and Sub-folder directory structure with the deleted account set as the Owner of all.
I was wondering if we can restore the deleted user account somehow , or tweak the behind the screen UserId of the current user account to match previous , any thoughts?
We don’t backup our Sisense web server currently but it’s in pipeline to initiate the process using steps in this link we found earlier - https://support.sisense.com/hc/en-us/articles/230650808-Automatically-Backup-Sisense-Web-Data , if there is more to it please let me know.
I would reach out to you for a discussion on the version control methodology once we get pass this hurdle.
Thanks
An
-
Hi An,
There aren't many materials about accessing the MongoDB directly as it is highly suggested to avoid doing that and use the REST API instead.
With that said, you have instructions about how to access the DB in the below link but with no specific explanations on what's going on there so you should investigate on your own.
Another idea worth checking out is to try to update the owner of the dashboard using the REST API "/dashboards/{id}/change_owner" endpoint.
-
Hi Ravid
Thank you for your insight. We were able to resolve it with the Sisense Rep's help. Basically he restored the original user account from the Users Collection in MongoDB.
I also have my MongoDB user account now , but it's readonly type so that I don't tinker with things that I am not supposed to. :). Off to a good start !!
An
Please sign in to leave a comment.
Comments
6 comments