Problems in displaying embedded dashboards after Metabase update (to v0.43)

Explaining the problem:
After having updated Metabase with the latest (v0.43) version, the embedding of all dashboards stopped working.
Starting from a dashboard, when I choose 'Sharing' > 'Embed this dashboard in an application', under 'Preview' I get the following message 'This content is blocked. Contact the site owner to fix the issue.' (see attached picture nr. 1).
On the external website where these dashboards normally display as expected, I get a 'There was a problem displaying this chart' message (see attached pic nr. 2).

What I have tried to do:

  • I made sure that the dashboards at issue are published (From a dashboard: Sharing > Embed this dashboard in an application > Publish)
  • I made sure that 'ENABLE EMBEDDING METABASE IN OTHER APPLICATIONS' in Admin > Embedding in other application, was set on 'Enabled' (as suggested here under 'Enabling embedding'.)
  • I also checked that the 'SITE URL' in Admin > General was the correct one (as this other discussion post suggested).
  • the way I am embedding the dashboard in the external website is still the same as before the update (when it was working), i.e.: [metabase]embedding code of given dashboard[/metabase]

Hi @mattia

Please post "Diagnostic Info" from Admin > Troubleshooting.
And which version did you upgrade from?

It is not possible to know why the content was blocked. You have to look in your browser developer console, since the error is coming from your browser.

As for errors on the charts, look in Admin > Troubleshooting > Logs, which has detailed errors.

I upgraded from version 0.38 (to v0.43).

Here is the diagnostic info:

{
"browser-info": {
"language": "en-US",
"platform": "Win32",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36",
"vendor": "Google Inc."
},
"system-info": {
"file.encoding": "UTF-8",
"java.runtime.name": "OpenJDK Runtime Environment",
"java.runtime.version": "11.0.15+10-Ubuntu-0ubuntu0.18.04.1",
"java.vendor": "Private Build",
"java.vendor.url": "Unknown",
"java.version": "11.0.15",
"java.vm.name": "OpenJDK 64-Bit Server VM",
"java.vm.version": "11.0.15+10-Ubuntu-0ubuntu0.18.04.1",
"os.name": "Linux",
"os.version": "4.15.0-176-generic",
"user.language": "en",
"user.timezone": "Etc/UTC"
},
"metabase-info": {
"databases": [
"mysql",
"googleanalytics"
],
"hosting-env": "unknown",
"application-database": "h2",
"application-database-details": {
"database": {
"name": "H2",
"version": "1.4.197 (2018-03-18)"
},
"jdbc-driver": {
"name": "H2 JDBC Driver",
"version": "1.4.197 (2018-03-18)"
}
},
"run-mode": "prod",
"version": {
"date": "2022-05-02",
"tag": "v0.43.0",
"branch": "release-x.43.x",
"hash": "ee686fc"
},
"settings": {
"report-timezone": "Etc/GMT+1"
}
}
}

Attached are also the screenshots of the browser console for:

  • metabase
  • external website

@mattia You Site URL is not correct. Make sure that you select https - not http - when you are actually using https.

You should migrate away from H2 if you are using Metabase in production:
https://www.metabase.com/docs/latest/operations-guide/migrating-from-h2.html

And you need to check Admin > Troubleshooting > Logs for errors. I cannot tell what the error is behind "There was a problem displaying this chart"

After having changed 'http' to 'https' the Metabase Preview of the embedded dashboard is displaying as it should, thanks.

The embedded dashboards in the external website though are still showing the same error as before ('There was a problem displaying this chart').

I have tried to look in the Admin > Troubleshooting > Logs, and I found an error that has to do with an unknown or incorrect time zone:

  • [fb784ef9-53a1-4c61-8d7b-86a4b6bb8309] 2022-05-12T15:53:03+02:00 ERROR metabase.driver.sql-jdbc.execute Failed to set timezone 'Etc/GMT+1' for :mysql database
    java.sql.SQLTransientConnectionException: (conn=86691862) Unknown or incorrect time zone: 'Etc/GMT+1'
  • Caused by: org.mariadb.jdbc.internal.util.exceptions.MariaDbSqlException: Unknown or incorrect time zone: 'Etc/GMT+1'
  • Caused by: java.sql.SQLException: Unknown or incorrect time zone: 'Etc/GMT+1'

@mattia That error is unrelated, but is caused by a bad MySQL setup. Follow the instructions here to fix that on your MySQL database: https://github.com/metabase/metabase/issues/10365

But again, it will not fix your current problem, since you have not included logs about that.

Thanks.

Where do I have to write the following code?

I will look in the Admin > Troubleshooting > Logs if I find what seems to be relevant errors for the main issue.

@mattia You should send that to whoever administrates your MySQL database.

Ok, thanks.

I have searched but have not found anything that seems relevant yet. Perhaps because I am not sure what I am looking for.

Should I post here the content of the 'Logs'? Could you try and see if you can rapidly find anything relevant? Otherwise I will get back at you tomorrow.

@mattia Refresh the page with the problem, then go to the log and scroll to the bottom, it should have errors there. Otherwise upload your entire log somewhere and post a link here.

Here is the link to a document containing the log that appeared after refreshing the page with the problem. Thank you for your help.

The code of the dashboard that is not displaying correctly on the external website is 353 - if it is of any help.

@mattia Your embedding code is incorrect. You are including things that doesn't exist as Locked parameters.
For reference: https://github.com/metabase/metabase/issues/20887