Skip to content

[ResponseOps][Reporting][9.1 & Serverless] Scheduled Exports Docs #2118

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

Merged
merged 35 commits into from
Jul 17, 2025
Merged
Show file tree
Hide file tree
Changes from 32 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
42adace
First draft
nastasha-solomon Jul 12, 2025
7235704
Merge branch 'main' into issue-1541-scheduled-reports-9.1-serv
nastasha-solomon Jul 12, 2025
238132a
Fix links
nastasha-solomon Jul 12, 2025
0463aa5
Merge branch 'main' into issue-1541-scheduled-reports-9.1-serv
nastasha-solomon Jul 14, 2025
c52ef26
Adds pre-reqs
nastasha-solomon Jul 15, 2025
1eaa7ff
Fix attribute
nastasha-solomon Jul 15, 2025
528c7c5
More links and changes
nastasha-solomon Jul 15, 2025
016460d
Merge branch 'main' into issue-1541-scheduled-reports-9.1-serv
nastasha-solomon Jul 15, 2025
fae4692
typo
nastasha-solomon Jul 15, 2025
045faeb
Merge branch 'issue-1541-scheduled-reports-9.1-serv' of https://githu…
nastasha-solomon Jul 15, 2025
104ed7a
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 15, 2025
bf3ac84
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 15, 2025
8097d1d
Update explore-analyze/report-and-share.md
nastasha-solomon Jul 15, 2025
33cbf30
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 15, 2025
6b44374
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 15, 2025
537ac8f
Merge branch 'main' into issue-1541-scheduled-reports-9.1-serv
nastasha-solomon Jul 15, 2025
c7e576f
Ying's input round 1
nastasha-solomon Jul 15, 2025
9eb7de3
Fixed code block
nastasha-solomon Jul 15, 2025
a9cca7d
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 15, 2025
684b38c
clarifying workpad
nastasha-solomon Jul 15, 2025
4669b58
Tia's suggestions
nastasha-solomon Jul 15, 2025
e6eb734
Adding resource req for reporting
nastasha-solomon Jul 15, 2025
eeba5a4
moved info in reqs
nastasha-solomon Jul 15, 2025
54292fc
First draft of limitations section
nastasha-solomon Jul 15, 2025
9228a1b
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 17, 2025
006df70
RAM reqs
nastasha-solomon Jul 17, 2025
e1e3744
Merge branch 'issue-1541-scheduled-reports-9.1-serv' of https://githu…
nastasha-solomon Jul 17, 2025
1f91711
reqs and limits
nastasha-solomon Jul 17, 2025
3ce5a3f
Merge branch 'main' into issue-1541-scheduled-reports-9.1-serv
nastasha-solomon Jul 17, 2025
cb55242
Merge branch 'main' into issue-1541-scheduled-reports-9.1-serv
nastasha-solomon Jul 17, 2025
6f2bde8
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 17, 2025
f333885
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 17, 2025
840efd7
smol fix
nastasha-solomon Jul 17, 2025
91c3842
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 17, 2025
e1dabde
Update explore-analyze/report-and-share/automating-report-generation.md
nastasha-solomon Jul 17, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 15 additions & 15 deletions explore-analyze/report-and-share.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,33 +82,33 @@ In the following dashboard, the shareable container is highlighted:
:screenshot:
:::

1. Open the saved Discover session, dashboard, visualization, or workpad you want to share.
2. From the toolbar, click **Share**, then select the report option.
1. Open the saved Discover session, dashboard, visualization, or **Canvas** workpad you want to share.
2. Choose a file type for the report.

* If you are creating dashboard PDFs, select **For printing** to create printer-friendly PDFs with multiple A4 portrait pages and two visualizations per page.
* {applies_to}`stack: ga 9.0` From the toolbar, click **Share** > **Export** tab, then choose a file type. Note that when you create a dashboard report that includes a data table or Discover session, the PDF includes only the visible data.
* {applies_to}`stack: ga 9.1` From the toolbar, click the **Export** icon, then choose a file type.

::::{note}
When you create a dashboard report that includes a data table or Discover session, the PDF includes only the visible data.
::::
::::{tip}

* If you are creating workpad PDFs, select **Full page layout** to create PDFs without margins that surround the workpad.
Tips for generating PDF reports:

3. Generate the report by clicking **Export file**, **Generate CSV**, or **Generate PDF**, depending on the object you want to export.
* If you are creating dashboard PDFs, select **For printing** to create printer-friendly PDFs with multiple A4 portrait pages and two visualizations per page.
* {applies_to}`stack: ga 9.0` If you are creating workpad PDFs, select **Full page layout** to create PDFs without margins that surround the workpad.

::::

::::{note}
You can use the **Copy POST URL** option instead to generate the report from outside Kibana or from Watcher.
::::
3. Click the button that generates or exports the report. A message appears, indicating that the report is in the export queue.

4. A message appears, indicating that the report is in the export queue.
::::{note}
To generate the report from outside of {{kib}} or from {{watcher}}, use the POST URL, then submit an HTTP `POST` request using a script or {{watcher}}. In {{stack}} 9.1, you can schedule a recurring task in {{kib}} that generates reports on a repeating basis. Refer to [Automatically generate reports](report-and-share/automating-report-generation.md) to learn more.
::::

You can then download it from that message, or go to the **Stack Management > Reporting** page to view and access all of your reports.
Go to the **Reporting** page to access all of your reports. To find the page, navigate to **Stack Management > Alerts and Insights > Reporting** in the main menu, or use the [global search field](find-and-organize/find-apps-and-objects.md).

::::{note}
In self-managed and Cloud hosted deployments, reports are stored in {{es}} and managed by the `kibana-reporting` {{ilm}} ({{ilm-init}}) policy. By default, the policy stores reports forever. To learn more about {{ilm-init}} policies, refer to the {{es}} [{{ilm-init}} documentation](/manage-data/lifecycle/index-lifecycle-management.md).
::::



### CSV report limitations [csv-limitations]

We recommend using CSV reports to export moderate amounts of data only. The feature enables analysis of data in external tools, but it is not intended for bulk export or to backup Elasticsearch data. Report timeout and incomplete data issues are likely if you are exporting data where:
Expand Down
105 changes: 99 additions & 6 deletions explore-analyze/report-and-share/automating-report-generation.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,33 @@ products:

# Automatically generate reports [automating-report-generation]

To automatically generate PDF and CSV reports, generate a POST URL, then submit the HTTP `POST` request using {{watcher}} or a script.

To automatically generate PDF and CSV reports, generate a POST URL, then submit an HTTP `POST` request using {{watcher}} or a script. In 9.1.0 and Serverless, you can use {{kib}} to generate reports on a recurring schedule and share them with a list of emails that you specify.

## Create a POST URL [create-a-post-url]

Create the POST URL that triggers a report to generate PDF and CSV reports.

### PDF reports

To create the POST URL for PDF reports:

1. Go to **Dashboards**, **Visualize Library**, or **Canvas**.
2. Open the dashboard, visualization, or **Canvas** workpad you want to view as a report.
2. Open the dashboard, visualization, or **Canvas** workpad you want to view as a report. From the toolbar, do one of the following:

* If you are using **Dashboard** or **Visualize Library**, from the toolbar, click **Share > Export**, select the PDF option then click **Copy POST URL**.
* If you are using **Canvas**, from the toolbar, click **Share > PDF Reports**, then click **Advanced options > Copy POST URL**.
* {applies_to}`stack: ga 9.0` If you are using **Dashboard** or **Visualize Library**, click **Share > Export**, select the PDF option then click **Copy POST URL**.
* {applies_to}`stack: ga 9.0` If you are using **Canvas**, click **Share > PDF Reports**, then click **Advanced options > Copy POST URL**.
* {applies_to}`stack: ga 9.1` Click the **Export** icon, then **PDF**. In the export flyout, copy the POST URL.

### CSV reports

To create the POST URL for CSV reports:

1. Go to **Discover**.
2. Open the saved Discover session you want to share.
3. In the toolbar, click **Share > Export > Copy POST URL**.
3. In the toolbar, do one of the following:

* {applies_to}`stack: ga 9.0` Click **Share > Export > Copy POST URL**.
* {applies_to}`stack: ga 9.1` Click the **Export** icon, then **CSV**. In the export flyout, copy the POST URL.


## Use Watcher [use-watcher]
Expand Down Expand Up @@ -159,3 +165,90 @@ If you experience issues with the deprecated report URLs after you upgrade {{kib
:::{important}
In earlier {{kib}} versions, you could use the `&sync` parameter to append to report URLs that held the request open until the document was fully generated. The `&sync` parameter is now unsupported. If you use the `&sync` parameter in Watcher, you must update the parameter.
:::

## Schedule and share reports [schedule-report-generation]

```{applies_to}
stack: preview 9.1
serverless: preview
```

Save time by setting up a recurring task that automatically generates reports and shares them on a schedule that you choose.

### Prerequisites [scheduled-reports-reqs]

* To generate PDF and PNG reports, your {{kib}} instance needs a minimum of 2GB of RAM. There is no minimum requirement for CSV reports.
* To use the scheduled reports feature, your role needs [access to reporting](../../deploy-manage/kibana-reporting-configuration.md#grant-user-access).
* (Optional) To view and manage other users’ reports and schedules, your role needs `All` privileges for the **Manage Scheduled Reports** feature. You can set this by configuring your role's {{kib}} privileges. If your role doesn't have the **Manage Scheduled Reporting** feature privilege, you can only share reports with yourself.
* Sharing reports outside of {{kib}} requires a default preconfigured email connector.

* **{{ech}} or {{serverless-short}} users**: You do not need to set up a default preconfigured email connector. Kibana provides you with a built-in preconfigured email connector that uses the SMTP protocol to send emails. To view it, go to the **Connectors** page and find the Elastic-Cloud-SMTP connector.
* **Self-managed users**: You must set up a default preconfigured email connector to send notifications outside of {{kib}}. To do this:

1. Open your `kibana.yml` file.
2. Add the `xpack.actions.preconfigured` {{kib}} setting. This setting specifies configuration details for the preconfigured connector that you're defining.
2. Under the `xpack.actions.preconfigured` setting, define the email connector. Refer to [Email connectors](kibana://reference/connectors-kibana/pre-configured-connectors.md#preconfigured-email-configuration) to learn about requirements for different email services and providers.

:::{note}
You must define preconfigured email connector details in the `kibana.yml` file. You cannot create a preconfigured email connector from the {{kib}} UI.
:::

3. Add the `notifications.connectors.default.email` {{kib}} setting, and provide the name of your email connector. The `notifications.connectors.default.email` setting specifies the default email connector to use when sending notifications. This is especially useful if you have multiple email connectors and want to set a default one.

The following example shows a modified `kibana.yml` file with a preconfigured email connector that's set as the default connector for email notifications:

```
xpack.actions.preconfigured:
my-email:
name: preconfigured-email-connector-type
actionTypeId: .email
config:
service: other
from: testsender@test.com
host: validhostname
port: 8080
secure: false
hasAuth: true
secrets:
user: testuser
password: passwordkeystorevalue

notifications.connectors.default.email: my-email
```

* (Optional) To control who can receive email notifications from {{kib}}, add the [`xpack.actions.email.domain_allowlist` setting](kibana://reference/configuration-reference/alerting-settings.md) to your `kibana.yml` file. To learn more about configuring this setting, refer to [Notifications domain allowlist](../alerts-cases/alerts/notifications-domain-allowlist.md).

### Create a schedule [create-scheduled-report]

1. Open the saved Discover session, dashboard, or visualization you want to share.
2. Click the **Export** icon, then **Schedule export**.
3. Enter the requested details, and (optional) enable **Print format** to generate the report in a printer-friendly format.
4. Set up a schedule for generating the report.

* **Date**: Choose when to start generating reports.
* **Timezone**: Specify a timezone for the schedule.
* **Repeat**: Choose how often you want to generate reports.

5. (Optional) To share generated reports outside of Kibana, enable **Send by email** and enter a list of email addresses. Recipients will receive emails with the generated reports attached and on the schedule that you specified.

::::{note}
If your role doesn't have the **Manage Scheduled Reporting** feature privilege, you can only send reports to yourself.
::::

6. Click **Schedule exports** to save the schedule.

A message appears, indicating that the schedule is available on the **Reporting** page. From the **Reporting** page, click on the **Schedules** tab to view details for the newly-created schedule.

::::{important}
Note that you cannot edit or delete a schedule after you create it. To stop the schedule from running, you must disable it. Disabling a schedule permanently stops it from running. To restart it, you must create a new schedule.
::::

### Scheduled reports limitations [scheduled-reports-limitations]

The feature enables analysis of data in external tools, but it is not intended for bulk export or to backup Elasticsearch data. Issues with report generation and sharing are likely to happen in the following scenarios:

* The limit for email attachments is 10 MB. {{kib}} might fail to attach reports that are larger than this size.
* Scheduling too many reports at the same time might cause reports to be shared late or at an inconsistent schedule. {{kib}} Task Manager runs reporting tasks one at a time.
* If your cluster is running many tasks in general, reports may be delayed.
* Scheduling reports of Canvas workpads is not supported since Canvas workpads are in maintenance mode.
* Scheduling CSV reports of Lens visualizations is not supported.
Loading