@datadog/pprof 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/binding.gyp +130 -34
  2. package/bindings/binding.cc +13 -0
  3. package/bindings/code-event-record.cc +115 -0
  4. package/bindings/code-event-record.hh +67 -0
  5. package/bindings/code-map.cc +112 -0
  6. package/bindings/code-map.hh +47 -0
  7. package/bindings/cpu-time.cc +89 -0
  8. package/bindings/cpu-time.hh +35 -0
  9. package/bindings/location.cc +117 -0
  10. package/bindings/location.hh +43 -0
  11. package/bindings/per-isolate-data.cc +42 -0
  12. package/bindings/per-isolate-data.hh +26 -0
  13. package/bindings/profilers/cpu.cc +285 -0
  14. package/bindings/profilers/cpu.hh +78 -0
  15. package/bindings/profilers/heap.cc +112 -0
  16. package/bindings/profilers/heap.hh +40 -0
  17. package/bindings/profilers/wall.cc +306 -0
  18. package/bindings/profilers/wall.hh +28 -0
  19. package/bindings/sample.cc +160 -0
  20. package/bindings/sample.hh +48 -0
  21. package/bindings/test/binding.cc +59 -0
  22. package/bindings/test/code-event-record.test.cc +81 -0
  23. package/bindings/test/code-event-record.test.hh +5 -0
  24. package/bindings/test/code-map.test.cc +77 -0
  25. package/bindings/test/code-map.test.hh +5 -0
  26. package/bindings/test/cpu-time.test.cc +30 -0
  27. package/bindings/test/cpu-time.test.hh +5 -0
  28. package/bindings/test/location.test.cc +39 -0
  29. package/bindings/test/location.test.hh +5 -0
  30. package/bindings/test/profilers/cpu.test.cc +88 -0
  31. package/bindings/test/profilers/cpu.test.hh +5 -0
  32. package/bindings/test/sample.test.cc +128 -0
  33. package/bindings/test/sample.test.hh +5 -0
  34. package/bindings/test/tap.h +830 -0
  35. package/bindings/wrap.hh +20 -0
  36. package/out/src/cpu-profiler-bindings.d.ts +1 -0
  37. package/out/src/cpu-profiler-bindings.js +23 -0
  38. package/out/src/cpu-profiler-bindings.js.map +1 -0
  39. package/out/src/cpu-profiler.d.ts +19 -0
  40. package/out/src/cpu-profiler.js +94 -0
  41. package/out/src/cpu-profiler.js.map +1 -0
  42. package/out/src/index.d.ts +2 -0
  43. package/out/src/index.js +3 -1
  44. package/out/src/index.js.map +1 -1
  45. package/out/src/profile-encoder.js +3 -14
  46. package/out/src/profile-encoder.js.map +1 -1
  47. package/out/src/profile-serializer.d.ts +9 -1
  48. package/out/src/profile-serializer.js +73 -1
  49. package/out/src/profile-serializer.js.map +1 -1
  50. package/out/src/sourcemapper/sourcemapper.js +71 -88
  51. package/out/src/sourcemapper/sourcemapper.js.map +1 -1
  52. package/out/src/time-profiler.js +4 -15
  53. package/out/src/time-profiler.js.map +1 -1
  54. package/out/src/v8-types.d.ts +38 -0
  55. package/out/third_party/cloud-debug-nodejs/src/agent/io/scanner.js +6 -17
  56. package/out/third_party/cloud-debug-nodejs/src/agent/io/scanner.js.map +1 -1
  57. package/package-lock.json +5627 -0
  58. package/package.json +12 -14
  59. package/prebuilds/darwin-arm64/node-102.node +0 -0
  60. package/prebuilds/darwin-arm64/node-108.node +0 -0
  61. package/prebuilds/darwin-arm64/node-72.node +0 -0
  62. package/prebuilds/darwin-arm64/node-79.node +0 -0
  63. package/prebuilds/darwin-arm64/node-83.node +0 -0
  64. package/prebuilds/darwin-arm64/node-88.node +0 -0
  65. package/prebuilds/darwin-arm64/node-93.node +0 -0
  66. package/prebuilds/darwin-ia32/node-102.node +0 -0
  67. package/prebuilds/darwin-ia32/node-108.node +0 -0
  68. package/prebuilds/darwin-ia32/node-72.node +0 -0
  69. package/prebuilds/darwin-ia32/node-79.node +0 -0
  70. package/prebuilds/darwin-ia32/node-83.node +0 -0
  71. package/prebuilds/darwin-ia32/node-88.node +0 -0
  72. package/prebuilds/darwin-ia32/node-93.node +0 -0
  73. package/prebuilds/darwin-x64/node-102.node +0 -0
  74. package/prebuilds/darwin-x64/node-108.node +0 -0
  75. package/prebuilds/darwin-x64/node-72.node +0 -0
  76. package/prebuilds/darwin-x64/node-79.node +0 -0
  77. package/prebuilds/darwin-x64/node-83.node +0 -0
  78. package/prebuilds/darwin-x64/node-88.node +0 -0
  79. package/prebuilds/darwin-x64/node-93.node +0 -0
  80. package/prebuilds/linux-ia32/node-72.node +0 -0
  81. package/prebuilds/linux-ia32/node-79.node +0 -0
  82. package/prebuilds/linux-x64/node-102.node +0 -0
  83. package/prebuilds/linux-x64/node-108.node +0 -0
  84. package/prebuilds/linux-x64/node-72.node +0 -0
  85. package/prebuilds/linux-x64/node-79.node +0 -0
  86. package/prebuilds/linux-x64/node-83.node +0 -0
  87. package/prebuilds/linux-x64/node-88.node +0 -0
  88. package/prebuilds/linux-x64/node-93.node +0 -0
  89. package/prebuilds/win32-ia32/node-102.node +0 -0
  90. package/prebuilds/win32-ia32/node-72.node +0 -0
  91. package/prebuilds/win32-ia32/node-79.node +0 -0
  92. package/prebuilds/win32-ia32/node-83.node +0 -0
  93. package/prebuilds/win32-ia32/node-88.node +0 -0
  94. package/prebuilds/win32-ia32/node-93.node +0 -0
  95. package/prebuilds/win32-x64/node-102.node +0 -0
  96. package/prebuilds/win32-x64/node-108.node +0 -0
  97. package/prebuilds/win32-x64/node-72.node +0 -0
  98. package/prebuilds/win32-x64/node-79.node +0 -0
  99. package/prebuilds/win32-x64/node-83.node +0 -0
  100. package/prebuilds/win32-x64/node-88.node +0 -0
  101. package/prebuilds/win32-x64/node-93.node +0 -0
  102. package/scripts/require-package-json.js +11 -11
  103. package/scripts/should_rebuild.js +3 -3
  104. package/bindings/profiler.cc +0 -406
  105. package/scripts/preinstall.js +0 -36
@@ -14,15 +14,6 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
17
  Object.defineProperty(exports, "__esModule", { value: true });
27
18
  exports.start = exports.profile = void 0;
28
19
  const delay_1 = require("delay");
@@ -30,12 +21,10 @@ const profile_serializer_1 = require("./profile-serializer");
30
21
  const time_profiler_bindings_1 = require("./time-profiler-bindings");
31
22
  const DEFAULT_INTERVAL_MICROS = 1000;
32
23
  const majorVersion = process.version.slice(1).split('.').map(Number)[0];
33
- function profile(options) {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- const stop = start(options.intervalMicros || DEFAULT_INTERVAL_MICROS, options.name, options.sourceMapper, options.lineNumbers);
36
- yield delay_1.default(options.durationMillis);
37
- return stop();
38
- });
24
+ async function profile(options) {
25
+ const stop = start(options.intervalMicros || DEFAULT_INTERVAL_MICROS, options.name, options.sourceMapper, options.lineNumbers);
26
+ await delay_1.default(options.durationMillis);
27
+ return stop();
39
28
  }
40
29
  exports.profile = profile;
41
30
  function ensureRunName(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"time-profiler.js","sourceRoot":"","sources":["../../ts/src/time-profiler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;AAEH,iCAA0B;AAE1B,6DAA0D;AAE1D,qEAAsD;AAEtD,MAAM,uBAAuB,GAAiB,IAAI,CAAC;AAEnD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAsBxE,SAAsB,OAAO,CAAC,OAA4B;;QACxD,MAAM,IAAI,GAAG,KAAK,CAChB,OAAO,CAAC,cAAc,IAAI,uBAAuB,EACjD,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,WAAW,CACpB,CAAC;QACF,MAAM,eAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACpC,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;CAAA;AATD,0BASC;AAED,SAAS,aAAa,CAAC,IAAa;IAClC,OAAO,IAAI,IAAI,SAAS,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;AACxD,CAAC;AAED,0DAA0D;AAC1D,SAAgB,KAAK,CACnB,iBAA+B,uBAAuB,EACtD,IAAa,EACb,YAA2B,EAC3B,WAAW,GAAG,IAAI;IAElB,MAAM,QAAQ,GAAG,IAAI,qCAAY,CAAC,cAAc,CAAC,CAAC;IAClD,IAAI,OAAO,GAAG,KAAK,EAAE,CAAC;IACtB,OAAO,YAAY,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAE1C,SAAS,KAAK;QACZ,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACpC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,0EAA0E;IAC1E,uEAAuE;IACvE,wCAAwC;IACxC,SAAS,OAAO,CAAC,OAAO,GAAG,KAAK;QAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACnD,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnB,IAAI,OAAO,EAAE;YACX,OAAO,GAAG,KAAK,EAAE,CAAC;SACnB;QACD,OAAO,yCAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,6EAA6E;IAC7E,SAAS,IAAI,CAAC,OAAO,GAAG,KAAK;QAC3B,IAAI,WAAW,CAAC;QAChB,IAAI,OAAO,EAAE;YACX,WAAW,GAAG,KAAK,EAAE,CAAC;SACvB;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACnD,IAAI,WAAW,EAAE;YACf,OAAO,GAAG,WAAW,CAAC;SACvB;QACD,IAAI,CAAC,OAAO;YAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QACjC,OAAO,yCAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AA3CD,sBA2CC"}
1
+ {"version":3,"file":"time-profiler.js","sourceRoot":"","sources":["../../ts/src/time-profiler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,iCAA0B;AAE1B,6DAA0D;AAE1D,qEAAsD;AAEtD,MAAM,uBAAuB,GAAiB,IAAI,CAAC;AAEnD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAsBjE,KAAK,UAAU,OAAO,CAAC,OAA4B;IACxD,MAAM,IAAI,GAAG,KAAK,CAChB,OAAO,CAAC,cAAc,IAAI,uBAAuB,EACjD,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,WAAW,CACpB,CAAC;IACF,MAAM,eAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACpC,OAAO,IAAI,EAAE,CAAC;AAChB,CAAC;AATD,0BASC;AAED,SAAS,aAAa,CAAC,IAAa;IAClC,OAAO,IAAI,IAAI,SAAS,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;AACxD,CAAC;AAED,0DAA0D;AAC1D,SAAgB,KAAK,CACnB,iBAA+B,uBAAuB,EACtD,IAAa,EACb,YAA2B,EAC3B,WAAW,GAAG,IAAI;IAElB,MAAM,QAAQ,GAAG,IAAI,qCAAY,CAAC,cAAc,CAAC,CAAC;IAClD,IAAI,OAAO,GAAG,KAAK,EAAE,CAAC;IACtB,OAAO,YAAY,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAE1C,SAAS,KAAK;QACZ,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACpC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,0EAA0E;IAC1E,uEAAuE;IACvE,wCAAwC;IACxC,SAAS,OAAO,CAAC,OAAO,GAAG,KAAK;QAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACnD,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnB,IAAI,OAAO,EAAE;YACX,OAAO,GAAG,KAAK,EAAE,CAAC;SACnB;QACD,OAAO,yCAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,6EAA6E;IAC7E,SAAS,IAAI,CAAC,OAAO,GAAG,KAAK;QAC3B,IAAI,WAAW,CAAC;QAChB,IAAI,OAAO,EAAE;YACX,WAAW,GAAG,KAAK,EAAE,CAAC;SACvB;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACnD,IAAI,WAAW,EAAE;YACf,OAAO,GAAG,WAAW,CAAC;SACvB;QACD,IAAI,CAAC,OAAO;YAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QACjC,OAAO,yCAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AA3CD,sBA2CC"}
@@ -38,3 +38,41 @@ export interface Allocation {
38
38
  sizeBytes: number;
39
39
  count: number;
40
40
  }
41
+ export interface InitialCpuProfile {
42
+ /** Time in nanoseconds at which profile was stopped. */
43
+ endTime: number;
44
+ samples: CpuProfileSample[];
45
+ /** Time in nanoseconds at which profile was started. */
46
+ startTime: number;
47
+ }
48
+ export interface CpuProfile {
49
+ /** Time in nanoseconds at which profile was stopped. */
50
+ endTime: number;
51
+ topDownRoot: CpuProfileNode;
52
+ /** Time in nanoseconds at which profile was started. */
53
+ startTime: number;
54
+ }
55
+ export interface LabelSet {
56
+ [key: string]: string | number;
57
+ }
58
+ export interface CpuProfileNode extends ProfileNode {
59
+ hitCount: number;
60
+ cpuTime: number;
61
+ labelSets: LabelSet[];
62
+ }
63
+ export interface CpuProfileSample {
64
+ labels: LabelSet;
65
+ locations: CodeEvent[];
66
+ cpuTime: number;
67
+ }
68
+ export interface CodeEvent {
69
+ address: number;
70
+ previousAddress?: number;
71
+ size: number;
72
+ comment?: string;
73
+ functionName?: string;
74
+ scriptName?: string;
75
+ scriptId: number;
76
+ line: number;
77
+ column: number;
78
+ }
@@ -14,15 +14,6 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
17
  Object.defineProperty(exports, "__esModule", { value: true });
27
18
  exports.scan = void 0;
28
19
  const crypto = require("crypto");
@@ -84,11 +75,9 @@ class ScanResultsImpl {
84
75
  });
85
76
  }
86
77
  }
87
- function scan(shouldHash, baseDir, regex) {
88
- return __awaiter(this, void 0, void 0, function* () {
89
- const fileList = yield findFiles(baseDir, regex);
90
- return computeStats(fileList, shouldHash);
91
- });
78
+ async function scan(shouldHash, baseDir, regex) {
79
+ const fileList = await findFiles(baseDir, regex);
80
+ return computeStats(fileList, shouldHash);
92
81
  }
93
82
  exports.scan = scan;
94
83
  /**
@@ -104,7 +93,7 @@ exports.scan = scan;
104
93
  // call signature
105
94
  function computeStats(fileList, shouldHash) {
106
95
  // eslint-disable-next-line no-async-promise-executor
107
- return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
96
+ return new Promise(async (resolve) => {
108
97
  // return a valid, if fake, result when there are no js files to hash.
109
98
  if (fileList.length === 0) {
110
99
  resolve(new ScanResultsImpl({}, new Map(), 'EMPTY-no-js-files'));
@@ -116,7 +105,7 @@ function computeStats(fileList, shouldHash) {
116
105
  const errors = new Map();
117
106
  for (const filename of fileList) {
118
107
  try {
119
- const fileStats = yield statsForFile(filename, shouldHash);
108
+ const fileStats = await statsForFile(filename, shouldHash);
120
109
  if (shouldHash) {
121
110
  hashes.push(fileStats.hash);
122
111
  }
@@ -135,7 +124,7 @@ function computeStats(fileList, shouldHash) {
135
124
  hash = 'SHA1-' + sha1;
136
125
  }
137
126
  resolve(new ScanResultsImpl(statistics, errors, hash));
138
- }));
127
+ });
139
128
  }
140
129
  /**
141
130
  * Given a base-directory, this function scans the subtree and finds all the js
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../../../../../ts/third_party/cloud-debug-nodejs/src/agent/io/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../../../../../ts/third_party/cloud-debug-nodejs/src/agent/io/scanner.ts"],"names":[],"mappings":"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"}