Releases: googleapis/cloud-trace-nodejs
v3.3.1
This release fixes an issue introduced in 3.3.0 where GAE requests would not be traced.
Commits
00b8c06 fix: make no option flags behave the same as o=1
c0cc60f test: remove cluster test todo (#907)
5c01e9e refactor: improve internal TraceWriter API (#876)
a42ab9e doc: reduce the samplingRate in README example
2c03ff0 doc: fix samplingRate comment in README (#905)
v3.3.0
This release makes various improvements to the Trace Agent:
- User Configuration
- The sampling rate can now be less than 1 per second.
- A
contextHeaderBehavior
option was added. Specifically, a newrequire
value forces the Trace Agent to not trace requests that don't have incoming headers.
- Bug Fixes
- Memory footprint stemming from long-lived promises have been reduced, as span data pointers are now released when a Promise resolves rather than when it is destroyed.
- Dependencies
- The
@google-cloud/common
dependency has been upgraded to 0.26.0. - The
gcp-metadata
dependency has been upgraded to 0.9.0.
- The
Commits
8454389 fix: avoid memory leaks due to undisposed promise resources (#885)
199cb42 feat: add contextHeaderBehavior option (#900)
47bb6e5 chore: revert #901 (#902)
3969491 chore: update CircleCI config (#901)
6f5af8c chore(deps): update dependency grpc to v1.16.0 (#899)
964d794 chore: include build in eslintignore (#898)
5220f9b fix: allow sampling rate to be less than 1 (#896)
b56926a fix(deps): update dependency gcp-metadata to ^0.9.0 (#897)
5840b74 refactor: address a few TODOs related to trace policy (#895)
8c6a614 fix(deps): update dependency @google-cloud/common to ^0.26.0 (#892)
a0a741d fix(deps): update dependency @google-cloud/datastore to v2 (#893)
5dc5fbf chore(deps): update dependency nock to v10 (#891)
ea88dcc chore(deps): update dependency @types/glob to v7 (#890)
023295b chore(deps): update dependency typescript to ~3.1.0 (#888)
c1a381a chore(deps): update dependency grpc to v1.15.1 (#887)
v3.2.1
v3.2.0
This version makes the following changes:
- There is now an upper limit to the number of spans created by a single trace. Log messages will be emitted as a trace approaches its upper limit. This is intended to help diagnose memory leaks caused by context confusion or context loss. See the wiki for more info.
- gRPC client methods can now be traced when their original method names are used.
- A smaller HTTP library replaces
request
, improving startup time.
Commits
0072e5f feat: emit an error log on potential memory leak scenario (#870)
c19850d fix: add log level to logger prefix (#875)
497c760 fix: enable tracing on original client method names (#874)
23a0616 fix: update @google-cloud/common dependency to 0.25.3 (#871)
f722200 chore(deps): update dependency @types/mocha to v5.2.5 (#802)
2c787a9 Enable prefer-const in the eslint config (#869)
fed7d09 Enable no-var in eslint (#868)
210dc3f feat: use small HTTP dependency (#858)
13f617a fix: delete cache as it is not working anyways (#864)
b4583e2 test: don't require long-door key to run system tests (#866)
d5fe71b test: stop using TRACE_TEST_* for system tests (#861)
fbb10a6 Use the new github org (#862)
464aedb chore(deps): update dependency grpc to v1.14.2 (#856)
b95c2a0 chore: delete yarn.lock (#857)
ee350a2 fix(deps): update dependency @google-cloud/common to ^0.23.0 (#834)
b7296f0 chore: ignore yarn.lock (#851)
9d1e8a1 chore(deps): lock file maintenance (#846)
55ec732 chore: pin @types/node at 10.7 (#849)
d2f7922 chore(deps): update dependency nyc to v13 (#847)
021deec chore(deps): update dependency grpc to v1.14.1 (#845)
v3.1.1
This release fixes an issue with missing TypeScript type definitions, as well as a broken image in the README on the NPM web UI. There should be no functional changes.
Commits
eb98fa1 fix: include more type definitions (#841)
b039c02 chore(deps): update dependency pify to v4 (#837)
aeaea17 chore(deps): update dependency @types/protobufjs to v6 (#809)
08208df doc: fix broken image on npm (#835)
9a6536a chore: ignore package-log.json (#836)
v3.1.0
This release adds rootSpanNameOverride
, which allows applications to override or transform the span name for root spans. It also adds the getConfig
API on Tracer
, which allows plugins to retrieve the normalized user config object that was passed to top-level start()
.
Commits
38202f4 chore: update renovate config (#828)
0ad4b01 chore(deps): lock file maintenance (#830)
a03e7b2 feat: add rootSpanNameOverride option (#826)
fe50b44 test: throw on deprecation
ef56b9b chore: assert.deelEqual => assert.deepStrictEqual (#825)
9152a6b chore(deps): update dependency typescript to v3 (#824)
c035d45 chore: move mocha options to mocha.opts (#822)
86c1d2d chore(deps): lock file maintenance (#823)
e4cd0f9 test: use strictEqual in tests (#813)
6787a37 chore(deps): lock file maintenance (#818)
v3.0.0
This is a semver major release that drops support for Node 4 and Node 9. There are other breaking changes, but those should have zero to little impact for most users of this module.
Breaking Changes
- Node 4 and 9 are no longer supported.
- Distributed tracing in gRPC now uses a well-known metadata key that should enable distributed context propagation across services in other languages. The metadata key we used to use previously ended up being different from what the gRPC community has settled on. If you have mixture of services using v2 and v3 of this module, then distributed tracing may not work. We recommend moving all Node.js services up to v3 together.
- A few TypeScript types have been renamed. In particular, the object returned by
start()
and also passed to plugins is now calledTracer
, instead ofTraceAgent
. This should have zero impact to JavaScript users, and a small impact to TypeScript users – only if the typeTraceAgent
was being explicitly being referred to in your code.
Commits
dde86d3 feat: rename TraceAgent/TraceApi to Tracer (#815)
4ac6ded fix: improve logs from the trace writer (#800)
63b13ca feat: use well-known format for propagating trace context thru grpc (#814)
f96c827 feat: implement (de)serialization of binary trace context (#812)
d146c5d chore(deps): update dependency gts to ^0.8.0 (#805)
1711db8 chore(deps): update dependency axios to ^0.18.0 (#804)
0a96e6c chore(deps): update dependency typescript to ~2.9.0 (#806)
93b7235 fix(deps): update dependency google-auto-auth to ^0.10.0 (#808)
fd138fc fix(deps): update dependency got to v8 (#811)
1fbbbf9 fix(deps): update dependency builtin-modules to v3 (#810)
94b8e3b fix(deps): update dependency gcp-metadata to ^0.7.0 (#807)
72cd353 refactor: convert plugin-grpc.ts to typescript (#799)
bff657a chore(deps): start using renovate (#801)
fa8f4a4 fix(package): update @google-cloud/common to version 0.20.3 (#796)
e4cfb1b chore: drop support for node 4 and 9 (#780)
v2.11.0
This release makes async_hooks
-based tracing the default on Node 8+. This means that code using async
/await
will now get traced without an environmental variable.
Other changes include:
- New APIs
traceApi.getProjectId()
: Returns a Promise that will resolve to the project ID, either as user-specified or retrieved viagoogle-auth-library
.traceApi.getCurrentRootSpan()
: Returns the currently running root span.
- Dependency Upgrades
require-in-the-middle
has been upgraded to v3, which picks up a fix to allow this module to work in conjunction with other APM modules that rely on this dependency.@google-cloud/common
has been upgraded to 0.19, which standardizes the way authentication details are managed across this and other GCP client libraries.
Commits
ffc1bf1 Add Code of Conduct
30d0529 feat: support tracing for untranspiled async/await in Node 8+ (#775)
35bd716 chore: upgrade to r-i-t-m@3 (#789)
6995e5e chore(package): update ts-node to version 7.0.0 (#785)
f7ae770 feat: add getProjectId and getCurrentRootSpan (#782)
6314199 chore: fix a few package versions (#781)
a5509e1 chore: re-enable node 10 ci and modify init-test-fixtures (#771)
3f3f667 fix: update to @google-cloud/common@0.19 (#772)
7b9e48f test: modernize test-trace-api (#767)
v2.10.1
This release fixes an issue where http
instrumentation throws an error if the Expect
header is on an outgoing request.
Commits
f9f648a test: remove test-trace-header-context (#768)
5c1dabe chore(package): update nyc to version 12.0.2 (#769)
bc877a5 fix: inject context http headers early if expect header exists (#766)