Socket
Socket
Sign inDemoInstall

@opentelemetry/instrumentation-http

Package Overview
Dependencies
Maintainers
2
Versions
189
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@opentelemetry/instrumentation-http - npm Package Compare versions

Comparing version 0.38.0 to 0.39.0

39

build/src/http.js

@@ -194,2 +194,6 @@ "use strict";

}
/**
* Determines if the request has errored or the response has ended/errored.
*/
let responseFinished = false;
/*

@@ -201,2 +205,3 @@ * User 'response' event listeners can be added before our listener,

request.prependListener('response', (response) => {
this._diag.debug('outgoingRequest on response()');
const responseAttributes = utils.getOutgoingRequestAttributesOnResponse(response);

@@ -211,5 +216,8 @@ span.setAttributes(responseAttributes);

api_1.context.bind(api_1.context.active(), response);
this._diag.debug('outgoingRequest on response()');
response.on('end', () => {
const endHandler = () => {
this._diag.debug('outgoingRequest on end()');
if (responseFinished) {
return;
}
responseFinished = true;
let status;

@@ -229,8 +237,19 @@ if (response.aborted && !response.complete) {

this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes);
});
};
response.on('end', endHandler);
// See https://github.com/open-telemetry/opentelemetry-js/pull/3625#issuecomment-1475673533
if (semver.lt(process.version, '16.0.0')) {
response.on('close', endHandler);
}
response.on(events_1.errorMonitor, (error) => {
this._diag.debug('outgoingRequest on error()', error);
if (responseFinished) {
return;
}
responseFinished = true;
utils.setSpanWithError(span, error);
const code = utils.parseResponseStatus(api_1.SpanKind.CLIENT, response.statusCode);
span.setStatus({ code, message: error.message });
span.setStatus({
code: api_1.SpanStatusCode.ERROR,
message: error.message,
});
this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes);

@@ -241,8 +260,14 @@ });

this._diag.debug('outgoingRequest on request close()');
if (!request.aborted) {
this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes);
if (request.aborted || responseFinished) {
return;
}
responseFinished = true;
this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes);
});
request.on(events_1.errorMonitor, (error) => {
this._diag.debug('outgoingRequest on request error()', error);
if (responseFinished) {
return;
}
responseFinished = true;
utils.setSpanWithError(span, error);

@@ -249,0 +274,0 @@ this._closeHttpSpan(span, api_1.SpanKind.CLIENT, startTime, metricAttributes);

2

build/src/version.d.ts

@@ -1,2 +0,2 @@

export declare const VERSION = "0.38.0";
export declare const VERSION = "0.39.0";
//# sourceMappingURL=version.d.ts.map

@@ -20,3 +20,3 @@ "use strict";

// this is autogenerated file, see scripts/version-update.js
exports.VERSION = '0.38.0';
exports.VERSION = '0.39.0';
//# sourceMappingURL=version.js.map
{
"name": "@opentelemetry/instrumentation-http",
"version": "0.38.0",
"version": "0.39.0",
"description": "OpenTelemetry http/https automatic instrumentation package.",

@@ -49,6 +49,6 @@ "main": "build/src/index.js",

"@opentelemetry/api": "1.4.1",
"@opentelemetry/context-async-hooks": "1.12.0",
"@opentelemetry/sdk-metrics": "1.12.0",
"@opentelemetry/sdk-trace-base": "1.12.0",
"@opentelemetry/sdk-trace-node": "1.12.0",
"@opentelemetry/context-async-hooks": "1.13.0",
"@opentelemetry/sdk-metrics": "1.13.0",
"@opentelemetry/sdk-trace-base": "1.13.0",
"@opentelemetry/sdk-trace-node": "1.13.0",
"@types/mocha": "10.0.0",

@@ -67,3 +67,2 @@ "@types/node": "18.6.5",

"request-promise-native": "1.0.9",
"rimraf": "4.1.2",
"sinon": "15.0.0",

@@ -78,5 +77,5 @@ "superagent": "8.0.0",

"dependencies": {
"@opentelemetry/core": "1.12.0",
"@opentelemetry/instrumentation": "0.38.0",
"@opentelemetry/semantic-conventions": "1.12.0",
"@opentelemetry/core": "1.13.0",
"@opentelemetry/instrumentation": "0.39.0",
"@opentelemetry/semantic-conventions": "1.13.0",
"semver": "^7.3.5"

@@ -86,3 +85,3 @@ },

"sideEffects": false,
"gitHead": "a04090010ee18e17487b449984807cc2b7b6e3e6"
"gitHead": "8fc76896595aac912bf9e15d4f19c167317844c8"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc