-
Notifications
You must be signed in to change notification settings - Fork 816
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(http): stop listening to request
's close
event once it has emitted response
#3625
Conversation
0eabb66
to
bc992db
Compare
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## main #3625 +/- ##
==========================================
- Coverage 93.43% 93.42% -0.02%
==========================================
Files 290 290
Lines 8849 8863 +14
Branches 1834 1838 +4
==========================================
+ Hits 8268 8280 +12
- Misses 581 583 +2
|
Is the failing test my fault? It looks like an OOM or something when running the http instrumentation test, so seems reasonable. I don't have access to a windows machine tho, so unable to reproduce it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. @vmarchaud please confirm but based on discussion on the issue I think you also thought this was ok
The test failure is an out of memory that is unrelated |
It might be related to the changed from end -> close causing something in the test infra to use a little bit more memory on windows. @SimenB can you try adding this to the unit-test.yml a value of 4096 (or maybe event 3072 should work based on the 2076 amount in the failed test case |
Doesn't seem like it helped 😞 #3626 is failing with the same error, so doesn't seem like it's the code change here, though. But weird it's not an issue on |
I deployed this at work and now pretty much every single http span is giving the same I guess we can add a guard to the |
|
My guess is opentelemetry-js/experimental/packages/opentelemetry-instrumentation-http/src/http.ts Lines 403 to 408 in 9b4f2a5
Not sure of the timing between |
Ah yeah. It's probably not a closing issue since |
The possible event orderings are listed in https://nodejs.org/api/http.html#httprequesturl-options-callback In most cases it looks like |
Yep, it's the |
Maybe it's worth looking what |
Looks like it listens for Most of the rest of the code is error handling, handling multiple callback registrations, etc. It also wraps the callback in an async resource https://github.com/jshttp/on-finished/blob/c94df7d1692539d2504ccf46ceea8e8913ebe0a0/index.js#L213-L234 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm for the fix itself if you find it fixes the case
EDIT: Wondering also if the behavior is not different across node version ?
.github/workflows/unit-test.yml
Outdated
@@ -64,6 +64,7 @@ jobs: | |||
runs-on: windows-latest | |||
env: | |||
NPM_CONFIG_UNSAFE_PERM: true | |||
NODE_OPTIONS: --max-old-space-size=4096 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not sure if its worth to check that the fix doesnt create any leak that for some reasons is only a problem in windows ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would using I'm not sure how that works for |
I'm also not sure. I think emulating We don't need most of what |
@legendecas is this something you could ask the stream/http folks (largely the same group of people I guess 😅) in node about? 🙂 |
The behavior mentioned in #2575 can be constantly reproduced with the following script: const { diag, DiagConsoleLogger, DiagLogLevel } = require('@opentelemetry/api');
const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
const { registerInstrumentations } = require('@opentelemetry/instrumentation');
const { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');
diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.ALL);
const provider = new NodeTracerProvider();
provider.register();
registerInstrumentations({
instrumentations: [
new HttpInstrumentation(),
],
tracerProvider: provider
});
const http = require('http');
http.createServer((req, res) => {
// Force flush http response header to trigger client response callback.
res.write('');
setTimeout(() => {
req.socket.destroy();
}, 100);
}).listen(9999);
const events = ['end', 'close', 'error'];
const req = http.request(`http://localhost:9999`, (res) => {
console.log('client on response');
events.forEach(e => {
res.on(e, () => {
console.log(`client response ${e}`);
});
});
});
events.forEach(e => {
req.on(e, () => {
console.log(`client request ${e}`);
});
});
// Force flush http request header to trigger server request callback.
req.write(''); Example output:
I believe the correct fix would be suppressing the |
Sounds reasonable 👍 Is this something you'll work on? I don't think I'll personally have the time for at least a week, but I can probably take a look then |
My bandwidth is pretty limited in one or two weeks so please go ahead with this when you get the chance. |
How can we progress this PR? Would be nice if can make @dyladan next release :) |
Some help on the tests would be great! I think that's the only thing missing. I've moved on to other things at work (using the patch from this PR, so not blocked by it), so it's currently hard to find the time for this. |
You mean solving the failing tests or adding new ones? I give it an attempt. |
I've pushed a test to this branch that I think encompasses the fix, so in theory getting it to pass should be sufficient 🙂 That test might be faulty somehow tho, so it might be better to throw it out and write a new one. |
Took some time to investigate the test failure. I found that nock's HTTP client implementation behaves differently with node's native one in immature client closes: if the request was destroyed with Updated the patch to accommodate this behavior. @SimenB does the change look good to you? If so, would you mind marking the PR as ready for review? |
oh, oops, missed your message @legendecas! 😅 let me try to restore your commit |
Yeah, your changes look reasonable to me! I can attempt to deploy this patch at work as well (tomorrow - currently Sunday 21:30 here 😅), and if it looks good after a day or so, I think this PR should finally be ready 🙂 EDIT: Deployed now, will report back |
This has been trucking along just fine throughout the day without issue, so I think this is good to go! |
We have noticed GitHub having transient issues cloning/pulling in our CI today. The unit test failure looks related, so it would be worth rerunning tests, although I don't have permissions to do so |
Thanks for your help with this @legendecas! |
<h3>Snyk has created this PR to upgrade @opentelemetry/resources from 1.12.0 to 1.13.0.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> - The recommended version is **1 version** ahead of your current version. - The recommended version was released **24 days ago**, on 2023-05-11. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@opentelemetry/resources</b></summary> <ul> <li> <b>1.13.0</b> - <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases/tag/v1.13.0">2023-05-11</a></br><h3><g-emoji class="g-emoji" alias="rocket" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f680.png">🚀</g-emoji> (Enhancement)</h3> <ul> <li>feat(core): add environment variables for OTLP log exporters. <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3712/" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3712/hovercard">#3712</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/llc1123/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/llc1123">@ llc1123</a></li> </ul> <h3><g-emoji class="g-emoji" alias="bug" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f41b.png">🐛</g-emoji> (Bug Fix)</h3> <ul> <li>fix(http-instrumentation): stop listening to <code>request</code>'s <code>close</code> event once it has emitted <code>response</code> <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3625" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3625/hovercard">#3625</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SimenB/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/SimenB">@ SimenB</a></li> <li>fix(sdk-node): fix initialization in bundled environments by not loading @ opentelemetry/exporter-jaeger <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3739" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3739/hovercard">#3739</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pichlermarc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/pichlermarc">@ pichlermarc</a></li> </ul> </li> <li> <b>1.12.0</b> - <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases/tag/v1.12.0">2023-04-13</a></br><h2>1.12.0</h2> <h3><g-emoji class="g-emoji" alias="rocket" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f680.png">🚀</g-emoji> (Enhancement)</h3> <ul> <li>feat(tracing): log span name and IDs when span end is called multiple times <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3716" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3716/hovercard">#3716</a></li> <li>feat(core): add logs environment variables; add timeout utils method. <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3549/" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3549/hovercard">#3549</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/fuaiyi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/fuaiyi">@ fuaiyi</a></li> </ul> <h3><g-emoji class="g-emoji" alias="bug" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f41b.png">🐛</g-emoji> (Bug Fix)</h3> <ul> <li>fix(instrumentation-http): fixed description for http.server.duration metric <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3710" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3710/hovercard">#3710</a></li> <li>fix(opentelemetry-sdk-trace-web): don't crash in runtimes where location isn't defined <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3715" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3715/hovercard">#3715</a></li> </ul> </li> </ul> from <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases">@opentelemetry/resources GitHub release notes</a> </details> </details> <details> <summary><b>Commit messages</b></summary> </br> <details> <summary>Package name: <b>@opentelemetry/resources</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/8fc76896595aac912bf9e15d4f19c167317844c8">8fc7689</a> chore: release 1.13 / 0.39 (#3776)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/32632bd30309621908da8166c6595a23af892f06">32632bd</a> doc(instrumentation): add limitiations section to readme (#3786)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/b8b63083869fb5850fd4830ded0fc509a2cd0f0a">b8b6308</a> chore: remove "opentelemetry" prefix from opencensus-shim package directory (#3784)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/7255da994fe79f115ceb9b1260fb171cf9313706">7255da9</a> feat(opencensus-shim) add mapping logic and propagation shim (#3751)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/32ae641ad13be8786cce9ffc3942efa385c0ab33">32ae641</a> fix(deps): update dependency require-in-the-middle to v7.1.0 for types and named export (#3727)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/2f1e31648402b310448d226ae9632b115e6ad5c4">2f1e316</a> feat(otlp-grpc-exporter-base): use statically generated protobuf code (#3705)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/abfb1bb68e1ec8a183c01644ab9673cd6ac74841">abfb1bb</a> refactor(otlp-transformer): refine metrics transformer (#3770)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/a96116db88c7c0a0d1185601942b379c6118bd6d">a96116d</a> deps: remove `rimraf` (#3769)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/98e4e821bcd5b3d74f95db26439a93c3abb9f467">98e4e82</a> feat(exporter-logs-otlp-grpc): implements otlp-grpc exporters for logs (#3712)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/9347ca6a3ea5f40b9fff33d1a9a3ae2bea7e6ba8">9347ca6</a> fix(http): stop listening to `request`'s `close` event once it has emitted `response` (#3625)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/6676414505f6ffc75e151fa162e351fa1de7204e">6676414</a> feat(opencensus-shim): add OpenCensus shim package boilerplate (#3750)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/cd0d8806e0ed4c9dc68be9773770349c712e5e76">cd0d880</a> fix(sdk-node): lazy require @ opentelemetry/exporter-jaeger (#3739)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/de354dbbdd24bb9f93edef6d098fe8484c7bc3ff">de354db</a> fix: VisibilityState type for typescript >4.6 (#3741)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/61aae103f39ffa20f4e01f23f4bfd6b1cc6f7e9e">61aae10</a> Fix changelog link (#3744)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/3e99e13a4ec55a94926fdb1c1c6f5955783b3ab3">3e99e13</a> fix(instrumentation): update dep require-in-the-middle to 7.0.1 (#3743)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/1b50f91850d0d503feb3a2aeb5c83d63598e8180">1b50f91</a> deps(sdk-logs): remove unused rimraf dev dependency (#3738)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/5b9534bd47deb2a15f7414ba7df05057f6ab9b1e">5b9534b</a> deps: remove unused mkdirp and rimraf dependencies (#3737)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/053acb604c9d2b735bb267ff47724bb3af1ffd62">053acb6</a> Logs version fixup (#3729)</li> </ul> <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/compare/a04090010ee18e17487b449984807cc2b7b6e3e6...8fc76896595aac912bf9e15d4f19c167317844c8">Compare</a> </details> </details> <hr/> **Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiI1MThjZmE2OS0xYjUwLTQ2NmItOTA2NC05OWQ5ZWJlZjU4ZTYiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6IjUxOGNmYTY5LTFiNTAtNDY2Yi05MDY0LTk5ZDllYmVmNThlNiJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630/settings/integration?pkg=@opentelemetry/resources&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades)
…3.0 (#326) <h3>Snyk has created this PR to upgrade @opentelemetry/semantic-conventions from 1.12.0 to 1.13.0.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> - The recommended version is **1 version** ahead of your current version. - The recommended version was released **25 days ago**, on 2023-05-11. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@opentelemetry/semantic-conventions</b></summary> <ul> <li> <b>1.13.0</b> - <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases/tag/v1.13.0">2023-05-11</a></br><h3><g-emoji class="g-emoji" alias="rocket" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f680.png">🚀</g-emoji> (Enhancement)</h3> <ul> <li>feat(core): add environment variables for OTLP log exporters. <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3712/" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3712/hovercard">#3712</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/llc1123/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/llc1123">@ llc1123</a></li> </ul> <h3><g-emoji class="g-emoji" alias="bug" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f41b.png">🐛</g-emoji> (Bug Fix)</h3> <ul> <li>fix(http-instrumentation): stop listening to <code>request</code>'s <code>close</code> event once it has emitted <code>response</code> <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3625" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3625/hovercard">#3625</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SimenB/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/SimenB">@ SimenB</a></li> <li>fix(sdk-node): fix initialization in bundled environments by not loading @ opentelemetry/exporter-jaeger <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3739" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3739/hovercard">#3739</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pichlermarc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/pichlermarc">@ pichlermarc</a></li> </ul> </li> <li> <b>1.12.0</b> - <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases/tag/v1.12.0">2023-04-13</a></br><h2>1.12.0</h2> <h3><g-emoji class="g-emoji" alias="rocket" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f680.png">🚀</g-emoji> (Enhancement)</h3> <ul> <li>feat(tracing): log span name and IDs when span end is called multiple times <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3716" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3716/hovercard">#3716</a></li> <li>feat(core): add logs environment variables; add timeout utils method. <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3549/" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3549/hovercard">#3549</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/fuaiyi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/fuaiyi">@ fuaiyi</a></li> </ul> <h3><g-emoji class="g-emoji" alias="bug" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f41b.png">🐛</g-emoji> (Bug Fix)</h3> <ul> <li>fix(instrumentation-http): fixed description for http.server.duration metric <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3710" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3710/hovercard">#3710</a></li> <li>fix(opentelemetry-sdk-trace-web): don't crash in runtimes where location isn't defined <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3715" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3715/hovercard">#3715</a></li> </ul> </li> </ul> from <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases">@opentelemetry/semantic-conventions GitHub release notes</a> </details> </details> <details> <summary><b>Commit messages</b></summary> </br> <details> <summary>Package name: <b>@opentelemetry/semantic-conventions</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/8fc76896595aac912bf9e15d4f19c167317844c8">8fc7689</a> chore: release 1.13 / 0.39 (#3776)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/32632bd30309621908da8166c6595a23af892f06">32632bd</a> doc(instrumentation): add limitiations section to readme (#3786)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/b8b63083869fb5850fd4830ded0fc509a2cd0f0a">b8b6308</a> chore: remove "opentelemetry" prefix from opencensus-shim package directory (#3784)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/7255da994fe79f115ceb9b1260fb171cf9313706">7255da9</a> feat(opencensus-shim) add mapping logic and propagation shim (#3751)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/32ae641ad13be8786cce9ffc3942efa385c0ab33">32ae641</a> fix(deps): update dependency require-in-the-middle to v7.1.0 for types and named export (#3727)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/2f1e31648402b310448d226ae9632b115e6ad5c4">2f1e316</a> feat(otlp-grpc-exporter-base): use statically generated protobuf code (#3705)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/abfb1bb68e1ec8a183c01644ab9673cd6ac74841">abfb1bb</a> refactor(otlp-transformer): refine metrics transformer (#3770)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/a96116db88c7c0a0d1185601942b379c6118bd6d">a96116d</a> deps: remove `rimraf` (#3769)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/98e4e821bcd5b3d74f95db26439a93c3abb9f467">98e4e82</a> feat(exporter-logs-otlp-grpc): implements otlp-grpc exporters for logs (#3712)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/9347ca6a3ea5f40b9fff33d1a9a3ae2bea7e6ba8">9347ca6</a> fix(http): stop listening to `request`'s `close` event once it has emitted `response` (#3625)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/6676414505f6ffc75e151fa162e351fa1de7204e">6676414</a> feat(opencensus-shim): add OpenCensus shim package boilerplate (#3750)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/cd0d8806e0ed4c9dc68be9773770349c712e5e76">cd0d880</a> fix(sdk-node): lazy require @ opentelemetry/exporter-jaeger (#3739)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/de354dbbdd24bb9f93edef6d098fe8484c7bc3ff">de354db</a> fix: VisibilityState type for typescript >4.6 (#3741)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/61aae103f39ffa20f4e01f23f4bfd6b1cc6f7e9e">61aae10</a> Fix changelog link (#3744)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/3e99e13a4ec55a94926fdb1c1c6f5955783b3ab3">3e99e13</a> fix(instrumentation): update dep require-in-the-middle to 7.0.1 (#3743)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/1b50f91850d0d503feb3a2aeb5c83d63598e8180">1b50f91</a> deps(sdk-logs): remove unused rimraf dev dependency (#3738)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/5b9534bd47deb2a15f7414ba7df05057f6ab9b1e">5b9534b</a> deps: remove unused mkdirp and rimraf dependencies (#3737)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/053acb604c9d2b735bb267ff47724bb3af1ffd62">053acb6</a> Logs version fixup (#3729)</li> </ul> <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/compare/a04090010ee18e17487b449984807cc2b7b6e3e6...8fc76896595aac912bf9e15d4f19c167317844c8">Compare</a> </details> </details> <hr/> **Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiIyN2JiZTJlMC00NDdiLTQyZjctYjEzNi1hNWI1YzVjMzNiMWEiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6IjI3YmJlMmUwLTQ0N2ItNDJmNy1iMTM2LWE1YjVjNWMzM2IxYSJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630/settings/integration?pkg=@opentelemetry/semantic-conventions&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades)
) <h3>Snyk has created this PR to upgrade @opentelemetry/sdk-trace-node from 1.12.0 to 1.13.0.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> - The recommended version is **1 version** ahead of your current version. - The recommended version was released **a month ago**, on 2023-05-11. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@opentelemetry/sdk-trace-node</b></summary> <ul> <li> <b>1.13.0</b> - <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases/tag/v1.13.0">2023-05-11</a></br><h3><g-emoji class="g-emoji" alias="rocket" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f680.png">🚀</g-emoji> (Enhancement)</h3> <ul> <li>feat(core): add environment variables for OTLP log exporters. <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3712/" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3712/hovercard">#3712</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/llc1123/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/llc1123">@ llc1123</a></li> </ul> <h3><g-emoji class="g-emoji" alias="bug" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f41b.png">🐛</g-emoji> (Bug Fix)</h3> <ul> <li>fix(http-instrumentation): stop listening to <code>request</code>'s <code>close</code> event once it has emitted <code>response</code> <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3625" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3625/hovercard">#3625</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/SimenB/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/SimenB">@ SimenB</a></li> <li>fix(sdk-node): fix initialization in bundled environments by not loading @ opentelemetry/exporter-jaeger <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3739" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3739/hovercard">#3739</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pichlermarc/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/pichlermarc">@ pichlermarc</a></li> </ul> </li> <li> <b>1.12.0</b> - <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases/tag/v1.12.0">2023-04-13</a></br><h2>1.12.0</h2> <h3><g-emoji class="g-emoji" alias="rocket" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f680.png">🚀</g-emoji> (Enhancement)</h3> <ul> <li>feat(tracing): log span name and IDs when span end is called multiple times <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3716" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3716/hovercard">#3716</a></li> <li>feat(core): add logs environment variables; add timeout utils method. <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3549/" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3549/hovercard">#3549</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/fuaiyi/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://snyk.io/redirect/github/fuaiyi">@ fuaiyi</a></li> </ul> <h3><g-emoji class="g-emoji" alias="bug" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f41b.png">🐛</g-emoji> (Bug Fix)</h3> <ul> <li>fix(instrumentation-http): fixed description for http.server.duration metric <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3710" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3710/hovercard">#3710</a></li> <li>fix(opentelemetry-sdk-trace-web): don't crash in runtimes where location isn't defined <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/pull/3715" data-hovercard-type="pull_request" data-hovercard-url="/open-telemetry/opentelemetry-js/pull/3715/hovercard">#3715</a></li> </ul> </li> </ul> from <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/releases">@opentelemetry/sdk-trace-node GitHub release notes</a> </details> </details> <details> <summary><b>Commit messages</b></summary> </br> <details> <summary>Package name: <b>@opentelemetry/sdk-trace-node</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/8fc76896595aac912bf9e15d4f19c167317844c8">8fc7689</a> chore: release 1.13 / 0.39 (#3776)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/32632bd30309621908da8166c6595a23af892f06">32632bd</a> doc(instrumentation): add limitiations section to readme (#3786)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/b8b63083869fb5850fd4830ded0fc509a2cd0f0a">b8b6308</a> chore: remove "opentelemetry" prefix from opencensus-shim package directory (#3784)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/7255da994fe79f115ceb9b1260fb171cf9313706">7255da9</a> feat(opencensus-shim) add mapping logic and propagation shim (#3751)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/32ae641ad13be8786cce9ffc3942efa385c0ab33">32ae641</a> fix(deps): update dependency require-in-the-middle to v7.1.0 for types and named export (#3727)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/2f1e31648402b310448d226ae9632b115e6ad5c4">2f1e316</a> feat(otlp-grpc-exporter-base): use statically generated protobuf code (#3705)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/abfb1bb68e1ec8a183c01644ab9673cd6ac74841">abfb1bb</a> refactor(otlp-transformer): refine metrics transformer (#3770)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/a96116db88c7c0a0d1185601942b379c6118bd6d">a96116d</a> deps: remove `rimraf` (#3769)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/98e4e821bcd5b3d74f95db26439a93c3abb9f467">98e4e82</a> feat(exporter-logs-otlp-grpc): implements otlp-grpc exporters for logs (#3712)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/9347ca6a3ea5f40b9fff33d1a9a3ae2bea7e6ba8">9347ca6</a> fix(http): stop listening to `request`'s `close` event once it has emitted `response` (#3625)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/6676414505f6ffc75e151fa162e351fa1de7204e">6676414</a> feat(opencensus-shim): add OpenCensus shim package boilerplate (#3750)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/cd0d8806e0ed4c9dc68be9773770349c712e5e76">cd0d880</a> fix(sdk-node): lazy require @ opentelemetry/exporter-jaeger (#3739)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/de354dbbdd24bb9f93edef6d098fe8484c7bc3ff">de354db</a> fix: VisibilityState type for typescript >4.6 (#3741)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/61aae103f39ffa20f4e01f23f4bfd6b1cc6f7e9e">61aae10</a> Fix changelog link (#3744)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/3e99e13a4ec55a94926fdb1c1c6f5955783b3ab3">3e99e13</a> fix(instrumentation): update dep require-in-the-middle to 7.0.1 (#3743)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/1b50f91850d0d503feb3a2aeb5c83d63598e8180">1b50f91</a> deps(sdk-logs): remove unused rimraf dev dependency (#3738)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/5b9534bd47deb2a15f7414ba7df05057f6ab9b1e">5b9534b</a> deps: remove unused mkdirp and rimraf dependencies (#3737)</li> <li><a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/commit/053acb604c9d2b735bb267ff47724bb3af1ffd62">053acb6</a> Logs version fixup (#3729)</li> </ul> <a href="https://snyk.io/redirect/github/open-telemetry/opentelemetry-js/compare/a04090010ee18e17487b449984807cc2b7b6e3e6...8fc76896595aac912bf9e15d4f19c167317844c8">Compare</a> </details> </details> <hr/> **Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiI4NWFlNjU5OS1kMWI3LTRmOTYtOWI0ZC0zNjhlOWNjYzVlOWMiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6Ijg1YWU2NTk5LWQxYjctNGY5Ni05YjRkLTM2OGU5Y2NjNWU5YyJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/sullivanpj/project/61dfb01d-4c48-4d8b-a40c-a3939907a630/settings/integration?pkg=@opentelemetry/sdk-trace-node&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades)
Which problem is this PR solving?
See #2575 (comment)
Fixes #2575
Short description of the changes
Change like suggested in the issue made
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
I haven't tested it
Checklist: