Skip to content

Commit

Permalink
fix: Make trace units be time based (#1387)
Browse files Browse the repository at this point in the history
* fix: Use time for trace units
* fix test
  • Loading branch information
Rperry2174 committed Aug 11, 2022
1 parent 2f5ca83 commit a567c2c
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 1 deletion.
11 changes: 11 additions & 0 deletions packages/pyroscope-flamegraph/src/format/format.spec.ts
Expand Up @@ -37,6 +37,17 @@ describe('format', () => {
expect(df.format(8000, 100)).toBe('80.00 seconds');
});

it('correctly formats trace samples', () => {
const df = getFormatter(80, 2, 'trace_samples');

expect(df.format(0, 100)).toBe('0.00 seconds');
expect(df.format(0.001, 100)).toBe('< 0.01 seconds');
expect(df.format(100, 100)).toBe('1.00 second');
expect(df.format(2000, 100)).toBe('20.00 seconds');
expect(df.format(2012.3, 100)).toBe('20.12 seconds');
expect(df.format(8000, 100)).toBe('80.00 seconds');
});

it('correctly formats duration when maxdur = 80', () => {
const df = getFormatter(160, 2, 'samples');

Expand Down
2 changes: 1 addition & 1 deletion packages/pyroscope-flamegraph/src/format/format.ts
Expand Up @@ -29,7 +29,7 @@ export function getFormatter(max: number, sampleRate: number, unit: Units) {
case 'lock_samples':
return new ObjectsFormatter(max);
case 'trace_samples':
return new DurationFormatter(max / sampleRate, 'units');
return new DurationFormatter(max / sampleRate);
default:
console.warn(`Unsupported unit: '${unit}'. Defaulting to ''`);
return new DurationFormatter(max / sampleRate, ' ');
Expand Down

0 comments on commit a567c2c

Please sign in to comment.