General reporting settings

    Kibana server settings

    Reporting opens the Kibana web interface in a server process to generate screenshots of Kibana visualizations. In most cases, the default settings will work and you don’t need to configure Reporting to communicate with Kibana. However, if your client connections must go through a reverse-proxy to access Kibana, Reporting configuration must have the proxy port, protocol, and hostname set in the xpack.reporting.kibanaServer.* settings.

    If a reverse-proxy carries encrypted traffic from end-user clients back to a Kibana server, the proxy port, protocol, and hostname in Reporting settings must be valid for the encryption that the Reporting browser will receive. Encrypted communications will fail if there are mismatches in the host information between the request and the certificate on the server.

    Configuring the xpack.reporting.kibanaServer settings to point to a proxy host requires that the Kibana server has network access to the proxy.

    xpack.reporting.kibanaServer.port

    The port for accessing Kibana, if different from the server.port value.

    xpack.reporting.kibanaServer.protocol

    The protocol for accessing Kibana, typically http or https.

    xpack.reporting.kibanaServer.hostname

    The hostname for accessing Kibana, if different from the server.host value.

    Reporting authenticates requests on the Kibana page only when the hostname matches the setting. Therefore Reporting would fail if the set value redirects to another server. For that reason, "0" is an invalid setting because, in the Reporting browser, it becomes an automatic redirect to "0.0.0.0".

    Background job settings

    Reporting generates reports in the background and jobs are coordinated using documents in Elasticsearch. Depending on how often you generate reports and the overall number of reports, you might need to change the following settings.

    xpack.reporting.queue.indexInterval

    How often the index that stores reporting jobs rolls over to a new index. Valid values are year, month, week, day, and hour. Defaults to week.

    xpack.reporting.queue.pollEnabled

    Set to (default) to enable the Kibana instance to to poll the index for pending jobs and claim them for execution. Setting this to false allows the Kibana instance to only add new jobs to the reporting queue, list jobs, and provide the downloads to completed report through the UI.

    Capture settings

    Reporting works by capturing screenshots from Kibana. The following settings control the capturing process.

    xpack.reporting.capture.timeouts .openUrl

    Specify how long to allow the Reporting browser to wait for the “Loading…​” screen to dismiss and find the initial data for the Kibana page. If the time is exceeded, a page screenshot is captured showing the current state, and the download link shows a warning message. Defaults to 30000 (30 seconds).

    xpack.reporting.capture.timeouts .waitForElements

    Specify how long to allow the Reporting browser to wait for all visualization panels to load on the Kibana page. If the time is exceeded, a page screenshot is captured showing the current state, and the download link shows a warning message. Defaults to 30000 (30 seconds).

    xpack.reporting.capture.timeouts .renderComplete

    Specify how long to allow the Reporting browser to wait for all visualizations to fetch and render the data. If the time is exceeded, a page screenshot is captured showing the current state, and the download link shows a warning message. Defaults to 30000 (30 seconds).

    If any timeouts from xpack.reporting.capture.timeouts.* settings occur when running a report job, Reporting will log the error and try to continue capturing the page with a screenshot. As a result, a download will be available, but there will likely be errors in the visualizations in the report.

    xpack.reporting.capture.maxAttempts

    If capturing a report fails for any reason, Kibana will re-attempt other reporting job, as many times as this setting. Defaults to 3.

    xpack.reporting.capture.loadDelay

    When visualizations are not evented, this is the amount of time before taking a screenshot. All visualizations that ship with Kibana are evented, so this setting should not have much effect. If you are seeing empty images instead of visualizations, try increasing this value. Defaults to 3000 (3 seconds).

    xpack.reporting.capture.browser.type logo cloud

    Specifies the browser to use to capture screenshots. This setting exists for backward compatibility. The only valid option is chromium.

    Chromium settings

    When xpack.reporting.capture.browser.type is set to (default) you can also specify the following settings.

    CSV settings

    xpack.reporting.csv.maxSizeBytes

    The maximum size of a CSV file before being truncated. This setting exists to prevent large exports from causing performance and storage issues. Defaults to 10485760 (10mB).

    xpack.reporting.csv.scroll.size

    Number of documents retrieved from Elasticsearch for each scroll iteration during a CSV export. Defaults to 500.

    xpack.reporting.csv.scroll.duration

    Amount of time allowed before Kibana cleans the scroll context during a CSV export. Defaults to 30s.

    xpack.reporting.csv.checkForFormulas

    Enables a check that warns you when there’s a potential formula involved in the output (=, -, +, and @ chars). See OWASP: https://www.owasp.org/index.php/CSV_Injection Defaults to true.

    xpack.reporting.csv .enablePanelActionDownload

    Enables CSV export from a saved search on a dashboard. This action is available in the dashboard panel menu for the saved search. Note: This setting exists for backwards compatibility, but is unused and hardcoded to true. CSV export from a saved search on a dashboard is enabled when Reporting is enabled.

    Advanced settings

    xpack.reporting.index

    Reporting uses a weekly index in Elasticsearch to store the reporting job and the report content. The index is automatically created if it does not already exist. Configure this to a unique value, beginning with .reporting-, for every Kibana instance that has a unique kibana.index setting. Defaults to .reporting.

    Specifies the roles in addition to superusers that can use reporting. Defaults to [ “reporting_user” ].