@datadog/pprof 1.1.0 → 2.0.0-pre-9983949

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 (85) hide show
  1. package/out/src/cpu-profiler.d.ts +1 -1
  2. package/out/src/cpu-profiler.js +10 -5
  3. package/out/src/cpu-profiler.js.map +1 -1
  4. package/out/src/heap-profiler.d.ts +2 -2
  5. package/out/src/profile-encoder.d.ts +3 -3
  6. package/out/src/profile-encoder.js +5 -2
  7. package/out/src/profile-encoder.js.map +1 -1
  8. package/out/src/profile-serializer.d.ts +4 -4
  9. package/out/src/profile-serializer.js +66 -47
  10. package/out/src/profile-serializer.js.map +1 -1
  11. package/out/src/sourcemapper/sourcemapper.js +38 -3
  12. package/out/src/sourcemapper/sourcemapper.js.map +1 -1
  13. package/out/src/time-profiler.d.ts +2 -2
  14. package/out/src/v8-types.d.ts +5 -1
  15. package/package.json +5 -4
  16. package/prebuilds/darwin-arm64/node-102.node +0 -0
  17. package/prebuilds/darwin-arm64/node-108.node +0 -0
  18. package/prebuilds/darwin-arm64/node-111.node +0 -0
  19. package/prebuilds/darwin-arm64/node-72.node +0 -0
  20. package/prebuilds/darwin-arm64/node-79.node +0 -0
  21. package/prebuilds/darwin-arm64/node-83.node +0 -0
  22. package/prebuilds/darwin-arm64/node-88.node +0 -0
  23. package/prebuilds/darwin-arm64/node-93.node +0 -0
  24. package/prebuilds/darwin-x64/node-102.node +0 -0
  25. package/prebuilds/darwin-x64/node-108.node +0 -0
  26. package/prebuilds/darwin-x64/node-111.node +0 -0
  27. package/prebuilds/darwin-x64/node-72.node +0 -0
  28. package/prebuilds/darwin-x64/node-79.node +0 -0
  29. package/prebuilds/darwin-x64/node-83.node +0 -0
  30. package/prebuilds/darwin-x64/node-88.node +0 -0
  31. package/prebuilds/darwin-x64/node-93.node +0 -0
  32. package/prebuilds/linux-arm/node-102.node +0 -0
  33. package/prebuilds/linux-arm/node-108.node +0 -0
  34. package/prebuilds/linux-arm/node-111.node +0 -0
  35. package/prebuilds/linux-arm/node-72.node +0 -0
  36. package/prebuilds/linux-arm/node-79.node +0 -0
  37. package/prebuilds/linux-arm/node-83.node +0 -0
  38. package/prebuilds/linux-arm/node-88.node +0 -0
  39. package/prebuilds/linux-arm/node-93.node +0 -0
  40. package/prebuilds/linux-arm64/node-102.node +0 -0
  41. package/prebuilds/linux-arm64/node-108.node +0 -0
  42. package/prebuilds/linux-arm64/node-111.node +0 -0
  43. package/prebuilds/linux-arm64/node-72.node +0 -0
  44. package/prebuilds/linux-arm64/node-79.node +0 -0
  45. package/prebuilds/linux-arm64/node-83.node +0 -0
  46. package/prebuilds/linux-arm64/node-88.node +0 -0
  47. package/prebuilds/linux-arm64/node-93.node +0 -0
  48. package/prebuilds/linux-ia32/node-72.node +0 -0
  49. package/prebuilds/linux-ia32/node-79.node +0 -0
  50. package/prebuilds/linux-x64/node-102.node +0 -0
  51. package/prebuilds/linux-x64/node-108.node +0 -0
  52. package/prebuilds/linux-x64/node-111.node +0 -0
  53. package/prebuilds/linux-x64/node-72.node +0 -0
  54. package/prebuilds/linux-x64/node-79.node +0 -0
  55. package/prebuilds/linux-x64/node-83.node +0 -0
  56. package/prebuilds/linux-x64/node-88.node +0 -0
  57. package/prebuilds/linux-x64/node-93.node +0 -0
  58. package/prebuilds/linuxmusl-x64/node-102.node +0 -0
  59. package/prebuilds/linuxmusl-x64/node-108.node +0 -0
  60. package/prebuilds/linuxmusl-x64/node-111.node +0 -0
  61. package/prebuilds/linuxmusl-x64/node-72.node +0 -0
  62. package/prebuilds/linuxmusl-x64/node-79.node +0 -0
  63. package/prebuilds/linuxmusl-x64/node-83.node +0 -0
  64. package/prebuilds/linuxmusl-x64/node-88.node +0 -0
  65. package/prebuilds/linuxmusl-x64/node-93.node +0 -0
  66. package/prebuilds/win32-ia32/node-102.node +0 -0
  67. package/prebuilds/win32-ia32/node-72.node +0 -0
  68. package/prebuilds/win32-ia32/node-79.node +0 -0
  69. package/prebuilds/win32-ia32/node-83.node +0 -0
  70. package/prebuilds/win32-ia32/node-88.node +0 -0
  71. package/prebuilds/win32-ia32/node-93.node +0 -0
  72. package/prebuilds/win32-x64/node-102.node +0 -0
  73. package/prebuilds/win32-x64/node-108.node +0 -0
  74. package/prebuilds/win32-x64/node-111.node +0 -0
  75. package/prebuilds/win32-x64/node-72.node +0 -0
  76. package/prebuilds/win32-x64/node-79.node +0 -0
  77. package/prebuilds/win32-x64/node-83.node +0 -0
  78. package/prebuilds/win32-x64/node-88.node +0 -0
  79. package/prebuilds/win32-x64/node-93.node +0 -0
  80. package/proto/README.md +3 -0
  81. package/proto/profile.d.ts +1001 -0
  82. package/proto/profile.js +3161 -0
  83. package/out/third_party/cloud-debug-nodejs/src/agent/io/scanner.d.ts +0 -29
  84. package/out/third_party/cloud-debug-nodejs/src/agent/io/scanner.js +0 -214
  85. package/out/third_party/cloud-debug-nodejs/src/agent/io/scanner.js.map +0 -1
@@ -15,5 +15,5 @@
15
15
  */
16
16
  import { CpuProfiler as NativeCpuProfiler } from './cpu-profiler-bindings';
17
17
  export default class CpuProfiler extends NativeCpuProfiler {
18
- profile(): import("pprof-format").Profile | undefined;
18
+ profile(): import("../../proto/profile").perftools.profiles.IProfile | undefined;
19
19
  }
@@ -79,14 +79,19 @@ class CpuProfiler extends cpu_profiler_bindings_1.CpuProfiler {
79
79
  targetNode.children.push(node);
80
80
  targetNode = node;
81
81
  }
82
- targetNode.cpuTime += sample.cpuTime;
83
- targetNode.hitCount++;
84
- if (sample.labels) {
85
- targetNode.labelSets.push(sample.labels);
82
+ if (sample.labels && Object.keys(sample.labels).length > 0) {
83
+ targetNode.labelSets.push({
84
+ labels: sample.labels,
85
+ cpuTime: sample.cpuTime,
86
+ });
87
+ }
88
+ else {
89
+ targetNode.cpuTime += sample.cpuTime;
90
+ targetNode.hitCount++;
86
91
  }
87
92
  targetNode = timeProfile.topDownRoot;
88
93
  }
89
- const intervalMicros = 1000 / this.frequency;
94
+ const intervalMicros = 1000000 / this.frequency;
90
95
  return (0, profile_serializer_1.serializeCpuProfile)(timeProfile, intervalMicros);
91
96
  }
92
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cpu-profiler.js","sourceRoot":"","sources":["../../ts/src/cpu-profiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cpu-profiler.js","sourceRoot":"","sources":["../../ts/src/cpu-profiler.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { Profile } from 'pprof-format';
16
+ import { perftools } from '../../proto/profile';
17
17
  import { SourceMapper } from './sourcemapper/sourcemapper';
18
18
  import { AllocationProfileNode } from './v8-types';
19
19
  export declare function v8Profile(): AllocationProfileNode;
@@ -24,7 +24,7 @@ export declare function v8Profile(): AllocationProfileNode;
24
24
  * @param ignoreSamplePath
25
25
  * @param sourceMapper
26
26
  */
27
- export declare function profile(ignoreSamplePath?: string, sourceMapper?: SourceMapper): Profile;
27
+ export declare function profile(ignoreSamplePath?: string, sourceMapper?: SourceMapper): perftools.profiles.IProfile;
28
28
  /**
29
29
  * Starts heap profiling. If heap profiling has already been started with
30
30
  * the same parameters, this is a noop. If heap profiler has already been
@@ -14,6 +14,6 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  /// <reference types="node" />
17
- import { Profile } from 'pprof-format';
18
- export declare function encode(profile: Profile): Promise<Buffer>;
19
- export declare function encodeSync(profile: Profile): Buffer;
17
+ import { perftools } from '../../proto/profile';
18
+ export declare function encode(profile: perftools.profiles.IProfile): Promise<Buffer>;
19
+ export declare function encodeSync(profile: perftools.profiles.IProfile): Buffer;
@@ -18,13 +18,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.encodeSync = exports.encode = void 0;
19
19
  const pify = require("pify");
20
20
  const zlib_1 = require("zlib");
21
+ const profile_1 = require("../../proto/profile");
21
22
  const gzipPromise = pify(zlib_1.gzip);
22
23
  async function encode(profile) {
23
- return gzipPromise(profile.encode());
24
+ const buffer = profile_1.perftools.profiles.Profile.encode(profile).finish();
25
+ return gzipPromise(buffer);
24
26
  }
25
27
  exports.encode = encode;
26
28
  function encodeSync(profile) {
27
- return (0, zlib_1.gzipSync)(profile.encode());
29
+ const buffer = profile_1.perftools.profiles.Profile.encode(profile).finish();
30
+ return (0, zlib_1.gzipSync)(buffer);
28
31
  }
29
32
  exports.encodeSync = encodeSync;
30
33
  //# sourceMappingURL=profile-encoder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile-encoder.js","sourceRoot":"","sources":["../../ts/src/profile-encoder.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,6BAA6B;AAC7B,+BAAoC;AAIpC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAI,CAAC,CAAC;AAExB,KAAK,UAAU,MAAM,CAAC,OAAgB;IAC3C,OAAO,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACvC,CAAC;AAFD,wBAEC;AAED,SAAgB,UAAU,CAAC,OAAgB;IACzC,OAAO,IAAA,eAAQ,EAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACpC,CAAC;AAFD,gCAEC"}
1
+ {"version":3,"file":"profile-encoder.js","sourceRoot":"","sources":["../../ts/src/profile-encoder.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,6BAA6B;AAC7B,+BAAoC;AAEpC,iDAA8C;AAE9C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAI,CAAC,CAAC;AAExB,KAAK,UAAU,MAAM,CAC1B,OAAoC;IAEpC,MAAM,MAAM,GAAG,mBAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;IACnE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AALD,wBAKC;AAED,SAAgB,UAAU,CAAC,OAAoC;IAC7D,MAAM,MAAM,GAAG,mBAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;IACnE,OAAO,IAAA,eAAQ,EAAC,MAAM,CAAC,CAAC;AAC1B,CAAC;AAHD,gCAGC"}
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { Profile } from 'pprof-format';
16
+ import { perftools } from '../../proto/profile';
17
17
  import { SourceMapper } from './sourcemapper/sourcemapper';
18
18
  import { AllocationProfileNode, CpuProfile, TimeProfile } from './v8-types';
19
19
  /**
@@ -23,7 +23,7 @@ import { AllocationProfileNode, CpuProfile, TimeProfile } from './v8-types';
23
23
  * @param prof - profile to be converted.
24
24
  * @param intervalMicros - average time (microseconds) between samples.
25
25
  */
26
- export declare function serializeTimeProfile(prof: TimeProfile, intervalMicros: number, sourceMapper?: SourceMapper): Profile;
26
+ export declare function serializeTimeProfile(prof: TimeProfile, intervalMicros: number, sourceMapper?: SourceMapper): perftools.profiles.IProfile;
27
27
  /**
28
28
  * Converts cpu profile into into a profile proto.
29
29
  * (https://github.com/google/pprof/blob/master/proto/profile.proto)
@@ -31,7 +31,7 @@ export declare function serializeTimeProfile(prof: TimeProfile, intervalMicros:
31
31
  * @param prof - profile to be converted.
32
32
  * @param intervalMicros - average time (microseconds) between samples.
33
33
  */
34
- export declare function serializeCpuProfile(prof: CpuProfile, intervalMicros: number, sourceMapper?: SourceMapper): Profile;
34
+ export declare function serializeCpuProfile(prof: CpuProfile, intervalMicros: number, sourceMapper?: SourceMapper): perftools.profiles.IProfile;
35
35
  /**
36
36
  * Converts v8 heap profile into into a profile proto.
37
37
  * (https://github.com/google/pprof/blob/master/proto/profile.proto)
@@ -42,4 +42,4 @@ export declare function serializeCpuProfile(prof: CpuProfile, intervalMicros: nu
42
42
  * nanoseconds.
43
43
  * @param intervalBytes - bytes allocated between samples.
44
44
  */
45
- export declare function serializeHeapProfile(prof: AllocationProfileNode, startTimeNanos: number, intervalBytes: number, ignoreSamplesPath?: string, sourceMapper?: SourceMapper): Profile;
45
+ export declare function serializeHeapProfile(prof: AllocationProfileNode, startTimeNanos: number, intervalBytes: number, ignoreSamplesPath?: string, sourceMapper?: SourceMapper): perftools.profiles.IProfile;
@@ -16,12 +16,36 @@
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.serializeHeapProfile = exports.serializeCpuProfile = exports.serializeTimeProfile = void 0;
19
- const pprof_format_1 = require("pprof-format");
19
+ const profile_1 = require("../../proto/profile");
20
20
  function isGeneratedLocation(location) {
21
21
  return (location.column !== undefined &&
22
22
  location.line !== undefined &&
23
23
  location.line > 0);
24
24
  }
25
+ /**
26
+ * Used to build string table and access strings and their ids within the table
27
+ * when serializing a profile.
28
+ */
29
+ class StringTable {
30
+ constructor() {
31
+ this.strings = [];
32
+ this.stringsMap = new Map();
33
+ this.getIndexOrAdd('');
34
+ }
35
+ /**
36
+ * @return index of str within the table. Also adds str to string table if
37
+ * str is not in the table already.
38
+ */
39
+ getIndexOrAdd(str) {
40
+ let idx = this.stringsMap.get(str);
41
+ if (idx !== undefined) {
42
+ return idx;
43
+ }
44
+ idx = this.strings.push(str) - 1;
45
+ this.stringsMap.set(str, idx);
46
+ return idx;
47
+ }
48
+ }
25
49
  /**
26
50
  * Takes v8 profile and populates sample, location, and function fields of
27
51
  * profile.proto.
@@ -63,7 +87,7 @@ function serialize(profile, root, appendToSamples, stringTable, ignoreSamplesPat
63
87
  profile.sample = samples;
64
88
  profile.location = locations;
65
89
  profile.function = functions;
66
- profile.stringTable = stringTable;
90
+ profile.stringTable = stringTable.strings;
67
91
  function getLocation(node, sourceMapper) {
68
92
  let profLoc = {
69
93
  file: node.scriptName || '',
@@ -85,12 +109,12 @@ function serialize(profile, root, appendToSamples, stringTable, ignoreSamplesPat
85
109
  id = locations.length + 1;
86
110
  locationIdMap.set(keyStr, id);
87
111
  const line = getLine(node.scriptId, profLoc.file, profLoc.name, profLoc.line);
88
- const location = new pprof_format_1.Location({ id, line: [line] });
112
+ const location = new profile_1.perftools.profiles.Location({ id, line: [line] });
89
113
  locations.push(location);
90
114
  return location;
91
115
  }
92
116
  function getLine(scriptId, scriptName, name, line) {
93
- return new pprof_format_1.Line({
117
+ return new profile_1.perftools.profiles.Line({
94
118
  functionId: getFunction(scriptId, scriptName, name).id,
95
119
  line,
96
120
  });
@@ -104,12 +128,12 @@ function serialize(profile, root, appendToSamples, stringTable, ignoreSamplesPat
104
128
  }
105
129
  id = functions.length + 1;
106
130
  functionIdMap.set(keyStr, id);
107
- const nameId = stringTable.dedup(name || '(anonymous)');
108
- const f = new pprof_format_1.Function({
131
+ const nameId = stringTable.getIndexOrAdd(name || '(anonymous)');
132
+ const f = new profile_1.perftools.profiles.Function({
109
133
  id,
110
134
  name: nameId,
111
135
  systemName: nameId,
112
- filename: stringTable.dedup(scriptName || ''),
136
+ filename: stringTable.getIndexOrAdd(scriptName || ''),
113
137
  });
114
138
  functions.push(f);
115
139
  return f;
@@ -120,9 +144,9 @@ function serialize(profile, root, appendToSamples, stringTable, ignoreSamplesPat
120
144
  * adds strings used in this value type to the table.
121
145
  */
122
146
  function createSampleCountValueType(table) {
123
- return new pprof_format_1.ValueType({
124
- type: table.dedup('sample'),
125
- unit: table.dedup('count'),
147
+ return new profile_1.perftools.profiles.ValueType({
148
+ type: table.getIndexOrAdd('sample'),
149
+ unit: table.getIndexOrAdd('count'),
126
150
  });
127
151
  }
128
152
  /**
@@ -130,9 +154,9 @@ function createSampleCountValueType(table) {
130
154
  * adds strings used in this value type to the table.
131
155
  */
132
156
  function createTimeValueType(table) {
133
- return new pprof_format_1.ValueType({
134
- type: table.dedup('wall'),
135
- unit: table.dedup('nanoseconds'),
157
+ return new profile_1.perftools.profiles.ValueType({
158
+ type: table.getIndexOrAdd('wall'),
159
+ unit: table.getIndexOrAdd('nanoseconds'),
136
160
  });
137
161
  }
138
162
  /**
@@ -140,9 +164,9 @@ function createTimeValueType(table) {
140
164
  * adds strings used in this value type to the table.
141
165
  */
142
166
  function createCpuValueType(table) {
143
- return new pprof_format_1.ValueType({
144
- type: table.dedup('cpu'),
145
- unit: table.dedup('nanoseconds'),
167
+ return new profile_1.perftools.profiles.ValueType({
168
+ type: table.getIndexOrAdd('cpu'),
169
+ unit: table.getIndexOrAdd('nanoseconds'),
146
170
  });
147
171
  }
148
172
  /**
@@ -150,9 +174,9 @@ function createCpuValueType(table) {
150
174
  * adds strings used in this value type to the table.
151
175
  */
152
176
  function createObjectCountValueType(table) {
153
- return new pprof_format_1.ValueType({
154
- type: table.dedup('objects'),
155
- unit: table.dedup('count'),
177
+ return new profile_1.perftools.profiles.ValueType({
178
+ type: table.getIndexOrAdd('objects'),
179
+ unit: table.getIndexOrAdd('count'),
156
180
  });
157
181
  }
158
182
  /**
@@ -160,9 +184,9 @@ function createObjectCountValueType(table) {
160
184
  * adds strings used in this value type to the table.
161
185
  */
162
186
  function createAllocationValueType(table) {
163
- return new pprof_format_1.ValueType({
164
- type: table.dedup('space'),
165
- unit: table.dedup('bytes'),
187
+ return new profile_1.perftools.profiles.ValueType({
188
+ type: table.getIndexOrAdd('space'),
189
+ unit: table.getIndexOrAdd('bytes'),
166
190
  });
167
191
  }
168
192
  /**
@@ -176,14 +200,14 @@ function serializeTimeProfile(prof, intervalMicros, sourceMapper) {
176
200
  const intervalNanos = intervalMicros * 1000;
177
201
  const appendTimeEntryToSamples = (entry, samples) => {
178
202
  if (entry.node.hitCount > 0) {
179
- const sample = new pprof_format_1.Sample({
203
+ const sample = new profile_1.perftools.profiles.Sample({
180
204
  locationId: entry.stack,
181
205
  value: [entry.node.hitCount, entry.node.hitCount * intervalNanos],
182
206
  });
183
207
  samples.push(sample);
184
208
  }
185
209
  };
186
- const stringTable = new pprof_format_1.StringTable();
210
+ const stringTable = new StringTable();
187
211
  const sampleValueType = createSampleCountValueType(stringTable);
188
212
  const timeValueType = createTimeValueType(stringTable);
189
213
  const profile = {
@@ -191,21 +215,21 @@ function serializeTimeProfile(prof, intervalMicros, sourceMapper) {
191
215
  timeNanos: Date.now() * 1000 * 1000,
192
216
  durationNanos: (prof.endTime - prof.startTime) * 1000,
193
217
  periodType: timeValueType,
194
- period: intervalMicros,
218
+ period: intervalNanos,
195
219
  };
196
220
  serialize(profile, prof.topDownRoot, appendTimeEntryToSamples, stringTable, undefined, sourceMapper);
197
- return new pprof_format_1.Profile(profile);
221
+ return profile;
198
222
  }
199
223
  exports.serializeTimeProfile = serializeTimeProfile;
200
224
  function buildLabels(labelSet, stringTable) {
201
225
  const labels = [];
202
226
  for (const [key, value] of Object.entries(labelSet)) {
203
227
  if (typeof value === 'number' || typeof value === 'string') {
204
- const label = new pprof_format_1.Label({
205
- key: stringTable.dedup(key),
228
+ const label = new profile_1.perftools.profiles.Label({
229
+ key: stringTable.getIndexOrAdd(key),
206
230
  num: typeof value === 'number' ? value : undefined,
207
231
  str: typeof value === 'string'
208
- ? stringTable.dedup(value)
232
+ ? stringTable.getIndexOrAdd(value)
209
233
  : undefined,
210
234
  });
211
235
  labels.push(label);
@@ -223,28 +247,23 @@ function buildLabels(labelSet, stringTable) {
223
247
  function serializeCpuProfile(prof, intervalMicros, sourceMapper) {
224
248
  const intervalNanos = intervalMicros * 1000;
225
249
  const appendCpuEntryToSamples = (entry, samples) => {
226
- for (const labelSet of entry.node.labelSets) {
227
- const sample = new pprof_format_1.Sample({
250
+ for (const labelCpu of entry.node.labelSets) {
251
+ const sample = new profile_1.perftools.profiles.Sample({
228
252
  locationId: entry.stack,
229
- value: [1, intervalNanos],
230
- label: buildLabels(labelSet, stringTable),
253
+ value: [1, labelCpu.cpuTime],
254
+ label: buildLabels(labelCpu.labels, stringTable),
231
255
  });
232
256
  samples.push(sample);
233
257
  }
234
- const unknownEntryCount = entry.node.hitCount - entry.node.labelSets.length;
235
- if (unknownEntryCount > 0) {
236
- const sample = new pprof_format_1.Sample({
258
+ if (entry.node.hitCount > 0) {
259
+ const sample = new profile_1.perftools.profiles.Sample({
237
260
  locationId: entry.stack,
238
- value: [
239
- unknownEntryCount,
240
- entry.node.cpuTime,
241
- // unknownEntryCount * intervalNanos,
242
- ],
261
+ value: [entry.node.hitCount, entry.node.cpuTime],
243
262
  });
244
263
  samples.push(sample);
245
264
  }
246
265
  };
247
- const stringTable = new pprof_format_1.StringTable();
266
+ const stringTable = new StringTable();
248
267
  const sampleValueType = createSampleCountValueType(stringTable);
249
268
  // const wallValueType = createTimeValueType(stringTable);
250
269
  const cpuValueType = createCpuValueType(stringTable);
@@ -253,10 +272,10 @@ function serializeCpuProfile(prof, intervalMicros, sourceMapper) {
253
272
  timeNanos: Date.now() * 1000 * 1000,
254
273
  durationNanos: prof.endTime - prof.startTime,
255
274
  periodType: cpuValueType,
256
- period: intervalMicros,
275
+ period: intervalNanos,
257
276
  };
258
277
  serialize(profile, prof.topDownRoot, appendCpuEntryToSamples, stringTable, undefined, sourceMapper);
259
- return new pprof_format_1.Profile(profile);
278
+ return profile;
260
279
  }
261
280
  exports.serializeCpuProfile = serializeCpuProfile;
262
281
  /**
@@ -273,7 +292,7 @@ function serializeHeapProfile(prof, startTimeNanos, intervalBytes, ignoreSamples
273
292
  const appendHeapEntryToSamples = (entry, samples) => {
274
293
  if (entry.node.allocations.length > 0) {
275
294
  for (const alloc of entry.node.allocations) {
276
- const sample = new pprof_format_1.Sample({
295
+ const sample = new profile_1.perftools.profiles.Sample({
277
296
  locationId: entry.stack,
278
297
  value: [alloc.count, alloc.sizeBytes * alloc.count],
279
298
  // TODO: add tag for allocation size
@@ -282,7 +301,7 @@ function serializeHeapProfile(prof, startTimeNanos, intervalBytes, ignoreSamples
282
301
  }
283
302
  }
284
303
  };
285
- const stringTable = new pprof_format_1.StringTable();
304
+ const stringTable = new StringTable();
286
305
  const sampleValueType = createObjectCountValueType(stringTable);
287
306
  const allocationValueType = createAllocationValueType(stringTable);
288
307
  const profile = {
@@ -292,7 +311,7 @@ function serializeHeapProfile(prof, startTimeNanos, intervalBytes, ignoreSamples
292
311
  period: intervalBytes,
293
312
  };
294
313
  serialize(profile, prof, appendHeapEntryToSamples, stringTable, ignoreSamplesPath, sourceMapper);
295
- return new pprof_format_1.Profile(profile);
314
+ return profile;
296
315
  }
297
316
  exports.serializeHeapProfile = serializeHeapProfile;
298
317
  //# sourceMappingURL=profile-serializer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile-serializer.js","sourceRoot":"","sources":["../../ts/src/profile-serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profile-serializer.js","sourceRoot":"","sources":["../../ts/src/profile-serializer.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,6 @@ const sourceMap = require("source-map");
33
33
  if (desc) {
34
34
  Object.defineProperty(globalThis, 'fetch', desc);
35
35
  }
36
- const scanner = require("../../third_party/cloud-debug-nodejs/src/agent/io/scanner");
37
36
  const pify = require('pify');
38
37
  const pLimit = require('p-limit');
39
38
  const readFile = pify(fs.readFile);
@@ -203,9 +202,45 @@ async function createFromMapFiles(mapFiles) {
203
202
  }
204
203
  return mapper;
205
204
  }
205
+ function isErrnoException(e) {
206
+ return e instanceof Error && 'code' in e;
207
+ }
208
+ function isNonFatalError(error) {
209
+ const nonFatalErrors = ['ENOENT', 'EPERM', 'EACCES', 'ELOOP'];
210
+ return (isErrnoException(error) && error.code && nonFatalErrors.includes(error.code));
211
+ }
212
+ async function* walk(dir,
213
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
214
+ fileFilter = (filename) => true,
215
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
216
+ directoryFilter = (root, dirname) => true) {
217
+ async function* walkRecursive(dir) {
218
+ try {
219
+ for await (const d of await fs.promises.opendir(dir)) {
220
+ const entry = path.join(dir, d.name);
221
+ if (d.isDirectory() && directoryFilter(dir, d.name)) {
222
+ yield* walkRecursive(entry);
223
+ }
224
+ else if (d.isFile() && fileFilter(d.name)) {
225
+ // check that the file is readable
226
+ await fs.promises.access(entry, fs.constants.R_OK);
227
+ yield entry;
228
+ }
229
+ }
230
+ }
231
+ catch (error) {
232
+ if (!isNonFatalError(error)) {
233
+ throw error;
234
+ }
235
+ }
236
+ }
237
+ yield* walkRecursive(dir);
238
+ }
206
239
  async function getMapFiles(baseDir) {
207
- const fileStats = await scanner.scan(false, baseDir, /.js.map$/);
208
- const mapFiles = fileStats.selectFiles(/.js.map$/, process.cwd());
240
+ const mapFiles = [];
241
+ for await (const entry of walk(baseDir, filename => filename.endsWith('.js.map'), (root, dirname) => root !== '/proc' && dirname !== '.git' && dirname !== 'node_modules')) {
242
+ mapFiles.push(path.relative(baseDir, entry));
243
+ }
209
244
  return mapFiles;
210
245
  }
211
246
  //# sourceMappingURL=sourcemapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sourcemapper.js","sourceRoot":"","sources":["../../../ts/src/sourcemapper/sourcemapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sourcemapper.js","sourceRoot":"","sources":["../../../ts/src/sourcemapper/sourcemapper.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,6 @@ export interface TimeProfilerOptions {
31
31
  */
32
32
  lineNumbers?: boolean;
33
33
  }
34
- export declare function profile(options: TimeProfilerOptions): Promise<import("pprof-format").Profile>;
35
- export declare function start(intervalMicros?: Microseconds, name?: string, sourceMapper?: SourceMapper, lineNumbers?: boolean): (restart?: boolean) => import("pprof-format").Profile;
34
+ export declare function profile(options: TimeProfilerOptions): Promise<import("../../proto/profile").perftools.profiles.IProfile>;
35
+ export declare function start(intervalMicros?: Microseconds, name?: string, sourceMapper?: SourceMapper, lineNumbers?: boolean): (restart?: boolean) => import("../../proto/profile").perftools.profiles.IProfile;
36
36
  export {};
@@ -55,10 +55,14 @@ export interface CpuProfile {
55
55
  export interface LabelSet {
56
56
  [key: string]: string | number;
57
57
  }
58
+ export interface LabelsCpu {
59
+ labels: LabelSet;
60
+ cpuTime: number;
61
+ }
58
62
  export interface CpuProfileNode extends ProfileNode {
59
63
  hitCount: number;
60
64
  cpuTime: number;
61
- labelSets: LabelSet[];
65
+ labelSets: LabelsCpu[];
62
66
  }
63
67
  export interface CpuProfileSample {
64
68
  labels: LabelSet;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datadog/pprof",
3
- "version": "1.1.0",
3
+ "version": "2.0.0-pre-9983949",
4
4
  "description": "pprof support for Node.js",
5
5
  "repository": "datadog/pprof-nodejs",
6
6
  "main": "out/src/index.js",
@@ -18,7 +18,9 @@
18
18
  "prebuild": "node scripts/prebuild.js",
19
19
  "prebuilds": "node scripts/prebuilds.js",
20
20
  "prepare": "npm run compile",
21
- "pretest": "npm run compile && npm run rebuild"
21
+ "pretest": "npm run compile && npm run rebuild",
22
+ "proto": "npm run proto:profile",
23
+ "proto:profile": "mkdir -p proto && npx --yes pbjs -t static-module -w commonjs -o proto/profile.js third_party/proto/profile.proto && pbts -o proto/profile.d.ts proto/profile.js"
22
24
  },
23
25
  "author": {
24
26
  "name": "Google Inc."
@@ -26,11 +28,10 @@
26
28
  "license": "Apache-2.0",
27
29
  "dependencies": {
28
30
  "delay": "^5.0.0",
29
- "findit2": "^2.2.3",
30
31
  "node-gyp-build": "^3.9.0",
31
32
  "p-limit": "^3.1.0",
32
33
  "pify": "^5.0.0",
33
- "pprof-format": "^2.0.4",
34
+ "protobufjs": "^7.0.0",
34
35
  "source-map": "^0.7.3",
35
36
  "split": "^1.0.1"
36
37
  },
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file