Reporting settings in Kibana
editReporting settings in Kibana
editYou can configure xpack.reporting
settings in your kibana.yml
to:
General reporting settings
editSet to |
|
Set to an alphanumeric, at least 32 characters long text string. By default, Kibana will generate a random key when it starts, which will cause pending reports to fail after restart. Configure this setting to preserve the same key across multiple restarts and multiple instances of Kibana. |
Kibana server settings
editReporting 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.
|
The port for accessing Kibana, if different from the |
|
The protocol for accessing Kibana, typically |
The hostname for accessing Kibana, if different from the |
Reporting authenticates requests on the Kibana page only when the hostname matches the
xpack.reporting.kibanaServer.hostname
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
editReporting 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.
|
How often the index that stores reporting jobs rolls over to a new index.
Valid values are |
Set to |
Running multiple instances of Kibana in a cluster for load balancing of
reporting requires identical values for xpack.reporting.encryptionKey
and, if
security is enabled, xpack.security.encryptionKey
.
|
Specifies the number of milliseconds that the reporting poller waits between polling the
index for any pending Reporting jobs. Defaults to |
How long each worker has to produce a report. If your machine is slow or under
heavy load, you might need to increase this timeout. Specified in milliseconds.
If a Reporting job execution time goes over this time limit, the job will be
marked as a failure and there will not be a download available.
Defaults to |
Capture settings
editReporting works by capturing screenshots from Kibana. The following settings control the capturing process.
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 |
|
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 |
|
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
|
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.
If capturing a report fails for any reason, Kibana will re-attempt other reporting
job, as many times as this setting. Defaults to |
|
|
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 |
Specifies the browser to use to capture screenshots. This setting exists for
backward compatibility. The only valid option is |
Chromium settings
editWhen xpack.reporting.capture.browser.type
is set to chromium
(default) you can also specify the following settings.
|
It is recommended that you research the feasibility of enabling unprivileged user namespaces. See Chromium Sandbox for additional information. Defaults to false for all operating systems except Debian, Red Hat Linux, and CentOS which use true. |
|
Enables the proxy for Chromium to use. When set to |
|
The uri for the proxy server. Providing the username and password for the proxy server via the uri is not supported. |
|
An array of hosts that should not go through the proxy server and should use a direct connection instead. Examples of valid entries are "elastic.co", "*.elastic.co", ".elastic.co", ".elastic.co:5601". |
CSV settings
editThe maximum size of a CSV file before being truncated. This setting exists to prevent
large exports from causing performance and storage issues.
Defaults to |
Setting xpack.reporting.csv.maxSizeBytes
much larger than the default 10 MB limit has the potential to negatively affect the
performance of Kibana and your Elasticsearch cluster. There is no enforced maximum for this setting, but a reasonable maximum value depends
on multiple factors:
-
The
http.max_content_length
setting in Elasticsearch. - Network proxies, which are often configured by default to block large requests with a 413 error.
- The amount of memory available to the Kibana server, which limits the size of CSV data that must be held temporarily.
For information about Kibana memory limits, see using Kibana in a production environment.
|
Number of documents retrieved from Elasticsearch for each scroll iteration during a CSV
export.
Defaults to |
|
Amount of time allowed before Kibana cleans the scroll context during a CSV export.
Defaults to |
|
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 |
|
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 |
Advanced settings
edit
|
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 |
|
Capturing a screenshot from a Kibana page involves sending out requests for all the linked web assets. For example, a Markdown visualization can show an image from a remote server. You can configure what type of requests to allow or filter by setting a network policy for Reporting. |
|
Specifies the roles in addition to superusers that can use reporting.
Defaults to |
Each user has access to only their own reports.