Microsoft Application Insights SDK for Node.js
MIT License
Bot releases are hidden (Show)
Published by markwolff about 5 years ago
#543 Fix issue causing perf counters of manually tracking requests not appearing in Live Metrics stream
#545 Fix issue with incorrect default trace flag being applied to w3c traceparent header
Published by markwolff about 5 years ago
Published by markwolff over 5 years ago
This update adds 2 major features. You can now monitor some node.js specific portions of your application via the applicationinsights-node.js-native-metrics node.js addon. To add it, simply install it to your app:
npm install --save applicationinsights-native-metrics
You will not need to make any code changes since this SDK will automatically try to require
this module. Once installed, additional node.js specific metrics of your application (time spent in each type of Garbage Collection, Event Loop ticks per second, heap vs non-heap memory usage) will be recorded as Metric Telemetry.
https://github.com/microsoft/applicationinsights-node.js-native-metrics
Second, this SDK now supports the W3C Trace Context distributed tracing standard. To enable this in your app, you must enable it during setup. This will send/receive back-compatibility headers as well as W3C headers, so you will not break correlation with any of your existing legacy services. Enabling W3C headers will allow your app to correlate with other services not instrumented with Application Insights, but do adopt this W3C standard.
const appInsights = require("applicationinsights");
appInsights
.setup("<your ikey>")
.setDistributedTracingMode(appInsights.DistributedTracingModes.AI_AND_W3C)
.start()
Published by markwolff over 5 years ago
Sending Live Metrics is currently disabled by default. To enable it, add .setSendLiveMetrics(true)
to your configuration methods as you initialize the SDK. You can view your app's live metrics in the "Live Metrics Stream" blade of your Application Insights instance.
Published by markwolff over 5 years ago
Autocollection now works on latest verison of all supported libraries (as of February 19 2019):
v2.x
v2.0.0
-> v2.16.x
v2.x
, v3.x
v6.x
, v7.x
v1.x
, v2.x
v1.x
v2.x
, v3.x
Fixed issues
mongo 3.x
)postgres 7.x
)postgres 7.x
)2.16.x
3.x
Note: See
diagnostic-channel-publishers
0.3.0 release for more info
https://github.com/Microsoft/node-diagnostic-channel/tree/master/src/diagnostic-channel-publishers#030---february-19th-2019
Published by markwolff over 5 years ago
setAutoDependencyCorrelation(true, <true|false|undefined>)
true
: force usage of cls-hooked
, which will use async_hooks
for node8+, else AsyncWrap
false
: force usage of continuation-local-storage
, which uses async-listener
undefined
or left blank: default behavior. The SDK will choose for you based on your version of Node.Published by markwolff almost 6 years ago
This release is published under the beta tag
npm i applicationinsights@beta
This release is a rewrite of how the SDK performs its dependency correlation. With this change, we expect significantly less cryptic errors and compatibility issues resulting from dependency correlation (More info here). As such, we see this change as significant enough to warrant a major version bump, despite no new features visible to users.
Published by markwolff almost 6 years ago
Important: This changes the way process cpu usage is measured. Previously, sum of user cpu usage was reported, this change uses
process.cpuUsage()
to measure only this app's usage. In general, the new recorded value will be lower. This only affects process cpu % measurement. Processor cpu % usage metric is unchanged.
Published by OsvaldoRosado almost 6 years ago
Published by OsvaldoRosado about 6 years ago
Published by OsvaldoRosado about 6 years ago
APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL
environment variable to completely prevent loading diagnostic-channel
when presentPublished by OsvaldoRosado about 6 years ago
agent
with puppeteerThe changes in this release to disable TLS versions earlier than 1.2 may impact you if you use a custom telemetry endpoint over HTTPS with an older TLS protocol. You can restore the previous behavior by supplying a custom https.Agent
that is not configured with this restriction. See the "Advanced configuration options" section of the README for how to supply a custom https.Agent
instance to this SDK.
Published by OsvaldoRosado over 6 years ago
http_proxy
and https_proxy
environment variables. Allow for configurable HTTP(S) proxies and Node.js http agents.ai_authUser
cookie to userAuthUserId
tag.Published by OsvaldoRosado over 6 years ago
Published by OsvaldoRosado almost 7 years ago
This patch release to 1.0.0 contains several important fixes for both automatic and manually tracked dependency collection. If you are missing dependency telemetry, or notice missing fields such as resultCode, updating to 1.0.1 is suggested.
Published by OsvaldoRosado about 7 years ago
This is the first stable release of the Application Insights Node.js SDK.
Changes since 0.22.0 are primarily bugfixes and stability improvements. Please read the migration section of the readme if you are upgrading from a version prior to 0.22.0.
Published by AlexBulankou about 7 years ago
This release includes breaking changes across most of the SDK in order to bring consistency with other Application Insights SDKs and allow future extensibility. Please review the README for new method and property names. For additional detail on the track API, review #302.
In general, you can migrate with the following:
appInsights.client
with appInsights.defaultClient
appInsights.getClient()
with new appInsights.TelemetryClient()
client.track*
methods with a single object containing named properties as arguments. See your IDE's built-in type hinting, or TelemetryTypes, for the expected object for each type of telemetry.If you access appInsights configuration functions without chaining them to appInsights.setup()
, you can now find these functions at appInsights.Configuration
(eg. appInsights.Configuration.setAutoCollectDependencies(true)
)
Changes to default configurations also exist in this SDK. Primarily, storing telemetry to disk when your app is offline is now enabled by default.
Published by OsvaldoRosado over 7 years ago
Published by OsvaldoRosado over 7 years ago
Published by OsvaldoRosado over 7 years ago