fix(otlp-transformer): do not throw when deserializing empty JSON response (#5551)
This commit is contained in:
parent
6e15d69cb8
commit
37fe1e495b
|
|
@ -12,6 +12,8 @@ For notes on migrating to 2.x / 0.200.x see [the upgrade guide](doc/upgrade-to-2
|
|||
|
||||
### :bug: Bug Fixes
|
||||
|
||||
fix(otlp-transformer): do not throw when deserializing empty JSON response [#5551](https://github.com/open-telemetry/opentelemetry-js/pull/5551) @pichlermarc
|
||||
|
||||
### :books: Documentation
|
||||
|
||||
### :house: Internal
|
||||
|
|
|
|||
|
|
@ -34,6 +34,9 @@ export const JsonLogsSerializer: ISerializer<
|
|||
return encoder.encode(JSON.stringify(request));
|
||||
},
|
||||
deserializeResponse: (arg: Uint8Array) => {
|
||||
if (arg.length === 0) {
|
||||
return {};
|
||||
}
|
||||
const decoder = new TextDecoder();
|
||||
return JSON.parse(decoder.decode(arg)) as IExportLogsServiceResponse;
|
||||
},
|
||||
|
|
|
|||
|
|
@ -30,6 +30,9 @@ export const JsonMetricsSerializer: ISerializer<
|
|||
return encoder.encode(JSON.stringify(request));
|
||||
},
|
||||
deserializeResponse: (arg: Uint8Array) => {
|
||||
if (arg.length === 0) {
|
||||
return {};
|
||||
}
|
||||
const decoder = new TextDecoder();
|
||||
return JSON.parse(decoder.decode(arg)) as IExportMetricsServiceResponse;
|
||||
},
|
||||
|
|
|
|||
|
|
@ -31,6 +31,9 @@ export const JsonTraceSerializer: ISerializer<
|
|||
return encoder.encode(JSON.stringify(request));
|
||||
},
|
||||
deserializeResponse: (arg: Uint8Array) => {
|
||||
if (arg.length === 0) {
|
||||
return {};
|
||||
}
|
||||
const decoder = new TextDecoder();
|
||||
return JSON.parse(decoder.decode(arg)) as IExportTraceServiceResponse;
|
||||
},
|
||||
|
|
|
|||
|
|
@ -344,6 +344,12 @@ describe('Logs', () => {
|
|||
1
|
||||
);
|
||||
});
|
||||
|
||||
it('does not throw when deserializing an empty response', () => {
|
||||
assert.doesNotThrow(() =>
|
||||
ProtobufLogsSerializer.deserializeResponse(new Uint8Array([]))
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('JsonLogsSerializer', function () {
|
||||
|
|
@ -383,5 +389,11 @@ describe('Logs', () => {
|
|||
1
|
||||
);
|
||||
});
|
||||
|
||||
it('does not throw when deserializing an empty response', () => {
|
||||
assert.doesNotThrow(() =>
|
||||
JsonLogsSerializer.deserializeResponse(new Uint8Array([]))
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -858,6 +858,12 @@ describe('Metrics', () => {
|
|||
1
|
||||
);
|
||||
});
|
||||
|
||||
it('does not throw when deserializing an empty response', () => {
|
||||
assert.doesNotThrow(() =>
|
||||
ProtobufMetricsSerializer.deserializeResponse(new Uint8Array([]))
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('JsonMetricsSerializer', function () {
|
||||
|
|
@ -929,5 +935,11 @@ describe('Metrics', () => {
|
|||
1
|
||||
);
|
||||
});
|
||||
|
||||
it('does not throw when deserializing an empty response', () => {
|
||||
assert.doesNotThrow(() =>
|
||||
JsonMetricsSerializer.deserializeResponse(new Uint8Array([]))
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -495,6 +495,12 @@ describe('Trace', () => {
|
|||
1
|
||||
);
|
||||
});
|
||||
|
||||
it('does not throw when deserializing an empty response', () => {
|
||||
assert.doesNotThrow(() =>
|
||||
ProtobufTraceSerializer.deserializeResponse(new Uint8Array([]))
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('JsonTracesSerializer', function () {
|
||||
|
|
@ -537,5 +543,11 @@ describe('Trace', () => {
|
|||
1
|
||||
);
|
||||
});
|
||||
|
||||
it('does not throw when deserializing an empty response', () => {
|
||||
assert.doesNotThrow(() =>
|
||||
JsonTraceSerializer.deserializeResponse(new Uint8Array([]))
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue