applicationinsights
Advanced tools
Comparing version 1.0.6 to 1.0.7
@@ -20,3 +20,3 @@ /// <reference types="node" /> | ||
private correlationContextHeader; | ||
constructor(request: http.ServerRequest, requestId?: string); | ||
constructor(request: http.IncomingMessage, requestId?: string); | ||
onError(error: Error | string, ellapsedMilliseconds?: number): void; | ||
@@ -23,0 +23,0 @@ onResponse(response: http.ServerResponse, ellapsedMilliseconds?: number): void; |
@@ -6,2 +6,3 @@ import Contracts = require("../Declarations/Contracts"); | ||
static INSTANCE: AutoCollectHttpRequests; | ||
private static alreadyAutoCollectedFlag; | ||
private _client; | ||
@@ -8,0 +9,0 @@ private _isEnabled; |
@@ -60,21 +60,31 @@ "use strict"; | ||
return function (request, response) { | ||
// Set up correlation context | ||
var requestParser = new HttpRequestParser(request); | ||
var correlationContext = _this._generateCorrelationContext(requestParser); | ||
// Note: Check for if correlation is enabled happens within this method. | ||
// If not enabled, function will directly call the callback. | ||
CorrelationContextManager_1.CorrelationContextManager.runWithContext(correlationContext, function () { | ||
if (_this._isEnabled) { | ||
// Auto collect request | ||
AutoCollectHttpRequests.trackRequest(_this._client, { request: request, response: response }, requestParser); | ||
} | ||
// Add this request to the performance counter | ||
// Note: Check for if perf counters are enabled happens within this method. | ||
// TODO: Refactor common bits between trackRequest and countRequest so they can | ||
// be used together, even when perf counters are on, and request tracking is off | ||
AutoCollectPerformance.countRequest(request, response); | ||
var shouldCollect = request && !request[AutoCollectHttpRequests.alreadyAutoCollectedFlag]; | ||
if (request && shouldCollect) { | ||
// Set up correlation context | ||
var requestParser_1 = new HttpRequestParser(request); | ||
var correlationContext = _this._generateCorrelationContext(requestParser_1); | ||
// Note: Check for if correlation is enabled happens within this method. | ||
// If not enabled, function will directly call the callback. | ||
CorrelationContextManager_1.CorrelationContextManager.runWithContext(correlationContext, function () { | ||
if (_this._isEnabled) { | ||
// Mark as auto collected | ||
request[AutoCollectHttpRequests.alreadyAutoCollectedFlag] = true; | ||
// Auto collect request | ||
AutoCollectHttpRequests.trackRequest(_this._client, { request: request, response: response }, requestParser_1); | ||
} | ||
// Add this request to the performance counter | ||
// Note: Check for if perf counters are enabled happens within this method. | ||
// TODO: Refactor common bits between trackRequest and countRequest so they can | ||
// be used together, even when perf counters are on, and request tracking is off | ||
AutoCollectPerformance.countRequest(request, response); | ||
if (typeof onRequest === "function") { | ||
onRequest(request, response); | ||
} | ||
}); | ||
} | ||
else { | ||
if (typeof onRequest === "function") { | ||
onRequest(request, response); | ||
} | ||
}); | ||
} | ||
}; | ||
@@ -221,2 +231,3 @@ }; | ||
}; | ||
AutoCollectHttpRequests.alreadyAutoCollectedFlag = '_appInsightsAutoCollected'; | ||
return AutoCollectHttpRequests; | ||
@@ -223,0 +234,0 @@ }()); |
@@ -112,7 +112,4 @@ "use strict"; | ||
AutoCollectPerformance.prototype._trackMemory = function () { | ||
var totalMem = os.totalmem(); | ||
var freeMem = os.freemem(); | ||
var usedMem = totalMem - freeMem; | ||
var percentUsedMem = usedMem / (totalMem || 1); | ||
var percentAvailableMem = freeMem / (totalMem || 1); | ||
var usedMem = process.memoryUsage().rss; | ||
this._client.trackMetric({ name: "\\Process(??APP_WIN32_PROC??)\\Private Bytes", value: usedMem }); | ||
@@ -119,0 +116,0 @@ this._client.trackMetric({ name: "\\Memory\\Available Bytes", value: freeMem }); |
@@ -11,3 +11,3 @@ /// <reference types="node" /> | ||
*/ | ||
request: http.ServerRequest; | ||
request: http.IncomingMessage; | ||
/** | ||
@@ -14,0 +14,0 @@ * HTTP response object |
@@ -294,3 +294,3 @@ "use strict"; | ||
; | ||
Util.MAX_PROPERTY_LENGTH = 1024; | ||
Util.MAX_PROPERTY_LENGTH = 8192; | ||
Util.tlsRestrictedAgent = new https.Agent({ | ||
@@ -297,0 +297,0 @@ secureOptions: constants.SSL_OP_NO_SSLv2 | constants.SSL_OP_NO_SSLv3 | |
@@ -5,3 +5,3 @@ { | ||
"bugs": "https://github.com/Microsoft/ApplicationInsights-node.js/issues", | ||
"version": "1.0.6", | ||
"version": "1.0.7", | ||
"description": "Microsoft Application Insights module for Node.js", | ||
@@ -8,0 +8,0 @@ "repository": { |
@@ -203,2 +203,3 @@ # Application Insights for Node.js | ||
var elapsed = process.hrtime(startTime); | ||
startTime = process.hrtime(); | ||
sampleSum += elapsed[0] * 1e9 + elapsed[1]; | ||
@@ -205,0 +206,0 @@ sampleCount++; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
288992
6270
421