Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Reporting/Maps] Background tiles in a map panel might not load in a screenshot report #131005

Closed
tsullivan opened this issue Apr 26, 2022 · 3 comments · Fixed by #131185
Closed
Assignees
Labels
bug Fixes for quality problems that affect the customer experience (Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead [Deprecated-Use Team:Presentation]Team:Geo Former Team Label for Geo Team. Now use Team:Presentation impact:high Addressing this issue will have a high level of impact on the quality/strength of our product.

Comments

@tsullivan
Copy link
Member

tsullivan commented Apr 26, 2022

Kibana version: 7.9+

Original install method (e.g. download page, yum, from source, etc.): ECE

Describe the bug:
A Map panel waits for ES data to load and rendering of the data to complete, but it isn't aware of the requests for the background tiles that are also necessary for rendering.

When all the data is loaded and rendered in the panel, a dashboard panel gives itself an attribute in the HTML code that Reporting can detect. The Map panel updates the HTML code for Reporting, without knowing about the loading state of the background tiles. Therefore, a timing issue exists where Reporting may take a screenshot of the page before it should.

Steps to reproduce:

  1. Use 2-4GB of RAM for Kibana instance in ECE
  2. The Kibana instance should not have outside access to the Internet
  3. Use proxy settings to have Reporting's Chromium browser access the map tile server:
    xpack.reporting.capture.browser.chromium.proxy.enabled: true
    xpack.reporting.capture.browser.chromium.proxy.bypass: ["*.elastic.mycompany.com","*mycompany.com","0.0.0.0"]
    xpack.reporting.capture.browser.chromium.proxy.server: https://proxy.mycompany.com:8088
    
    # in a constrained environment, there needs to be extra wait time for screenshotting events
    xpack.reporting.capture.timeouts.renderComplete: 240000
    xpack.reporting.capture.timeouts.waitForElements: 240000
    
    # extra wait time for the report job
    xpack.reporting.queue.timeout: 240000
    
  4. The map tiles will be requested through the proxy, which adds a bit of latency.

Expected behavior:
The map should have image tiles rendered behind the data.

Instead, the data is present but the tiles are blank.

Screenshots (if relevant):

Errors in browser console (if relevant):
No errors

Provide logs and/or server output (if relevant):

Any additional context:
Side note: in one case, PDF reports consistently load with all the background tiles, whereas PNG reports sometimes look OK, but sometimes have missing background tiles. It seems there is a detail about the implementation that could be making the difference, and that merits further investigation.

@tsullivan tsullivan added the bug Fixes for quality problems that affect the customer experience label Apr 26, 2022
@botelastic botelastic bot added the needs-team Issues missing a team label label Apr 26, 2022
@tsullivan tsullivan added [Deprecated-Use Team:Presentation]Team:Geo Former Team Label for Geo Team. Now use Team:Presentation Team:AppServicesUx labels Apr 26, 2022
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-app-services (Team:AppServicesUx)

@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-gis (Team:Geo)

@botelastic botelastic bot removed the needs-team Issues missing a team label label Apr 26, 2022
@tsullivan tsullivan added the (Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead label Apr 26, 2022
@nreese
Copy link
Contributor

nreese commented Apr 27, 2022

@thomasneirynck added vector tile loading status. This status can be used to let reporting know when base map vector tiles have been loaded.

@nreese nreese added the impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. label Apr 28, 2022
@nreese nreese self-assigned this Apr 28, 2022
@exalate-issue-sync exalate-issue-sync bot reopened this May 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes for quality problems that affect the customer experience (Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead [Deprecated-Use Team:Presentation]Team:Geo Former Team Label for Geo Team. Now use Team:Presentation impact:high Addressing this issue will have a high level of impact on the quality/strength of our product.
Projects
None yet
3 participants