Skip to content

Commit 2ccae59

Browse files
committed
worker: add worker name to report
1 parent ba8fbf3 commit 2ccae59

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

src/node_report.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -232,11 +232,11 @@ static void WriteNodeReport(Isolate* isolate,
232232
size_t expected_results = 0;
233233

234234
env->ForEachWorker([&](Worker* w) {
235-
expected_results += w->RequestInterrupt([&](Environment* env) {
235+
expected_results += w->RequestInterrupt([&, w = w](Environment* env) {
236236
std::ostringstream os;
237-
238-
GetNodeReport(
239-
env, "Worker thread subreport", trigger, Local<Value>(), os);
237+
std::string name =
238+
"Worker thread subreport [" + std::string(w->name()) + "]";
239+
GetNodeReport(env, name.c_str(), trigger, Local<Value>(), os);
240240

241241
Mutex::ScopedLock lock(workers_mutex);
242242
worker_infos.emplace_back(os.str());

src/node_worker.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ class Worker : public AsyncWrap {
6262
bool is_stopped() const;
6363
const SnapshotData* snapshot_data() const { return snapshot_data_; }
6464
bool is_internal() const { return is_internal_; }
65+
std::string_view name() const { return name_; }
6566

6667
static void New(const v8::FunctionCallbackInfo<v8::Value>& args);
6768
static void CloneParentEnvVars(

test/report/test-report-worker.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ async function basic() {
1313
parentPort.once('message', () => {
1414
/* Wait for message to stop the Worker */
1515
});
16-
`, { eval: true });
16+
`, { eval: true, name: 'hello' });
1717

1818
await once(w, 'online');
1919

@@ -22,7 +22,9 @@ async function basic() {
2222
assert.strictEqual(report.workers.length, 1);
2323
helper.validateContent(report.workers[0]);
2424
assert.strictEqual(report.workers[0].header.threadId, w.threadId);
25-
25+
assert.strictEqual(report.workers[0].header.event,
26+
'Worker thread subreport [hello]',
27+
report.workers[0].header.event);
2628
w.postMessage({});
2729

2830
await once(w, 'exit');

0 commit comments

Comments
 (0)