View the original community article here
Last tested: Feb 13, 2019
- Run all queries for the dashboard and cache them
- Take the dash/look URL we're supposed to render and prepend/append some URL changes and parameters to open the page in presentation mode and to hide some UI elements
- Open that URL in headless chromium, wait for it to finish loading
- Run some JS on that page which resizes the invisible "viewport" to get the vis at the right size and includes a call to `captureScreenshot` which is a method provided by Chrome Devtools Protocol
- Take that image data, send it over to the looker codebase, convert it to the proper image format and deliver (there's a lot more complexity there but that's the gist of it)
This content is subject to limited support.