mirror of
https://github.com/elastic/kibana.git
synced 2025-04-25 02:09:32 -04:00
## Summary Closes https://github.com/elastic/kibana/issues/161608 * [X] Depends on https://github.com/elastic/elasticsearch/pull/97765 * [x] Depends on https://github.com/elastic/elasticsearch/pull/107581 * [x] Add create a new report job and check the details of the templated data stream. * [x] Run Discover tests in Flaky Test Runner: https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5999 ## Release Note Reporting internal storage has been changed from using regular indices to a data stream configuration for a more efficient sharding strategy. This change is not expected to have any impact to users. ## Screenshots ### Upgrade test (manual process) Using a report generated before this change, and a report generated after "upgrading":  Even though the two reports are in different types storage, they are still managed by the same policy:  Looking at the details of the policy shows how the different types of storage are used:  ### Log lines Initial startup in clean environment ``` [2024-05-13T13:22:49.138-07:00][INFO ][plugins.reporting.store] Creating ILM policy for reporting data stream: kibana-reporting [2024-05-13T13:22:53.337-07:00][INFO ][plugins.reporting.store] Linking ILM policy to reporting data stream: .kibana-reporting, component template: kibana-reporting@custom ``` Kibana restart with ES running continuously ``` [2024-05-13T13:24:32.733-07:00][DEBUG][plugins.reporting.store] Found ILM policy kibana-reporting; skipping creation. [2024-05-13T13:24:32.733-07:00][INFO ][plugins.reporting.store] Linking ILM policy to reporting data stream: .kibana-reporting, component template: kibana-reporting@custom ``` ### Checklist - [x] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed ~~See https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5302 (internal link)~~
39 lines
1.5 KiB
Text
39 lines
1.5 KiB
Text
To automatically generate reports from a script, make a request to the `POST` URL. The request returns a JSON and contains a `path` property with a
|
|
URL that you use to download the report. Use the `GET` method in the HTTP request to download the report.
|
|
|
|
To queue CSV report generation using the `POST` URL with cURL:
|
|
|
|
[source,curl]
|
|
---------------------------------------------------------
|
|
curl \
|
|
-XPOST \ <1>
|
|
-u elastic \ <2>
|
|
-H 'kbn-xsrf: true' \ <3>
|
|
'http://0.0.0.0:5601/api/reporting/generate/csv?jobParams=...' <4>
|
|
---------------------------------------------------------
|
|
|
|
<1> The required `POST` method.
|
|
<2> The user credentials for a user with permission to access {kib} and {report-features}.
|
|
<3> The required `kbn-xsrf` header for all `POST` requests to {kib}. For more information, refer to <<api-request-headers, API Request Headers>>.
|
|
<4> The POST URL. You can copy and paste the URL for any report.
|
|
|
|
An example response for a successfully queued report:
|
|
|
|
[source,js]
|
|
---------------------------------------------------------
|
|
{
|
|
"path": "/api/reporting/jobs/download/jxzaofkc0ykpf4062305t068", <1>
|
|
"job": {
|
|
"id": "jxzaofkc0ykpf4062305t068",
|
|
"index": ".reporting-2018.11.11",
|
|
"jobtype": "csv",
|
|
"created_by": "elastic",
|
|
"payload": ..., <2>
|
|
"timeout": 120000,
|
|
"max_attempts": 3
|
|
}
|
|
}
|
|
---------------------------------------------------------
|
|
|
|
<1> The relative path on the {kib} host for downloading the report.
|
|
<2> (Not included in the example) Internal representation of the reporting job, as found in the `.reporting-*` storage.
|