No description
Find a file
OJ Kwon af23248627
feat(trace): next/trace to event format converter (#36281)
This PR adds a small utility script for the existing `next/trace` converts emitted output into chromium's trace event format (https://docs.google.com/document/d/1CvAClvFfyA5R-PhYUmn5OOQtYMH4h6I0nSsKchNAySU/preview?mode=html#). Converted output can be loaded in a couple of visualizers that understand trace event format. 

- `chrome://tracing`
- `https://ui.perfetto.dev/`

Technically it is possible to make generated event format to be compatible to chrome devtool's profiler as well, but that is not dealt with initial implementation.

This is very straightforward, naive conversion between generated trace to the specific format instead of trying to augment existing traces: in result, some of the values are dummy (pid, tid, category). Depends on usecases we can potentially expand & correct later if needed.

Below screenshot is perfetto from `bench/nested-deps`.

<img width="1166" alt="Screen Shot 2022-04-19 at 10 35 28 AM" src="https://user-images.githubusercontent.com/1210596/164062522-4d34a8c0-d66a-4c9e-9e15-08e0cd6d41a7.png">

## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `yarn lint`
2022-04-20 08:06:52 +00:00
.github Update CI cache key to allow re-running only failed (#36249) 2022-04-18 19:09:51 +00:00
.vscode Additional bench tracing improvements (#29325) 2021-09-27 12:57:37 +02:00
bench Send build trace to datadog in CI (#35306) 2022-03-31 14:37:59 +02:00
docs Fix introduction.md for next.config.js (#36286) 2022-04-19 20:35:49 +00:00
errors Adds linting rule to avoid assignment to 'module' variable. Fixes #34859 (#35279) 2022-04-15 14:45:53 +02:00
examples docs: add yoga to examples (#36253) 2022-04-19 22:27:14 +00:00
packages Add telemetry for image config formats (avif/webp) (#36289) 2022-04-19 22:47:23 +00:00
scripts feat(trace): next/trace to event format converter (#36281) 2022-04-20 08:06:52 +00:00
test Add telemetry for image config formats (avif/webp) (#36289) 2022-04-19 22:47:23 +00:00
.alexignore Enable Alex documentation linting for docs (#26598) 2021-06-25 11:40:50 -05:00
.alexrc Add instructions to create pages directory and add an index.js file to it (#35971) 2022-04-15 14:40:37 +02:00
.eslintignore Adds web worker support to <Script /> using Partytown (#34244) 2022-03-11 22:26:46 +00:00
.eslintrc.json test: warn on substr() usage (#35499) 2022-03-24 18:35:33 -04:00
.gitattributes the way towards webpack 5 typings (#29105) 2021-09-21 19:17:16 +02:00
.gitignore Lazy-load postcss (#31762) 2021-11-25 18:41:20 +01:00
.npmrc Remove version prefix 2018-10-02 01:35:56 +02:00
.prettierignore fixes to allow lazy compilation for import() (#32441) 2021-12-14 11:33:04 +01:00
.prettierignore_staged Extract next-swc Rust code into its own package (#31635) 2021-11-21 12:59:56 +01:00
.prettierrc.json Prettier trailingComma default value to es5 since 2.0 (#14391) 2020-06-22 13:25:24 +02:00
azure-pipelines.yml Update azure config (#33999) 2022-02-04 13:42:22 -06:00
CODE_OF_CONDUCT.md updated code of conduct to v2.1 (#34208) 2022-02-10 18:11:42 -06:00
contributing.md docs: suggest cloning with depth=1 to avoid huge downloads (#36064) 2022-04-11 14:52:16 -05:00
jest.config.js Don't swallow test failures caused by POSIX signals (#32688) 2021-12-21 12:52:07 -06:00
lerna.json v12.1.6-canary.4 2022-04-19 14:44:21 +02:00
license.md Update license year 2022-01-13 16:02:34 +01:00
lint-staged.config.js Replace CLIEngine with ESLint (#25801) 2021-06-09 13:54:10 +02:00
package.json Add support for tsconfig moduleResolution node | node12 | nodenext (#36189) 2022-04-15 17:09:12 +00:00
plopfile.js Clarify test types during scaffolding (#34638) 2022-02-21 12:09:32 -06:00
readme.md Monorepo (#5341) 2018-10-01 01:02:10 +02:00
release.js Fix labels for release sections 2021-11-21 13:11:54 +01:00
run-tests.js Continue testing react v17 with e2e tests (#35787) 2022-03-31 17:35:00 -05:00
SECURITY.md Add link to security email directly. (#33358) 2022-01-15 21:33:43 -06:00
skip-docs-change.js Update repo scripts to separate folder (#26787) 2021-07-01 13:41:27 +02:00
test-file.txt Add additional file serving tests (#12479) 2020-05-04 11:58:19 -05:00
tsconfig-tsec.json Integrate tsec into the linting process (#33746) 2022-02-24 16:59:18 -08:00
tsconfig.json Update test set-up to leverage playwright when able to (#28634) 2021-09-13 14:36:25 +02:00
tsec-exemptions.json Integrate tsec into the linting process (#33746) 2022-02-24 16:59:18 -08:00
UPGRADING.md Move upgrading guide to /docs (#10727) 2020-02-28 23:46:18 +01:00
vercel.json Silence GH Comments for Preview URLs (#18766) 2020-11-03 21:59:47 +00:00
yarn.lock Add support for tsconfig moduleResolution node | node12 | nodenext (#36189) 2022-04-15 17:09:12 +00:00

Next.js

Getting Started

Visit https://nextjs.org/learn to get started with Next.js.

Documentation

Visit https://nextjs.org/docs to view the full documentation.

Who is using Next.js?

Next.js is used by the world's leading companies. Check out the Next.js Showcase to learn more.

Community

The Next.js community can be found on GitHub Discussions, where you can ask questions, voice ideas, and share your projects.

To chat with other community members you can join the Next.js Discord.

Our Code of Conduct applies to all Next.js community channels.

Contributing

Please see our contributing.md.

Good First Issues

We have a list of good first issues that contain bugs which have a relatively limited scope. This is a great place to get started, gain experience, and get familiar with our contribution process.

Authors