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

[synthetics] Document the new Synthetics Recorder #1953

Merged
merged 8 commits into from
Jul 26, 2022

Conversation

colleenmcginnis
Copy link
Contributor

@colleenmcginnis colleenmcginnis commented Jun 27, 2022

Closes #1907

Overview

This PR adds information on the Synthetics Recorder including:

  • Mentioning the Synthetics Recorder in the existing Write a synthetic test guide as an option for creating journeys.
  • Creating a new page with detailed information on the Synthetics Recorder UI.

To do

For the reviewer

  • Is the product name "Script Recorder" or "Synthetics Recorder"?
  • Can you take a look at this very rough PR and let me know what you think? (There are a few comments in the files with more context.)

@apmmachine
Copy link
Contributor

apmmachine commented Jun 27, 2022

A documentation preview will be available soon:

@mergify
Copy link
Contributor

mergify bot commented Jun 27, 2022

This pull request does not have a backport label. Could you fix it @colleenmcginnis? 🙏
To fixup this pull request, you need to add the backport labels for the needed
branches, such as:

  • backport-/d./d is the label to automatically backport to the /d./d branch. /d is the digit
    NOTE: backport-skip has been added to this pull request.

@mergify mergify bot added the backport-skip Skip notification from the automated backport with mergify label Jun 27, 2022
@colleenmcginnis colleenmcginnis added the backport-8.9 Automated backport with mergify label Jun 27, 2022
@mergify mergify bot removed the backport-skip Skip notification from the automated backport with mergify label Jun 27, 2022
@colleenmcginnis colleenmcginnis self-assigned this Jun 27, 2022
Copy link
Contributor

@kyungeunni kyungeunni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So exciting, Thanks for the great work!! I can see all the important points are covered ✨

docs/en/observability/synthetics-recorder.asciidoc Outdated Show resolved Hide resolved
docs/en/observability/synthetics-recorder.asciidoc Outdated Show resolved Hide resolved
docs/en/observability/synthetics-recorder.asciidoc Outdated Show resolved Hide resolved
Copy link
Contributor

@justinkambic justinkambic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've left a few comments in areas where I felt I could add some detail. Happy to follow up discussion on any of the topics.

docs/en/observability/synthetics-create-test.asciidoc Outdated Show resolved Hide resolved
docs/en/observability/synthetics-create-test.asciidoc Outdated Show resolved Hide resolved
docs/en/observability/synthetics-create-test.asciidoc Outdated Show resolved Hide resolved
docs/en/observability/synthetics-recorder.asciidoc Outdated Show resolved Hide resolved
docs/en/observability/synthetics-recorder.asciidoc Outdated Show resolved Hide resolved
docs/en/observability/synthetics-recorder.asciidoc Outdated Show resolved Hide resolved
@colleenmcginnis
Copy link
Contributor Author

Thanks @kyungeunni @justinkambic! I'm going to dive back into this now. 🏊

@colleenmcginnis colleenmcginnis changed the title [draft] [synthetics] Document the new Synthetics Recorder [synthetics] Document the new Synthetics Recorder Jul 12, 2022
@colleenmcginnis colleenmcginnis marked this pull request as ready for review July 12, 2022 15:06
@colleenmcginnis colleenmcginnis requested a review from a team as a code owner July 12, 2022 15:06
docs/en/observability/synthetics-recorder.asciidoc Outdated Show resolved Hide resolved
* Click **Export** to save a JavaScript file containing all steps.

// suite --> project?
You can also check **Export as a suite** and either copy and paste or **Export**
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change is merged to main branch but not released yet, I'm planning to release another version next week. Would you want me to capture a screenshot with updated wording? (project instead suite)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure! That would be helpful.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here you go. I tried to create the journey as same as yours but it is slightly different.
image

Use the Synthetics Recorder to generate code for one or more steps by interacting with a web page directly.

// Some high-level details on what it does
The recorder launches a special https://www.chromium.org/Home/[Chromium browser] that will listen to each interaction you have with the web page and record them internally.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure about the special wording here, AFAIK it's a normal Chromium browser that is used by Playwright.

Suggested change
The recorder launches a special https://www.chromium.org/Home/[Chromium browser] that will listen to each interaction you have with the web page and record them internally.
The recorder launches a https://www.chromium.org/Home/[Chromium browser] that will listen to each interaction you have with the web page and record them internally using Playwright.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My thought WRT to "special" is that it's instrumented by Playwright, but that this semantic depth might be a bit beyond what our users know or care about the internal workings of the recorder. But yes, the actual Chromium bin is just like any other you'd find someone using.


// Some high-level details on what it does
The recorder launches a special https://www.chromium.org/Home/[Chromium browser] that will listen to each interaction you have with the web page and record them internally.
When you're done interacting with the page, the recorder converts the recorded actions into usable JavaScript code.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very minor point, feel free to ignore it :)
Should we mention that the js file is only executable by Synthetics agent?

Suggested change
When you're done interacting with the page, the recorder converts the recorded actions into usable JavaScript code.
When you're done interacting with the page, the recorder converts the recorded actions into usable JavaScript code that can be executed by Synthetics agent.

Copy link
Contributor

@justinkambic justinkambic Jul 19, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
When you're done interacting with the page, the recorder converts the recorded actions into usable JavaScript code.
When you're done interacting with the page, the recorder converts the recorded actions into JavaScript code for use with Elastic Synthetics.

Maybe even something like this, dropping usable altogether and highlighting that the code is only intended for use with Synthetics?

EDIT - we seem to cover this point in the very next sentence, so it's probably not needed here.

Copy link
Contributor

@justinkambic justinkambic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

From there you can use the code by:

* Copy and pasting code containing all steps into a new or existing <<synthetic-monitor-choose-project, synthetics project>> or an <<synthetics-inline-journey, inline monitor>>.
* Click **Export** to save a JavaScript file containing all steps.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't really say much more about why this would be used, or exists as an option (file can be dragged onto add monitor). Probably ok as we're updating this primary flow, but might be worth adding a note something for it?

Copy link
Contributor

@paulb-elastic paulb-elastic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for getting this written up, LGTM

@colleenmcginnis colleenmcginnis merged commit cdcffaf into elastic:main Jul 26, 2022
@colleenmcginnis colleenmcginnis deleted the issue-1907 branch July 26, 2022 14:16
mergify bot pushed a commit that referenced this pull request Jul 26, 2022
* initial structure, connection to instructional content

add to index

* first full draft

* clean up text

* update docs/en/observability/synthetics-recorder.asciidoc

* address latest feedback

* add heading ids

* add beta note

* add image

(cherry picked from commit cdcffaf)
colleenmcginnis added a commit that referenced this pull request Jul 26, 2022
* initial structure, connection to instructional content

add to index

* first full draft

* clean up text

* update docs/en/observability/synthetics-recorder.asciidoc

* address latest feedback

* add heading ids

* add beta note

* add image

(cherry picked from commit cdcffaf)

Co-authored-by: Colleen McGinnis <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-8.9 Automated backport with mergify
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Synthetics] Document the Script Recorder
5 participants