Chengzhong Wu
a509753a8e
report: disable js stack when no context is entered
...
There are no guarantees that the JS stack can be generated when no
context is entered.
PR-URL: https://github.com/nodejs/node/pull/48495
Fixes: https://github.com/nodejs/node-v8/issues/250
Refs: https://chromium-review.googlesource.com/c/v8/v8/+/4582948
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
2023-06-21 13:58:15 +00:00
Antoine du Hamel
73da2c426d
test: add trailing commas in test/common ( #45550 )
...
PR-URL: https://github.com/nodejs/node/pull/45550
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Moshe Atlow <moshe@atlow.co.il >
Reviewed-By: Darshan Sen <raisinten@gmail.com >
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com >
2022-11-21 18:38:12 +01:00
theanarkh
070e111c65
report: add more memory info
...
PR-URL: https://github.com/nodejs/node/pull/45254
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
2022-11-02 17:18:49 +00:00
theanarkh
c02141d146
report: add rss and use/kernel cpu usage fields
...
PR-URL: https://github.com/nodejs/node/pull/45043
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
2022-10-24 17:46:29 +00:00
theanarkh
b6a2072b41
report: add more heap infos in process report
...
PR-URL: https://github.com/nodejs/node/pull/43116
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Chengzhong Wu <legendecas@gmail.com >
2022-06-04 07:42:33 +01:00
Rich Trott
5d559f4a74
test: enable no-empty ESLint rule
...
PR-URL: https://github.com/nodejs/node/pull/41831
Refs: https://eslint.org/docs/rules/no-empty
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Tobias Nießen <tniessen@tnie.de >
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
2022-02-05 12:58:32 +00:00
Rich Trott
e2e2bc83c0
test: use Object.hasOwn() where applicable
...
Replace Object.prototpye.hasOwnProperty() with Object.hasOwn() where
applicable.
PR-URL: https://github.com/nodejs/node/pull/41664
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com >
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
Reviewed-By: Darshan Sen <raisinten@gmail.com >
Reviewed-By: Mestery <mestery@protonmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Tierney Cyren <hello@bnb.im >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2022-01-25 07:03:17 +00:00
Michaël Zasso
508890d795
test: use assert.match instead of regexp.test
...
PR-URL: https://github.com/nodejs/node/pull/39928
Reviewed-By: Tobias Nießen <tniessen@tnie.de >
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com >
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
Reviewed-By: Darshan Sen <raisinten@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Zijian Liu <lxxyxzj@gmail.com >
2021-08-31 18:50:16 +02:00
Rich Trott
c506660f32
test: put common lint exceptions into config file
...
For lint exceptions that are universal or near universal for
`test/common`, put the exceptions in a config file rather than disabling
the ESLint rules at the top of each file.
PR-URL: https://github.com/nodejs/node/pull/39358
Reviewed-By: Michaël Zasso <targos@protonmail.com >
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com >
Reviewed-By: Tobias Nießen <tniessen@tnie.de >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2021-07-13 17:49:31 -07:00
legendecas
99a3d55784
report: generates report on threads with no isolates
...
PR-URL: https://github.com/nodejs/node/pull/38994
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: James M Snell <jasnell@gmail.com >
2021-06-14 08:10:54 -07:00
himself65
870f0fc5e8
src: add errorProperties on process.report
...
PR-URL: https://github.com/nodejs/node/pull/28426
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
2020-06-26 10:06:22 -07:00
Sam Roberts
8cbbc70fbc
src,cli: support compact (one-line) JSON reports
...
Multi-line JSON is more human readable, but harder for log aggregators
to consume, they usually require a log message per line, particularly
for JSON. Compact output will be consumable by aggregators such as EFK
(Elastic Search-Fluentd-Kibana), LogDNA, DataDog, etc.
PR-URL: https://github.com/nodejs/node/pull/32254
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
2020-03-17 08:42:41 -07:00
Anna Henningsen
2606e1ed25
report: add support for Workers
...
Include a report for each sub-Worker of the current Node.js instance.
This adds a feature that is necessary for eventually making the report
feature stable, as was discussed during the last collaborator summit.
Refs: https://github.com/openjs-foundation/summit/pull/240
PR-URL: https://github.com/nodejs/node/pull/31386
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
2020-01-21 23:51:38 +01:00
cjihrig
1592d0ab73
report: include network interfaces in report
...
PR-URL: https://github.com/nodejs/node/pull/28911
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com >
Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
2019-08-03 07:25:52 -10:00
Anna Henningsen
98d8ed64ff
test,report: relax CPU match requirements
...
Some CPUs have variable speeds, and so exact matches between what
`os.cpus()` and the report feature yield cannot always be expected:
```
>const results = []
>setInterval(() => results.push(os.cpus().map(({ speed }) => speed)), 1)
[...]
>results
[
[ 1198, 1150, 1195, 1149 ],
[ 1198, 1150, 1195, 1149 ],
[ 1198, 1150, 1195, 1149 ],
[ 1198, 1150, 1195, 1149 ],
[ 2401, 2420, 2429, 2413 ],
[ 2401, 2420, 2429, 2413 ],
[ 2401, 2420, 2429, 2413 ],
[ 2401, 2420, 2429, 2413 ],
[ 2401, 2420, 2429, 2413 ],
[ 2401, 2420, 2429, 2413 ],
[ 2401, 2420, 2429, 2413 ],
[ 2596, 2401, 2699, 2555 ],
[...]
```
Refs: https://github.com/nodejs/node/pull/28829
PR-URL: https://github.com/nodejs/node/pull/28884
Reviewed-By: Gus Caplan <me@gus.host >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com >
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
2019-07-29 10:10:25 -07:00
cjihrig
48e13d2adf
report: loop over uv_cpu_info() results
...
The code currently loops over the results, but only the
first result is accessed.
PR-URL: https://github.com/nodejs/node/pull/28829
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
2019-07-25 21:43:29 -07:00
Christopher Hiller
bff7a46f31
report: modify getReport() to return an Object
...
It's likely that anyone using `process.report.getReport()` will be
processing the return value thereafter (e.g., filtering fields or
redacting secrets). This change eliminates boilerplate by calling
`JSON.parse()` on the return value.
Also modified the `validateContent()` and `validate()` test helpers in
`test/common/report.js` to be somewhat more obvious and helpful. Of
note, a report failing validation will now be easier (though still not
_easy_) to read when prepended to the stack trace.
- Refs: https://github.com/nodejs/diagnostics/issues/315
PR-URL: https://github.com/nodejs/node/pull/28630
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
Reviewed-By: Rich Trott <rtrott@gmail.com >
2019-07-12 14:48:09 -07:00
cjihrig
bfe4c9c2c0
report: add report versioning
...
This commit adds a version to the diagnostic report feature.
PR-URL: https://github.com/nodejs/node/pull/28121
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
2019-06-20 16:16:11 -04:00
Christopher Hiller
7561a38ccd
report: add cpu info to report output
...
The report shows CPU consumption %, but without the number of CPU cores,
a consumer cannot tell if the percent (given across all cores) is
actually problematic. E.g., 100% on one CPU is a problem, but 100% on
four CPUs is not necessarily.
This change adds CPU information (similar to `os.cpus()`) to the report
output. Extra info besides the count is also provided as to avoid future
breaking changes in the eventuality that someone needs it; changing the
datatype of `header.cpus` would be breaking.
PR-URL: https://github.com/nodejs/node/pull/28188
Refs: https://github.com/nodejs/diagnostics/issues/307
Reviewed-By: Sam Roberts <vieuxtech@gmail.com >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2019-06-15 20:53:07 -07:00
ZYSzys
dcc5e51e1c
tools: force common be required before any other modules
...
PR-URL: https://github.com/nodejs/node/pull/27650
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
2019-05-13 19:39:34 +08:00
cjihrig
af35d4044f
report: use uv_gettimeofday for dumpEventTimeStamp
...
dumpEventTimeStamp was not implemented on Windows, and did not
include any error checking. This commit adds Windows support
and error checking.
PR-URL: https://github.com/nodejs/node/pull/27029
Reviewed-By: Refael Ackermann <refack@gmail.com >
2019-04-22 17:10:57 -04:00
cjihrig
d5a5b99eaf
report: add cwd to report
...
The diagnostic report currently contains command line
information, and the environment, which contains the PWD
environment variable. This combination covers the majority
of cases, but it would be useful to have the result of
uv_cwd() as an additional data point. This commit adds that
information.
PR-URL: https://github.com/nodejs/node/pull/27022
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2019-04-02 20:48:59 -04:00
Richard Lau
d268114497
report: use DiagnosticFilename for default filename
...
PR-URL: https://github.com/nodejs/node/pull/26647
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
2019-03-15 20:48:38 -04:00
cjihrig
84ebaaa339
report: support RUSAGE_SELF stats on Windows
...
This commit adds support for the resourceUsage report section
on Windows by using uv_getrusage() instead of getrusage().
PR-URL: https://github.com/nodejs/node/pull/26406
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
2019-03-04 21:12:55 -05:00
cjihrig
31be55203f
report: rename location to trigger
...
trigger more accurately describes the use of the field.
Previously, location was just the name of the C++ function
that called TriggerNodeReport().
PR-URL: https://github.com/nodejs/node/pull/26386
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2019-03-03 19:26:14 -05:00
cjihrig
060af324ae
test: improve validation of report output
...
This commit improves the validation of generated diagnostic
reports.
PR-URL: https://github.com/nodejs/node/pull/26289
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2019-03-02 18:06:48 -05:00
Richard Lau
d0d84b009c
report: separate release metadata
...
Report release metadata separately from `componentVersions`.
Test `componentVersions` and `release` values in the report.
PR-URL: https://github.com/nodejs/node/pull/25826
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: Colin Ihrig <cjihrig@gmail.com >
2019-02-01 14:30:45 -05:00
cjihrig
c64b1aef07
test: refactor test/common/report.js
...
- Don't unnecessarily require('../common').
- Eliminate state maintained in tmppath.
- validate() was being used synchronously, but was actually
asynchronous. Make it synchronous.
- Other misc. drive by cleanup.
PR-URL: https://github.com/nodejs/node/pull/25754
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
2019-01-30 13:16:57 -05:00
LakshmiSwethaG
55e0ad9ae6
test: add node-report tests
...
One test per each API, so that additional tests in future are modular.
test/common/report.js contain common functions that tests leverage.
PR-URL: https://github.com/nodejs/node/pull/22712
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Michael Dawson <Michael_Dawson@ca.ibm.com >
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com >
2019-01-18 10:36:39 +05:30