kibana/docs/user/reporting/reporting-troubleshooting.asciidoc
Tim Sullivan 3c78092f3a
[Reporting/Docs] Organize troubleshooting page and add CSV content (#182202)
## Summary

Closes elastic/platform-docs-team#309

The troubleshooting page for Kibana Reporting
([here](https://www.elastic.co/guide/en/kibana/current/reporting-troubleshooting.html))
page only covered screenshot-based reports (PNG, PDF). This PR updates
the guide to include advice for CSV reports as well.

---------

Co-authored-by: lcawl <lcawley@elastic.co>
2024-06-24 14:53:57 -07:00

76 lines
3.4 KiB
Text

[[reporting-troubleshooting]]
== Troubleshooting {report-features}
++++
<titleabbrev>Troubleshooting</titleabbrev>
++++
Kibana excels as a data visualization tool. The {report-features} exist to export data as simple reports, however Kibana is not a data export tool.
To export data at a large scale, there are better ways and better architectures for exporting data at scale from Elasticsearch.
If you have trouble creating simple reports, there are some general solutions to common problems you might encounter while using {report-features}.
For tips related to specific types of reports, refer to <<reporting-troubleshooting-csv>> and <<reporting-troubleshooting-pdf>>.
[float]
[[reporting-troubleshooting-error-messages]]
=== Error messages
There are some common solutions for error messages that you might encounter in {report-features}.
[float]
[[reporting-troubleshooting-version-conflict-exception]]
==== Version conflict engine exceptions
If you are running multiple instances of {kib} in a cluster, the instances share the work of running report jobs to evenly distribute the workload.
Each instance searches the reporting index for "pending" jobs that the user has requested.
It is possible for multiple instances to find the same job in these searches.
Only the instance that successfully updated the job status to "processing" will actually run the report job.
The other instances that unsuccessfully tried to make the same update will log something similar to this:
[source,text]
--------------------------------------------------------------------------------
StatusCodeError: [version_conflict_engine_exception] [...]: version conflict, required seqNo [6124], primary term [1]. current document has seqNo [6125] and primary term [1], with { ... }
status: 409,
displayName: 'Conflict',
path: '/.reporting-...',
body: {
error: {
type: 'version_conflict_engine_exception',
reason: '[...]: version conflict, required seqNo [6124], primary term [1]. current document has seqNo [6125] and primary term [1]',
},
},
statusCode: 409
}
--------------------------------------------------------------------------------
These messages alone don't indicate a problem.
They show normal events that happen in a healthy system.
[float]
==== Max attempts reached
There are two primary causes for a "Max attempts reached" error:
* You're creating a PDF of a visualization or dashboard that spans a large amount of data and Kibana is hitting the `xpack.reporting.queue.timeout`
* Kibana is hosted behind a reverse-proxy, and the <<reporting-kibana-server-settings,Kibana server settings>> are not configured correctly
Create a Markdown visualization and then create a PDF report.
If this succeeds, increase the `xpack.reporting.queue.timeout` setting.
If the
PDF report fails with "Max attempts reached," check your <<reporting-kibana-server-settings,Kibana server settings>>.
[float]
[[reporting-troubleshooting-verbose-logs]]
=== Verbose logging
{kib} server logs have a lot of useful information for troubleshooting and understanding how things work.
The full logs from {report-features} are a good place to look when you encounter problems.
In `kibana.yml`:
[source,yaml]
--------------------------------------------------------------------------------
logging.root.level: all
--------------------------------------------------------------------------------
For more information about logging, check out <<logging-root-level,Kibana configuration settings>>.