Skip to content
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

[Logs onboarding] Design feedback #159655

Closed
3 tasks done
yngrdyn opened this issue Jun 14, 2023 · 9 comments · Fixed by #159790, #162148 or #161542
Closed
3 tasks done

[Logs onboarding] Design feedback #159655

yngrdyn opened this issue Jun 14, 2023 · 9 comments · Fixed by #159790, #162148 or #161542
Assignees
Labels
8.10 candidate apm:test-plan-done Pull request that was successfully tested during the test plan Feature:Logs Onboarding Logs Onboarding feature Team:obs-ux-logs Observability Logs User Experience Team

Comments

@yngrdyn
Copy link
Contributor

yngrdyn commented Jun 14, 2023

After merging PR158307 and PR159207 we received the following feedback from UX:

Tasks

This feedback have been captured in this internal document.

@yngrdyn yngrdyn added Team:APM All issues that need APM UI Team support apm:logs-onboarding labels Jun 14, 2023
@elasticmachine
Copy link
Contributor

Pinging @elastic/apm-ui (Team:APM)

@yngrdyn yngrdyn self-assigned this Jun 14, 2023
yngrdyn added a commit that referenced this issue Jun 20, 2023
closes #159655.

- [x] Make sure inputs in configure logs step occupy the whole width
- [x] Fix copy button in apiKey callout, currently is cropped
- [x] Add space bellow action buttons (back and continue)

Apart from the tasks above, we are hiding `Give feedback` button from
plugin root page, since the form is dedicated to logs onboarding.



https://github.com/elastic/kibana/assets/1313018/80872e8a-f239-4584-9b15-7ec8cdd32d5d
@isaclfreire isaclfreire reopened this Jul 3, 2023
@isaclfreire
Copy link

isaclfreire commented Jul 3, 2023

Hello!
After the latest round of reviews, I made a list of fixes for the 8.10 release divided by page:

Landing page

  • Update the copy in the page subtitle with “Select your method for collecting data into Observability.”
  • Remove badges (Quickstart, in a few minutes, setup guide, integrations, sample data) from all cards
  • Remove ‘skip for now’ link
  • Change system logs card title with “Stream host system logs” and card description with “The quickest path to onboard log data from your own machine or server.”
  • Add system icon to system logs card
  • Change custom logs card title with “Stream log files” and card description with “Stream any logs into Elastic in a simple way and explore their data.”
  • Add logging icon to stream logs card
  • Remove horizontal line below the cards’ title
  • Add “Elastic agent” badge to system logs card and stream log files
  • Change CTA button text with ‘Get started’ of both system logs and stream log files card.
  • Link ‘Get started’ button from Stream log files directly to the stream log files onboarding flow (remove the select logs step)
  • Remove the cards shadow and add 1px stroke Core/lightShade
  • Add 2px stroke Text/accentText around system logs card + Quickstart badge on top of the card
  • Remove ‘sample data’ card
  • Change APM card title with “Collect application performance data” and description with “Collect traces, logs, and metrics from OpenTelemetry or APM custom agent.”
  • Add secondary CTA button to APM card with the text “Get started” that links to the current flow
  • Add Elastic APM logo and Open Telemetry logo to APM card
  • Change Kubernetes card title with “Collect Kubernetes clusters data” and description with “Collect logs and metrics from Kubernetes clusters with Elastic agent.”
  • Add Kubernetes logo to Kubernetes card that links to the current setup guide
  • Add secondary CTA button to Kubernetes card with the text “Get started”
  • Create custom card for integrations with logs from: Amazon Kinesis, AWS, Apache, Nginx, Google Cloud Platform, Azure and card title “Explore 300+ ways of ingesting data with our integrations”
  • Add secondary CTA button to Integrations card with the text “Start exploring” that links to the Integrations page with ‘logs’ in the search bar
  • Add quick links to Integrations card to Use sample data (link to actual flow) + Upload file (link to actual flow) + AWS Firehose (link to docs: https://www.elastic.co/guide/en/kinesis/current/aws-firehose-setup-guide.html)
  • [ ] Add ‘Give feedback’ button to the subheader on top right
Screenshot 2023-07-03 at 11 04 39

Stream log files config page

  • Change page title into “Stream log files to Elastic”
  • Remove stepper
  • Remove ’Stream log files to Elastic’ title inside the white box
  • Add tooltip to Dataset name with the text “Provide a dataset name to help identify the source of your logs in future uses. Defaults to the name of the log file.”
  • Add Dataset name input placeholder with “Give your logs a name”
  • Change helper text on Dataset name input to “All lowercase, max 100 chars, special characters will be replaced with ‘_’.”
  • Add tooltip to Service name with the text “Provide a service name to allow for distributed services running on multiple hosts to correlate the related instances.”
  • Add Service name input placeholder with “Give your service a name”
  • Add tooltip to Namespace (under advanced settings) with the text “Provide a namespace to customize the grouping of your logs. Defaults to the default namespace."
Screenshot 2023-07-04 at 14 32 46

@isaclfreire
Copy link

isaclfreire commented Jul 3, 2023

The last page missing should be the 'Install shipper'. I am still working on the feedback and will update this issue later.

@isaclfreire
Copy link

isaclfreire commented Jul 4, 2023

Here's the missing part:

Install shipper page

  • Change page title into “Install shipper to collect logs”
  • Remove stepper
  • Remove ’Install shipper to collect data’ title inside the white box
  • Change first paragraph with “To collect the data from your system and stream it to Elastic, you first need to install a shipping tool on the machine generating the logs. In this case, the shipper is an Agent developed by Elastic.”
  • Expand next steps as the previous steps get completed, to avoid the page getting too long
  • Collapse completed steps as the user moves forward, to avoid the page getting too long. The user should be able to click on the completed step to ‘expand’ it again
  • Change text in first step (Install the Elastic agent) with “Select your platform, and run the install command in your terminal to enroll and start the Elastic Agent. Do this for each host. Review host requirements and other installation options before installing.”
  • “Host requirements…” should open a link in a new tab to: https://www.elastic.co/guide/en/fleet/8.7/elastic-agent-installation.html
  • Move up automatic config download switch before the agent download code block
  • Change switch text to “Automatically download the agent’s config” and add tooltip: “Turn on to add a string to the following code block that downloads the agent's standard configuration to your host during installation. Turn off to manually configure the agent in the next step.”
  • When the users turn on the switch, we need to show a callout with the following text: “Automatically downloading the agent config will overwrite any existing agent config on your host.”
  • During the completion of the first step ‘Install the Elastic agent’ provide users with callouts that appear as things happen: first Elastic agent download, then Elastic agent extracted… and so on
  • If the user has the switch on (to automatically download the config), they should also receive the callout confirmation that the config was written to the yml file
  • Change paragraph text of ‘Configure the Elastic agent’ step to “Add the following configuration to the elastic-agent.yml on the host where you installed the Elastic agent.”
  • Change step 3 titles to “Ship logs to Elastic Observability” (default state), “Waiting for Logs to be shipped...” (Loading state) and “Logs are being shipped!” (Success state)
  • Change the style of ‘back’ button to Empty + add arrowLeft icon with primary color
  • [ ] Change ‘Inspect’ button with default style, primary color. The button should become active only when the full installation flow is finished
  • [ ] Open the inspect of the installation in a flyout to avoid interrupting the user flow
Screenshot 2023-07-04 at 14 37 06 Screenshot 2023-07-04 at 14 37 44

Image

Screenshot 2023-07-04 at 14 40 18

@gbamparop
Copy link
Contributor

Thanks for adding these @isaclfreire, I think it's preferable to create new issues instead of opening new ones, unless the initial scope was not addressed.

@isaclfreire
Copy link

Update: I removed the Logs explorer page fixes, since we're still discussing about having an MVP Discover for logs and how would it look like. Might be useful to create a dedicated issue to that to collect comments. Wdyt @gbamparop? I can do it

@gbamparop
Copy link
Contributor

Update: I removed the Logs explorer page fixes, since we're still discussing about having an MVP Discover for logs and how would it look like. Might be useful to create a dedicated issue to that to collect comments. Wdyt @gbamparop? I can do it

That would help, please do thanks!

@isaclfreire
Copy link

Great, I am tracking the discussion in this issue.

yngrdyn added a commit that referenced this issue Jul 14, 2023
Relates to #159655.

### Changes

This PR include the following changes:

- [x] Update the copy in the page subtitle with “Select your method for
collecting data into Observability.”
- [x] Remove badges (Quickstart, in a few minutes, setup guide,
integrations, sample data) from all cards
- [x] Remove ‘skip for now’ link
- [x] Change system logs card title with “Stream host system logs” and
card description with “The quickest path to onboard log data from your
own machine or server.”
- [x] Add system icon to system logs card
- [x] Change custom logs card title with “Stream log files” and card
description with “Stream any logs into Elastic in a simple way and
explore their data.”
- [x] Add logging icon to stream logs card 
- [x] Remove horizontal line below the cards’ title
- [x] Add “Elastic agent” badge to system logs card and stream log files
- [x] Change CTA button text with ‘Get started’ of both system logs and
stream log files card.
- [x] Remove the cards shadow and add 1px stroke Core/lightShade
- [x] Add 2px stroke Text/accentText around system logs card +
Quickstart badge on top of the card
- [x] Remove ‘sample data’ card
- [x] Change APM card title with “Collect application performance data”
and description with “Collect traces, logs, and metrics from
OpenTelemetry or APM custom agent.”
- [x] Add secondary CTA button to APM card with the text “Get started”
that links to the current flow
- [x] Add Elastic APM logo and Open Telemetry logo to APM card
- [x] Change Kubernetes card title with “Collect Kubernetes clusters
data” and description with “Collect logs and metrics from Kubernetes
clusters with Elastic agent.”
- [x] Add Kubernetes logo to Kubernetes card that links to the current
setup guide
- [x] Add secondary CTA button to Kubernetes card with the text “Get
started”
- [x] Create custom card for integrations with logs from: Amazon
Kinesis, AWS, Apache, Nginx, Google Cloud Platform, Azure and card title
“Explore 300+ ways of ingesting data with our integrations”
- [x] Add secondary CTA button to Integrations card with the text “Start
exploring” that links to the Integrations page with ‘logs’ in the search
bar
- [x] Add quick links to Integrations card to Use sample data (link to
actual flow) + Upload file (link to actual flow) + AWS Firehose (link to
docs:
https://www.elastic.co/guide/en/kinesis/current/aws-firehose-setup-guide.html)

### Missing
- [ ] Link ‘Get started’ button from Stream log files directly to the
stream log files onboarding flow (remove the select logs step)

This will be addressed in a follow up Pr since it's depending on
#159500.

### Screenshots

#### Before
<img width="2222" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/d9120656-7357-4bf0-b8c8-6ce1a85e731c">

#### After
<img width="2225" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/83275710-c9eb-45ac-a3b3-42ca4debf9a6">
yngrdyn added a commit that referenced this issue Jul 19, 2023
Relates to #159655.

### Changes

This PR include the following changes:

#### ConfigureLogs step

- [x]  Change page title into “Stream log files to Elastic”
- [x] Remove stepper
- [x] Remove ’Stream log files to Elastic’ title inside the white box
- [x] Add tooltip to Dataset name with the text “Provide a dataset name
to help identify the source of your logs in future uses. Defaults to the
name of the log file.”
- [x] Add Dataset name input placeholder with “Give your logs a name”
- [x] Change helper text on Dataset name input to “All lowercase, max
100 chars, special characters will be replaced with ‘_’.”
- [x] Add tooltip to Service name with the text “Provide a service name
to allow for distributed services running on multiple hosts to correlate
the related instances.”
- [x] Add Service name input placeholder with “Give your service a name”
- [x] Add tooltip to Namespace (under advanced settings) with the text
“Provide a namespace to customize the grouping of your logs. Defaults to
the default namespace."

##### Before
<img width="1691" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/1b047624-1160-40eb-85ee-199d0874c805">

##### After
<img width="1690" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/572d7615-1363-4892-9b78-994f393a3ebe">


#### InstallShipper step

- [x] Change page title into “Install shipper to collect logs”
- [x] Remove stepper
- [x] Remove ’Install shipper to collect data’ title inside the white
box
- [x] Change first paragraph with “To collect the data from your system
and stream it to Elastic, you first need to install a shipping tool on
the machine generating the logs. In this case, the shipper is an Agent
developed by Elastic.”
- [x] Change text in first step (Install the Elastic agent) with “Select
your platform, and run the install command in your terminal to enroll
and start the Elastic Agent. Do this for each host. Review host
requirements and other installation options before installing.”
- [x] “Host requirements…” should open a link in a new tab to:
[https://www.elastic.co/guide/en/fleet/8.7/elastic-agent-installation.html](https://www.elastic.co/guide/en/fleet/8.7/install-standalone-elastic-agent.html)
- [x] Move up automatic config download switch before the agent download
code block
- [x] Change switch text to “Automatically download the agent’s config”
and add tooltip: “Turn on to add a string to the following code block
that downloads the agent's standard configuration to your host during
installation. Turn off to manually configure the agent in the next
step.”
- [x] When the users turn on the switch, we need to show a callout with
the following text: “Automatically downloading the agent config will
overwrite any existing agent config on your host.”
- [x] During the completion of the first step ‘Install the Elastic
agent’ provide users with callouts that appear as things happen: first
Elastic agent download, then Elastic agent extracted… and so on
- [x] If the user has the switch on (to automatically download the
config), they should also receive the callout confirmation that the
config was written to the yml file
- [x] Change paragraph text of ‘Configure the Elastic agent’ step to
“Add the following configuration to the elastic-agent.yml on the host
where you installed the Elastic agent.”
- [x] Change step 3 titles to “Ship logs to Elastic Observability”
(default state), “Waiting for Logs to be shipped...” (Loading state) and
“Logs are being shipped!” (Success state)
- [x] Change the style of ‘back’ button to Empty + add arrowLeft icon
with primary color
- ~~[ ] Change ‘Inspect’ button with default style, primary color. The
button should become active only when the full installation flow is
finished~~
- ~~[ ] Open the inspect of the installation in a flyout to avoid
interrupting the user flow~~

##### Before
<img width="1674" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/9c0539a3-6cde-4029-a6d3-2978f91b40de">

##### After
<img width="1671" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/84775312-fb5b-4646-90de-6268dec69246">

### Video


https://github.com/elastic/kibana/assets/1313018/e8ae7067-604f-48fd-9b3d-7e7c0791df38
Ruhshan pushed a commit to Ruhshan/kibana that referenced this issue Jul 19, 2023
…162148)

Relates to elastic#159655.

### Changes

This PR include the following changes:

#### ConfigureLogs step

- [x]  Change page title into “Stream log files to Elastic”
- [x] Remove stepper
- [x] Remove ’Stream log files to Elastic’ title inside the white box
- [x] Add tooltip to Dataset name with the text “Provide a dataset name
to help identify the source of your logs in future uses. Defaults to the
name of the log file.”
- [x] Add Dataset name input placeholder with “Give your logs a name”
- [x] Change helper text on Dataset name input to “All lowercase, max
100 chars, special characters will be replaced with ‘_’.”
- [x] Add tooltip to Service name with the text “Provide a service name
to allow for distributed services running on multiple hosts to correlate
the related instances.”
- [x] Add Service name input placeholder with “Give your service a name”
- [x] Add tooltip to Namespace (under advanced settings) with the text
“Provide a namespace to customize the grouping of your logs. Defaults to
the default namespace."

##### Before
<img width="1691" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/1b047624-1160-40eb-85ee-199d0874c805">

##### After
<img width="1690" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/572d7615-1363-4892-9b78-994f393a3ebe">


#### InstallShipper step

- [x] Change page title into “Install shipper to collect logs”
- [x] Remove stepper
- [x] Remove ’Install shipper to collect data’ title inside the white
box
- [x] Change first paragraph with “To collect the data from your system
and stream it to Elastic, you first need to install a shipping tool on
the machine generating the logs. In this case, the shipper is an Agent
developed by Elastic.”
- [x] Change text in first step (Install the Elastic agent) with “Select
your platform, and run the install command in your terminal to enroll
and start the Elastic Agent. Do this for each host. Review host
requirements and other installation options before installing.”
- [x] “Host requirements…” should open a link in a new tab to:
[https://www.elastic.co/guide/en/fleet/8.7/elastic-agent-installation.html](https://www.elastic.co/guide/en/fleet/8.7/install-standalone-elastic-agent.html)
- [x] Move up automatic config download switch before the agent download
code block
- [x] Change switch text to “Automatically download the agent’s config”
and add tooltip: “Turn on to add a string to the following code block
that downloads the agent's standard configuration to your host during
installation. Turn off to manually configure the agent in the next
step.”
- [x] When the users turn on the switch, we need to show a callout with
the following text: “Automatically downloading the agent config will
overwrite any existing agent config on your host.”
- [x] During the completion of the first step ‘Install the Elastic
agent’ provide users with callouts that appear as things happen: first
Elastic agent download, then Elastic agent extracted… and so on
- [x] If the user has the switch on (to automatically download the
config), they should also receive the callout confirmation that the
config was written to the yml file
- [x] Change paragraph text of ‘Configure the Elastic agent’ step to
“Add the following configuration to the elastic-agent.yml on the host
where you installed the Elastic agent.”
- [x] Change step 3 titles to “Ship logs to Elastic Observability”
(default state), “Waiting for Logs to be shipped...” (Loading state) and
“Logs are being shipped!” (Success state)
- [x] Change the style of ‘back’ button to Empty + add arrowLeft icon
with primary color
- ~~[ ] Change ‘Inspect’ button with default style, primary color. The
button should become active only when the full installation flow is
finished~~
- ~~[ ] Open the inspect of the installation in a flyout to avoid
interrupting the user flow~~

##### Before
<img width="1674" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/9c0539a3-6cde-4029-a6d3-2978f91b40de">

##### After
<img width="1671" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/84775312-fb5b-4646-90de-6268dec69246">

### Video


https://github.com/elastic/kibana/assets/1313018/e8ae7067-604f-48fd-9b3d-7e7c0791df38
@yngrdyn
Copy link
Contributor Author

yngrdyn commented Jul 25, 2023

The missing point regarding expandable steps was moved to #162483.

@yngrdyn yngrdyn closed this as completed Jul 25, 2023
ThomThomson pushed a commit to ThomThomson/kibana that referenced this issue Aug 1, 2023
…162148)

Relates to elastic#159655.

### Changes

This PR include the following changes:

#### ConfigureLogs step

- [x]  Change page title into “Stream log files to Elastic”
- [x] Remove stepper
- [x] Remove ’Stream log files to Elastic’ title inside the white box
- [x] Add tooltip to Dataset name with the text “Provide a dataset name
to help identify the source of your logs in future uses. Defaults to the
name of the log file.”
- [x] Add Dataset name input placeholder with “Give your logs a name”
- [x] Change helper text on Dataset name input to “All lowercase, max
100 chars, special characters will be replaced with ‘_’.”
- [x] Add tooltip to Service name with the text “Provide a service name
to allow for distributed services running on multiple hosts to correlate
the related instances.”
- [x] Add Service name input placeholder with “Give your service a name”
- [x] Add tooltip to Namespace (under advanced settings) with the text
“Provide a namespace to customize the grouping of your logs. Defaults to
the default namespace."

##### Before
<img width="1691" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/1b047624-1160-40eb-85ee-199d0874c805">

##### After
<img width="1690" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/572d7615-1363-4892-9b78-994f393a3ebe">


#### InstallShipper step

- [x] Change page title into “Install shipper to collect logs”
- [x] Remove stepper
- [x] Remove ’Install shipper to collect data’ title inside the white
box
- [x] Change first paragraph with “To collect the data from your system
and stream it to Elastic, you first need to install a shipping tool on
the machine generating the logs. In this case, the shipper is an Agent
developed by Elastic.”
- [x] Change text in first step (Install the Elastic agent) with “Select
your platform, and run the install command in your terminal to enroll
and start the Elastic Agent. Do this for each host. Review host
requirements and other installation options before installing.”
- [x] “Host requirements…” should open a link in a new tab to:
[https://www.elastic.co/guide/en/fleet/8.7/elastic-agent-installation.html](https://www.elastic.co/guide/en/fleet/8.7/install-standalone-elastic-agent.html)
- [x] Move up automatic config download switch before the agent download
code block
- [x] Change switch text to “Automatically download the agent’s config”
and add tooltip: “Turn on to add a string to the following code block
that downloads the agent's standard configuration to your host during
installation. Turn off to manually configure the agent in the next
step.”
- [x] When the users turn on the switch, we need to show a callout with
the following text: “Automatically downloading the agent config will
overwrite any existing agent config on your host.”
- [x] During the completion of the first step ‘Install the Elastic
agent’ provide users with callouts that appear as things happen: first
Elastic agent download, then Elastic agent extracted… and so on
- [x] If the user has the switch on (to automatically download the
config), they should also receive the callout confirmation that the
config was written to the yml file
- [x] Change paragraph text of ‘Configure the Elastic agent’ step to
“Add the following configuration to the elastic-agent.yml on the host
where you installed the Elastic agent.”
- [x] Change step 3 titles to “Ship logs to Elastic Observability”
(default state), “Waiting for Logs to be shipped...” (Loading state) and
“Logs are being shipped!” (Success state)
- [x] Change the style of ‘back’ button to Empty + add arrowLeft icon
with primary color
- ~~[ ] Change ‘Inspect’ button with default style, primary color. The
button should become active only when the full installation flow is
finished~~
- ~~[ ] Open the inspect of the installation in a flyout to avoid
interrupting the user flow~~

##### Before
<img width="1674" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/9c0539a3-6cde-4029-a6d3-2978f91b40de">

##### After
<img width="1671" alt="image"
src="https://github.com/elastic/kibana/assets/1313018/84775312-fb5b-4646-90de-6268dec69246">

### Video


https://github.com/elastic/kibana/assets/1313018/e8ae7067-604f-48fd-9b3d-7e7c0791df38
@yngrdyn yngrdyn added the apm:test-plan-done Pull request that was successfully tested during the test plan label Sep 6, 2023
@gbamparop gbamparop added the Team:obs-ux-logs Observability Logs User Experience Team label Oct 10, 2023
@gbamparop gbamparop added Feature:Logs Onboarding Logs Onboarding feature and removed apm:logs-onboarding Team:APM All issues that need APM UI Team support labels Oct 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment