76c9b2c469
This PR improves the minimal server script by adding a slightly better look require profiler + some misc utility changes. This is eventually gonna be the basis for a `next profile` command. This is what the output look like + its usage. https://app.warp.dev/block/4AtutJ2PpVcM5BFDqlk7zk ``` next-cold-start: 56.024ms next-request: 58.462ms next-wall-time: 128.757ms └─ ../../../packages/next/dist/compiled/next-server/server.runtime.prod.js 39.31ms / 49.27ms ├─ ../../../server/lib/trace/tracer.js 9.92ms / 20.97ms │ ├─ ../constants.js 0.19ms / 0.19ms │ └─ ../../../../../../../node_modules/.pnpm/@opentelemetry+api@1.4.1/node_modules/@opentelemetry/api/build/src/index.js 10.86ms / 18.94ms │ ├─ ../baggage/utils.js 4.35ms / 7.41ms │ │ ├─ ../../api/diag.js 2.98ms / 5.70ms │ │ │ ├─ ../../diag/ComponentLogger.js 2.02ms / 3.66ms │ │ │ │ └─ ../../internal/global-utils.js 1.65ms / 2.71ms │ │ │ │ ├─ ../../platform/index.js 0.90ms / 1.22ms │ │ │ │ │ └─ ../node/index.js 0.32ms / 0.35ms │ │ │ │ │ └─ ../globalThis.js 0.03ms / 0.03ms │ │ │ │ ├─ ../../version.js 0.02ms / 0.02ms │ │ │ │ └─ ../semver.js 0.14ms / 0.14ms │ │ │ └─ ../../diag/internal/logLevelLogger.js 0.70ms / 0.76ms │ │ │ └─ ../../types.js 0.06ms / 0.06ms │ │ ├─ ../internal/baggage-impl.js 0.06ms / 0.06ms │ │ └─ ../internal/symbol.js 0.03ms / 0.03ms │ ├─ ../context/context.js 0.06ms / 0.06ms │ ├─ ../diag/consoleLogger.js 0.04ms / 0.04ms │ ├─ ../metrics/NoopMeter.js 0.12ms / 0.12ms │ ├─ ../metrics/Metric.js 0.03ms / 0.03ms │ ├─ ../propagation/TextMapPropagator.js 0.03ms / 0.03ms │ ├─ ../trace/ProxyTracer.js 1.69ms / 3.11ms │ │ └─ ../NoopTracer.js 1.42ms / 2.82ms │ │ ├─ ../../api/context.js 0.66ms / 0.73ms │ │ │ └─ ../../context/NoopContextManager.js 0.07ms / 0.07ms │ │ ├─ ../context-utils.js 0.70ms / 0.90ms │ │ │ └─ ../NonRecordingSpan.js 0.21ms / 0.55ms │ │ │ └─ ../invalid-span-constants.js 0.34ms / 0.37ms │ │ │ └─ ../trace_flags.js 0.03ms / 0.03ms │ │ └─ ../spancontext-utils.js 0.04ms / 0.04ms │ ├─ ../trace/ProxyTracerProvider.js 0.30ms / 0.33ms │ │ └─ ../NoopTracerProvider.js 0.03ms / 0.03ms │ ├─ ../trace/SamplingResult.js 0.03ms / 0.03ms │ ├─ ../trace/span_kind.js 0.03ms / 0.03ms │ ├─ ../trace/status.js 0.03ms / 0.03ms │ ├─ ../trace/internal/utils.js 0.44ms / 0.64ms │ │ └─ ../tracestate-impl.js 0.20ms / 0.25ms │ │ └─ ../tracestate-validators.js 0.04ms / 0.04ms │ ├─ ../context-api.js 0.06ms / 0.06ms │ ├─ ../diag-api.js 0.04ms / 0.04ms │ ├─ ../metrics-api.js 0.22ms / 0.48ms │ │ └─ ../api/metrics.js 0.26ms / 0.32ms │ │ └─ ../../metrics/NoopMeterProvider.js 0.06ms / 0.06ms │ ├─ ../propagation-api.js 0.30ms / 0.92ms │ │ └─ ../api/propagation.js 0.62ms / 0.74ms │ │ ├─ ../../propagation/NoopTextMapPropagator.js 0.03ms / 0.03ms │ │ └─ ../../baggage/context-helpers.js 0.09ms / 0.09ms │ └─ ../trace-api.js 0.31ms / 0.45ms │ └─ ../api/trace.js 0.15ms / 0.15ms ├─ ../../../shared/lib/runtime-config.external.js 0.05ms / 0.05ms ├─ ../../../../../../bench/basic-app/.next/server/app/page.js 4.07ms / 18.76ms │ ├─ ../../webpack-runtime.js 0.10ms / 0.10ms │ ├─ ../../chunks/388.js 0.06ms / 0.06ms │ ├─ ../../chunks/269.js 1.10ms / 1.10ms │ ├─ ../../../../../../packages/next/dist/compiled/next-server/app-page.runtime.prod.js 13.22ms / 13.63ms │ │ └─ ../../../client/components/request-async-storage.external.js 0.41ms / 0.47ms │ │ └─ ../async-local-storage.js 0.06ms / 0.06ms │ ├─ ../../../../../../packages/next/dist/client/components/static-generation-async-storage.external.js 0.16ms / 0.16ms │ └─ ../../../../../../packages/next/dist/client/components/action-async-storage.external.js 0.05ms / 0.05ms └─ ../../../../../../bench/basic-app/.next/server/app/page_client-reference-manifest.js 0.11ms / 0.11ms ``` |
||
---|---|---|
.. | ||
send-trace-to-jaeger | ||
check-examples.sh | ||
check-is-release.js | ||
check-manifests.js | ||
check-pre-compiled.bat | ||
check-pre-compiled.sh | ||
deploy-examples.sh | ||
generate-release-log.mjs | ||
install-native.mjs | ||
minimal-server.js | ||
next-with-deps.sh | ||
normalize-version-bump.js | ||
publish-native.js | ||
publish-release.js | ||
pull-turbo-cache.js | ||
release-stats.sh | ||
reset-vercel-project.mjs | ||
rm.mjs | ||
run-for-change.js | ||
setup-node.sh | ||
setup-wasm.mjs | ||
start-release.js | ||
sync-react.js | ||
trace-dd.mjs | ||
trace-next-server.js | ||
trace-to-event-format.mjs | ||
trace-to-tree.mjs | ||
update-fonts-data-workflow.js | ||
update-google-fonts.js |