{"_id":"@opentelemetry/node","_rev":"173-ec84902c96251f08a3a58312fe78dfb0","name":"@opentelemetry/node","dist-tags":{"latest":"0.24.0","next":"0.24.0","canary":"0.24.1-alpha.1"},"versions":{"0.1.0":{"name":"@opentelemetry/node","version":"0.1.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.1.0","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"a00b978a7501be38fec953b6468563b60f2cf12f","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.1.0.tgz","fileCount":3,"integrity":"sha512-yon2qB3Pts8MVLB2iRYpPhnLuWTBCNhVm4E6kAzQLMNpUj1vW9MSaKH7m0m4wGpf+jFRUUTzcLDKZATZqm/rsg==","signatures":[{"sig":"MEYCIQC3PonJwMNZkqhQz/RNwk6mPrczaKq8V/CU+16zUAokMAIhAITTpB1z5ndPucmAphBLp8ticRvQxkysGMl0e13SkPHY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18593,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnRHLCRA9TVsSAnZWagAAEHgP/j+wPrdYZ0EcCWIbjX4A\nmYj2Q7SFwYeIqFHAWobuxnfk8qD96Au+Ql1pOM7P0WFYpybJbG4sDctpcZjk\nVm1VHCgdM5Z88FBOwgEeJdNr9BpuOCiS3rhassmqI22w18iMWv8bG+WF+XXi\nNV42W7VY8SGCXcCxAzo/1Ys2dZx0FgOX27EE78BoTgZ+5/XzmzUi+11vH/PJ\nWiYeaQu6idYmdfnDh9iwWZcJ2ymZ8mm517z7zkha5BWtsVXISvkCj7MhHC8p\nt8XqWA4C8Jxl5mQCz7RNYARWfHm84vD+ZjXofNOE2XdzUMJnFcGxrXTloZKc\n6/FH2fZcZ6nSZ0vkR45lLNzQwUdBlUVMN+qhXQDd8O1WpiEAg/82LNA+/lP6\nM6Dj3eMQ1ZcqW79QBvKWTzTFMH5kxK/Llisqrb/IlOWmwSzERHJW7N10NB1c\nmsA1gfOBuAPbssZutepqA6/j2keDlPm3SU2ECAjWD1W/jfglgHDgvgxQ3Lvi\nuPrOK4SJLn+ZWke/L9v7PX1KLR9cyYL3ntYyr6701T4XgALmHOhSRnqZnIO6\n8eYWJm2txsM+7wXEsrGp7U89cov5iQdfz0ef1wk1li4pQk2JNq23WAqjt0Ol\nWdkkV9etZ4nomDZMmvG9JuYC9TZqfMwRvcuPJk0p6KCGlVy3nXp/VZbIYTl0\n6xBy\r\n=DkxA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"yarn test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc -p ."},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/core":"^0.1.0","@opentelemetry/types":"^0.1.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.1.0","@opentelemetry/scope-async-hooks":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.0.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.1.0","shimmer":"^1.2.0","ts-node":"^8.0.0","ts-mocha":"^6.0.0","typescript":"^3.6.3","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.15.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.1.0_1570574794629_0.6570244302341628","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@opentelemetry/node","version":"0.1.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.1.1","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"81928e7a231e62915958c3233b7fc51eb6a7f746","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.1.1.tgz","fileCount":13,"integrity":"sha512-aXXgTJiiO53fwzWDwbFHljrIfZt3pDFHFRSPXxzKUsBqTySwAqLATXhIGSoMTNYZaLaUFguYwxdLNpcu4OlVWw==","signatures":[{"sig":"MEUCIAtl6+vSGcZt1NuGfb2GMzdSG+T3Mu33Cq3C6j/PBm9tAiEAuNB1qXRSEqAKFGyPWKYSPQkus6yhDn3P46nnYoUpTII=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37043,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdplsHCRA9TVsSAnZWagAAFQkP/jR0yc24AR5l+ZhXRnKe\nm91V6oI2PDuvf4rB25MBjRoAfiB6In2C5NIIqfbXN8rCkRlqWnSY0z+rlqgD\n9HENST/067EuK+ZkTSPCrQXt/ZTW7tZW2IwlQN3K1s+ozDiAIXI8zrosja6X\n4XXoDm9UQQa+IsDHJZ5U8nv9YZb7BcP+jrUxAV1QsovfodkJZAgi7h9UJVyj\nv5ZphpWaMZhK+HtUHNMbbWQZFFCLrJ7yq8vkLSVUP9iaPCpNgM8jZOJxVhDr\nyt0Dl8xlLnXdZvgVQdh9yjknBXn7KfV4zXqnYglEtO4WeJsV1U6916SYk5bU\nZw4fMe8hMyOTbMYmbHnounv9JpCCb/BgpfkPGnFkC52FQgKslnCqROaSJ3tk\n4pouqbaV+zV33AsjUAtRZY3lk2aQXTD6kBjKrjDQF7TDI0X/qA03wxeGB7jF\now7WQ051cfoJJQGvXeXCfscjCV4YTkoBw98ZQNDX560vV9XUr8U934s/vJaX\nAlch9fdLySY26vGrxDBuK+nqiE5UxFgxFSaUyJ1GPyiifsnQUH/Kx+sBzw5P\nAcoEpYYyZbL9YfeF+Oh/mUk2cSJrVNp0bsZs+4EKp41KK8g93G0oGIEF7Bvn\nIcouaoJ+TeLu+1fUUqL6mHoVPR0K/0CiH8RmadiPM7v2GaKXPNee/hbtEVcQ\n9H2a\r\n=4GhA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"yarn test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc -p .","prepare":"npm run compile"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/core":"^0.1.0","@opentelemetry/types":"^0.1.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.1.0","@opentelemetry/scope-async-hooks":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.0.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.1.0","shimmer":"^1.2.0","ts-node":"^8.0.0","ts-mocha":"^6.0.0","typescript":"^3.6.3","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.15.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.1.1_1571183366458_0.6253806127161325","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"@opentelemetry/node","version":"0.2.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.2.0","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"a5879c6c1f5aa8ddce2c5ae4ad157a267f8ad45f","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.2.0.tgz","fileCount":13,"integrity":"sha512-it9vquo3DISlOYGxJRPfh51NKiqQF6M/i6hMJRb9Tou3vbhhzXrQsXoBYSm7qzq5ve1SYlVynjiRo2aVUQh25A==","signatures":[{"sig":"MEUCICMHuIO2Sr7igX6iPSMaP3OCAJU2SaDZbBjjTpPEiWwCAiEA63RJeBlbdMDD2XsKFOHr8w+HBrmQt5A3yoVde9IGyIM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdwIeuCRA9TVsSAnZWagAAONwP/1ik+Ye4+mMkuWQgeR7i\n3lncK3p9kZ7avIcitU4SgUl4rDc/uEX+XEnILWJAOokJyP7iLsBWma+VI3T+\n/rYRzz+4dQY9GScO2i3PGC9J4QY1LtZJD4+R91pUY7KbJiLhBrkTqlX1rYrs\nEYXAdkxI5kIedBNFHbOBbIh2zafwio7uYPO8eOAAOFgV6xJHLhO5fkFUyRLk\nLu/iq04CVSFtl+UfBMQqyUl60oCtxuBnoGtaioz6m11ZRqn25rT20u4fWimo\nhmgFZLwsRh3sgOHQqWPoL9Ql5Y6idRIsEfQ/ZPcizGOsHA9hEUsmSc0e0DZL\nbr04hf0GgO0n6vERoTH1EoDO6f/BtJhLP/dqWtXa+oJjpRUkq8nI3wptOGyv\nWE6odYUtlaAaTlFbmCC5tL4LzHnI8cLocmfdsrrGTvAZWv0lSNyt2RQuC9Wx\nYSYYGeOqVGHDkeltd+w9zaAk3XBJp3UXm9mQIXYrU5sLSk1TmO1nnnXCzpQb\nK2gsoJubpPg+L0c3EDNjrbVWQbn257ZMWzUuCMQw8UJHYrdsYC7rJUTnLFHb\npoL1SlglTcd6wcm6qTPK9DrVl+X7LJqjQMK5IfQqAXA/HhHUF+GJJu8ORSFJ\nCdwMPjWfgw3NMKPBGkotn3meG6Y3KrgORjAxMjbApNwnVzD1JDoqRQT+psH4\n74yQ\r\n=7+R0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"yarn test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc -p .","prepare":"npm run compile"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/core":"^0.2.0","@opentelemetry/types":"^0.2.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.2.0","@opentelemetry/scope-async-hooks":"^0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.0.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.1.0","shimmer":"^1.2.0","ts-node":"^8.0.0","ts-mocha":"^6.0.0","typescript":"^3.6.3","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.15.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.2.0_1572898734320_0.2125686153594386","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"@opentelemetry/node","version":"0.3.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.3.0","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"4397c7712d489867bfc311ed0ceb12cfdcd058ec","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.3.0.tgz","fileCount":13,"integrity":"sha512-3lQrVGGuN8ayTB1eO90If5dvhEKuItGKLG/ZaPx3MI/zc6tSbvM83chVjCW8TkNVu+pd8lxBAF/iIbHgnprpuA==","signatures":[{"sig":"MEUCIG63RE7nczCdm3F6Qq0hSLE8G1CpTjzhxxCiPuS8girGAiEA4enatMevCJFiFciNMaVQLW0y8mjFHwWoy+IxUhpku+s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8+iCCRA9TVsSAnZWagAA0moP/j1w9/xpffTT1EHqqGni\nM+pbTJDQpMoKgMqP96yAwJbBvPZDrMezgCw1vBKPd/e6Vsp6ih8kEsK4Zgo9\nOhiqQru5JpD0c0nJT9wH9KM4TNhaTKs3F7QwkeDSSsZtRNPh7P7380u70nm/\nRCAO0bH3yT8CgWKrEPVFp/un8+SoA32jwcq5kd+BKxauHTYbrtFm996ZnSg/\n/uLm6e+j7dqvyBIElmqt9yMYdo/5LPXqQunQL1Am5tHzfpJLMwEMcn3Mrrq2\nij12dHQM2zTQNmDhGhIfVd5actabpI6ktnDZ6IzF+ScY5duG80E/Y7HbUNbE\nqu1PfjW/bSsrSTkgyul0CTNJuCMLSi4CtnUKDHtEMn2YeaB6De4VRs0kn/gD\nOH6JeUuyl2bdOrBXuX0xcgDmZHrEMlHEOJFm4y2n0IUqOZEust4MGmxJ/DBc\noTJoGrEaAAimNwjaORWGt4S7Qaf+6UcFaYQgboVozJkT2oBIg1iID0PwS1wk\nusYFWVQnvQIzD96iHQ7KXRyhZTUmio1/UX6rbHOZroOqZvA+kx1HBT3FnlyN\n3/UyvFAPs1AM9fj/n6pZAsbXgZVLnzjlEi3OyMiKvyU4Z7yszHu1kidvvbA7\nZSqWAoPste2O7HQbeS9mW92Ydoy2PdM9t+CwrEHqmMB6xebj2jlFdDslf9EN\nwrJc\r\n=FhxI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"yarn test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc -p .","prepare":"npm run compile","precompile":"tsc --version"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/core":"^0.3.0","@opentelemetry/types":"^0.3.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.3.0","@opentelemetry/scope-async-hooks":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.0.0","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.15.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.3.0_1576265858264_0.1762872017865642","host":"s3://npm-registry-packages"}},"0.3.1":{"name":"@opentelemetry/node","version":"0.3.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.3.1","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"41dbd492826d486125c99c73bf9d9e20d9835acf","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.3.1.tgz","fileCount":13,"integrity":"sha512-FJrvfPSKnrSAnuJGb612XRhrCZfywh+dU9Rj10Fsw8OFagCh5YGltiveZsTTyXrXqrBudYCLck2MbrrwRQ7cpw==","signatures":[{"sig":"MEUCIQCW+Sb93Yuz2dku74VMjqGNw65CP7HqSzFc+7wV+br+AQIgGtoNS7u/993rc99UuW+PJgd6RiYds4BbsVG8IQxeLAc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd/WDGCRA9TVsSAnZWagAAvKUP/R31KZQDsLX9LKwqbMMm\nzcfT/ekF7Cyhrp/0U3mSXZHFP4U0LxuqVZrocjlOCh2wVHKYPABRel9Ra66o\nTNT6313++57cE+ox20GEPHXEWwitLwv1sUb9RELv7RML9uG1lIzZaQFml6An\nZkMf21q9uXh5Z6mzV8GBBYNtMd46r7HRyoXF/8YQPU3j8kI43syX7yYOLalp\no+nozww4zBd9pxOlaGmuXxK1cXBC3lbzf2OsmqeftRAsbiQ9SrUVk50+wQgf\nTVxf4BBTFCYSfPE6euu0iqMnD3XN1i6CQ806Cfc/8cbdExUU9UCvAxDrA1yU\n44drk5Fj53ZS1qgW7tuEq/Si4weuJllwLbDqElSS2PacQb5xBSv12VEADkum\noRjaxQfPG0cn2FwkYHHGDj+O/5in982df3IWhwWxiYoC1kTpbjHQp+nIZx2P\nG3+0L4zZGjIVYJkDI4u74YkUQIsDqK9Xq8PXPH/MMZ6/8G/+aln7n+dHf2Hj\nSZAX8Oyg31bGJs5G/KfGEcXCrLvZsO/YFCoo++6gxuk4bfhRPGHwbSiP9hQq\nivSq/illCle2PdM1bwLZJqqLHQN2pSCpuyKqSg4y05w6f15UVQbxO2QvdXR9\nViS5JocdMtRvbbaqyHulAOShCU0ztzmLBiHLnCogwCGW49vOaP50l5rNErhv\nIVyG\r\n=V80L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"yarn test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc -p .","prepare":"npm run compile","precompile":"tsc --version"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/core":"^0.3.1","@opentelemetry/types":"^0.3.1","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.3.1","@opentelemetry/scope-async-hooks":"^0.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.0.0","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.15.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.3.1_1576886469624_0.9388958839349202","host":"s3://npm-registry-packages"}},"0.3.2":{"name":"@opentelemetry/node","version":"0.3.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.3.2","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b50a5d26b03468f6b4608a6ba72028d1c8fc372f","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.3.2.tgz","fileCount":15,"integrity":"sha512-RDlPcfKHODEtov1vaxDy8vun7eQtHN0li6laE+I6W1KLWKniLunZ6lqWcRZDIlh9ssUuPQlBWM+a8+X0fzWQoA==","signatures":[{"sig":"MEUCIC4PMa+yxFZ6tvv+rGnq5GHp1C2PoZ4tsIzgUR8tHQ4QAiEAps/RAqOwFUUT3/Y3a7EmUf1wBeadHqBUc0KyWM9fiQ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeD7jMCRA9TVsSAnZWagAAmQ0P/iOmXWhOyqAnQuJGuXCx\nBc/e/lrOEP4lrAs5wt0aOJheDCZSUdm37ljMjovi/oG4akgiv7WXwUhNvN8C\nxxCm9kJ5Tn5aGMU93mkeA1CFlFj0wV5j7PGW4nXjY/xW6Hxb5DX5Zt/b0Mnl\nypdWulzGf7KhsigeNpz/+rVFNmdTGZ1brMkS8bJdjmolYs7yz23m7NrHmYWj\n1t3TtFfthzHJcmlZn27R7qWwesTJmK3elGNuehKEMcAOIlK9FbvTdjn6Mz8I\nShJ/0A7JS3EDWpQqx2c1y+sXkegJuNBXSJ4gttCEq7TnZYbXTmTrDAUTVbhd\nSR30ZZwRhmrJPcM9BjC8Bs8zq6aa+6cnHXpo+5rlgk997E88BSoMUuQ3eGuS\nl8LJX7CyRP+ciEmPgxRj5uSdxk+iTlTXsYcej6CrcqUk4dodivCIl22Tbtgz\n9IgvoZwFpvcy6IBBv5sCpTIBWW8Z1Jcqcvisg01hDvDIgPRhvlzmwG73bTCb\nb5f1PVybM26/kVfRekYEyEB8a6xh08anyMWy3nN7DMdPKvZPSn73b2cidn83\nM7YhRSF+uoOUOyit7CCAwLs/0cY8PNmR1OgxlYkhxiPkEB2cTlnJSuebXpy4\n3dMtOqVbxJp4JujXqNNoj8/a7HF3hnt1x1AOaS5lJvbsMG48dMf9g4B493tG\ntot+\r\n=+nw0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"yarn test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/core":"^0.3.2","@opentelemetry/types":"^0.3.2","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.3.2","@opentelemetry/scope-async-hooks":"^0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.0.0","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.15.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.3.2_1578088651612_0.855260170170949","host":"s3://npm-registry-packages"}},"0.3.3":{"name":"@opentelemetry/node","version":"0.3.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.3.3","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"ae8323d518b16771151383d5d0930ba4db62e1c5","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.3.3.tgz","fileCount":17,"integrity":"sha512-g+o+vMB8c7cHbKmILWHmOiLpcZfaFJiZN9L43FAOodKCJa7TkYU8S2Bnpq8t55Z68d67kaFcmdqsnz2o9fPQGQ==","signatures":[{"sig":"MEUCICpQyxMLwta+bySaXoTRFdI81lVhNgVvZD+zOzbevu61AiEAusD5JhRTzLTBU6dPeyvybyWVFutY9S0B6rE9lcOoFWI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKNFVCRA9TVsSAnZWagAAddsP/3ME3yHEf8MNwtXd1yxq\nDHqXMk9vU3GNj3LFnWK2pyoEqw7yuVLG8JygmcVbYptCn82yKz7SCwLG1lj0\ncrAw+pC92T2IuS7uQYZqV0UC60TCVs972TXe8pvWFrR+MgXA2HPZLYd7nw5h\noCIOrAcD/0VCjKNBcQCw4VjQFeewIiwIGp9frVpyhvOWigmDu1joZOg9jGA4\nZS/PEmvRiOljiX+A3JjABl4r+1UQwUyeGZ/B1lMetzZ/R48PwS68vnoc9R46\nSmfHvT2AQGDprh63SEZPwim8JmWdAa5uggMhOdUVIfenK30g+wRkKESnslIx\nQ0YRQtRoP3ez/wEVZ1NB7xKl7U+dXpkPg4AxOuBY3s8TOMgmEQrKpBrrRfkV\nS88i6gWX4g7AcNBIXefY8JWfU+hJGYZBmUsim5DFcYCVamNHCR/TuB6waVlI\ntfdwM84sqJJLHFJnSvJIwU5g2RmyxgvS0983c//D6h6NyPW5DPps5buY4BRD\nDP9/zQIGLNQh9ORXbJD0+FitkT50NlbFFGPqaFOKwjYGHczIeazbIAg0i43+\nO08NOwyru8nILtivaoQZdjUn36GFhk4wpTImu+57SbApPcvrDe73muyObNc8\n3DH/K5v++ckk+D5tb1v0fUaORhk+GhpuTcF4BFkCQmk02XJXhO2ujXJft94F\nHH0S\r\n=K17G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"yarn test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/core":"^0.3.3","@opentelemetry/types":"^0.3.3","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.3.3","@opentelemetry/scope-async-hooks":"^0.3.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.15.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.3.3_1579733332740_0.7805488163724037","host":"s3://npm-registry-packages"}},"0.4.0":{"name":"@opentelemetry/node","version":"0.4.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.4.0","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"093f89e5d364ae17db0fbb1d52d186296bd5a204","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.4.0.tgz","fileCount":19,"integrity":"sha512-dd5JPT893f1Q/nExakAmI/g7qlIiSMSqkSC66YcSmIQ7WdwWopNHRskmZ35zXeF9p/DcdTRhxGOYtFvIn0g2/g==","signatures":[{"sig":"MEYCIQCE4EkB2knBfBkS3nuhYsSU1W7E1CBRXbVkqUxpSSGM8AIhAJoPVePG3jAom93jvSABh1buU74qlmkowF6kbjLmM1VY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44656,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeO0nWCRA9TVsSAnZWagAA0UcQAKNsceHr9qKfTf7geGRB\ntCbD3gWMR/sF6r/SoiiZ2vAyeOD6ucnwWmuKeCu887HK0r+DO03yD4/1MqKk\nupVm9dyLEus3OPgIe8BiVYU8yBgoiuNUGnGj16p5iI8avVrAn7P2jrLUDbpS\n3nRtw7IOLxx+k57diI0lNXfLmU1Qcj4wWdVDN95GZYYS6PRPb4UM2zgv1d04\nECiGoCiISf4X2bx28WjqGPT8CSRmToMfyaH0HPo/tJYbAAhKf6BoVV4hynl4\nKz6x/U+El2zI/Uh/rz+qvxUnp7SMgIfCO0vtgoJKlqml/oogOH656x4of1qV\nthmldUFU2Wn8k/clsPzmL56ZFvyognR6jFyDhguaYm47TbDjiim8dPWgjrSw\nUREZHHW+vW1SYLLvOtMToVDy6vMg4DCMonLkO+sDn5OsqIDvrbiTD+UjW+bO\nUWqpY80zHjqSIbKlaWnQIz3ORbzOoufe6UJh4oaqaiKahS8csxcvkKcWXK7v\nyOwHLOhUvFKeGEZbrhpujMY2vEw+kgsS43/jLw0oWtgvNjxYZojIs2I5eVA6\ndRHchHIsH9kFekeyhoF24F9Ef3Tve9qT2+u8g/YlZs1Hb3ZFmar4zCHXsHfT\nhgUguWj4czqn54reUGymB7t3ge0SJNbCtfKkr0uFVK3w80DoZ0aAgr8LoBQC\nKjAo\r\n=UU61\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"fix":"gts fix","tdd":"npm run test -- --watch-extensions ts --watch","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.ts'","check":"gts check","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^6.2.0","@opentelemetry/api":"^0.4.0","@opentelemetry/core":"^0.4.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.4.0","@opentelemetry/scope-async-hooks":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","tslint-microsoft-contrib":"^6.2.0","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.4.0_1580943829483_0.3389379726033548","host":"s3://npm-registry-packages"}},"0.5.0":{"name":"@opentelemetry/node","version":"0.5.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.5.0","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"498348d8dff6c0076135f8a4778b503cc74d94cc","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.5.0.tgz","fileCount":15,"integrity":"sha512-vZYdA/lMaXubiDsCh96CC5KpCM/646Fej9pdS08FgDnauhKql0NMJXUAuaq37kGXIvRQUG8q6NotqASeV9CtAg==","signatures":[{"sig":"MEUCIQCeNbwyMEWMsCgGLuz3MuPeFsQVPItIfK54x23bBXN8tQIgXmlHFyx/yn068urLv7MR62Ah3t10npsrefEjs8QIeZg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeb/fkCRA9TVsSAnZWagAAmpcQAIGcyAnC5OHn4C49QpNR\nsiykceDld5CfALRwEl9lv5E5BPZhjfwfKS5ABSBgEcSquTbQYL0k1IuIGJ5v\n8pimoFFAu+v4c01ZNwP492ibhOEMpNrGwyOy0iDMHEGTKWBpQoD1ymeCABTX\nRlvy5xXP8spsvqXpIOM27hBslvIbZvOb54JTSUS1ZFweWoVGZFhcb+MD3hhV\ncl18dx+a0knq7am1mXPWlzUOmDb/sZjqEBQS9wAArGtcQWeC5ANCtDVvXhjj\nrgi73/doTB7cF+cxWL9NE480nBskHP/1sHxk9kY9fLwTYUd0PkkWGwn0Soox\nnqPf1V09+TrQftoXCme2ihEfYfpSIilz0xfMtsI5krHbPXbPbkqk1t2ln4O1\nhol0OBUUt6KNAE+eswfdNaO5qgPXRWCAZxxfToGrbDMTrEYjmdQMp9L8N00H\nN9C97u2/V8pFDyzT7ZPjN/gc73QJDU/KbExSf5DDOSYJVgeUaDe8a/mc1kSa\nbi6su+v+cG2kvsUwlpMdkM526RaPTqiNTMO1bMrihAvkQD709j9uo6l1+rct\nd7U8xnr8XUpcjHVtMlmhLI8fCREnAG3CUwshQ9BaUqxm3NcmmdW7uSqr9hzA\nmWnl4ckbXnHeT8Dv+w/hC0msp19SWifAX5LjhzX8uifOfcVd/sNgotlHiARW\nDoRE\r\n=vvIf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.5.0","@opentelemetry/core":"^0.5.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.5.0","@opentelemetry/context-async-hooks":"^0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.5.0","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.5.0","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.5.0_1584396260327_0.2227486210668177","host":"s3://npm-registry-packages"}},"0.5.1":{"name":"@opentelemetry/node","version":"0.5.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.5.1","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"fa94e8345d6ee2ee9b866f8fc94b748e75c3c330","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.5.1.tgz","fileCount":15,"integrity":"sha512-VIN8FauLG4rLEOce3BfYASr9F7HdRZYlLdSM/F0xPY3gknUILuqkIdeUVx4EUhCkwWkBZ9m0sHvJK/+qFjaY3Q==","signatures":[{"sig":"MEUCIQDSgfouRYmh4RHVt9KeTtNuuFxw/6Aq3OtxmIosbOBVJAIgC1P6fSkWhERtw9ilOhR9zS38Xa9vPJL09pNIQVNcev8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJedBJyCRA9TVsSAnZWagAARZQP/ixeAmqQuyU/K/OmOf2J\n48XCbksyBhZC82EgnHGzHk+D9/FvzwTT45gXZADf2g9dqLxUwD2byhp8N6KZ\nrnD1lF9BRfRIZwPYGAfz3ltEI4Rq6YrJI0hkmc20tiLMbsmdWqx1nJIt6MOB\nglD6pJBdRoqI6/bZ/IMOWamE9QZb4QL/R1iBtGVAmHWVKfM7EvtdI6Z9wOaf\nCUpfiGSNkJG6Bk1zZJ2xcHIG7K4q9VDtL3TOL3ueEVbN4WQGBGstZI5vJcr1\nuDUHTyTUhbUDB4m5WlkZgDY6xzgXnVxGFGOPF2ASvbMQrZLj+RS61KdaKdlp\n5X9DysCGlP85du5r/2sBpIM5kfh4DwUpsDWFmgoUBRZcmloMvLjYRVEw9YA6\nG5tNjWsNmB90KPEjkYbfHn2pN0Blt+fycFiuJ/PQi7h7eTkCI8PVZ0ujN4aN\nxg0Sl47uZdFyxn34Nqe3r+8hBPsJTs5wAQkdM2xHC1jH3OWw6J+SjO/NResz\nDfCmYD1fTGbC8ru5aVQD0pJBv1rvNFCGInbEcOy6txmNa2JaYAHMGW6//zQt\n5jpZCigHeAKbsNREqThgaPMW6FunQ05k1hfnN3LRNJHZ/z2etFwvNgLcBBNk\njEewqjDgn6VNszJvv+AXOkq3L2Xn/UbmVg14wBOpW3osWTjBoxMT3jsFjqT6\nlgi9\r\n=8SzR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.14.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.5.1","@opentelemetry/core":"^0.5.1","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.5.1","@opentelemetry/context-async-hooks":"^0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.5.1","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.5.1","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.5.1_1584665201922_0.17130194615665428","host":"s3://npm-registry-packages"}},"0.5.2":{"name":"@opentelemetry/node","version":"0.5.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.5.2","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"3fcc82407dd2f9bea8241ab844784bbbe01b1b2d","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.5.2.tgz","fileCount":15,"integrity":"sha512-jeG/2X6vNgQR6CUd73od70MgtqG6GLMd/WvCRQMC2T1raYvyvkt2OLbxfS1phLh3kSQvT8YHGz83Z5sMb1rexw==","signatures":[{"sig":"MEUCIQCV53Ula/szByQSH1LiFGSwlVO7w43NK6d+siObCg8s5wIgCCiAS1/NLIBLrcqKv1FKVgXaBzMOXoxBuqLbVShziHI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJefkAnCRA9TVsSAnZWagAAdD4P/RgG5PzzfbICrQaOEdmt\n8GgGwQyp952zFkEs28wqRkNXhQKOQf9aEjHGdPwJerXEuYL5V6UPJvHs6Voa\n4tHiJLT3b2tYooyLCnSQm+4dIGDkduikxcN5Yg1NuZXCnx/ebg84UinhGHC9\ns8GroWbX4jS2RcigIFCTD7q8JJHWcECh44++E/CXPy7B/C0lrveuLKp0du/d\nMoPuoPNy/oSrMFVdHyBYAsVKPB6iJRQuFrjVt3+IDiiHcC6TwcYYe/5dzOGE\nq4+B0B90/OjrZVaudDQLxTBJNkvTag4xNrrNo2FKYCBD4z4/dkI5UTTCkYDJ\nHAw/ooOjp5O+JSsqlra4ThqFFWOc2BH0bHGOgXF4sRTDoNJGL3sk1kgS0og6\nxSBdLF43VQUeDOD3DBWirLNbqAPrhEP9b+eNjNFDDPqdroG3kLiZhnAXwsbQ\n3GqEZsqZUlEJZ74+P0oZi/9Sif8ADE5WTPWTe6AHrXjTgILB1QGcNjVydFth\niJSg4zSyD+ZwLm+suUwVpKQlvF1v54jZeQMy+Rs5GQAVEQzjBN+7Rdruf8H9\n0LwpjTNvIkMMsT0L6T4Bb1qv0IR0KC2sEeAuySI720SDwLRatMU0tNVw4VX9\nnSMbfJvzEDxCd10M343qgOo5gFIe1emrLv2u/ro5E71pqSfJ5PTgiIjwP7+G\nU1By\r\n=rNVJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.14.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.5.2","@opentelemetry/core":"^0.5.2","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.5.2","@opentelemetry/context-async-hooks":"^0.5.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^14.1.1","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.5.2","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.5.2","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.5.2_1585332262841_0.5054946746303157","host":"s3://npm-registry-packages"}},"0.6.0":{"name":"@opentelemetry/node","version":"0.6.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.6.0","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"befa5f55e455e12582cfb9703df5f6c68d51aad7","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.6.0.tgz","fileCount":15,"integrity":"sha512-weu1KUgdT7E4HnBb5yeUn/w9PBHWrWrXaZrk+uqFiGmidz7vEwtXcEo/4/NLQXf9Q8t1kwemllOWSc1uc5vOWQ==","signatures":[{"sig":"MEYCIQD2H+PWQVSHBzG66Fq/GP+1Y3RJnPUimvrwEDuHqXnVqwIhAI/Iq6YoIAsLY39pW6W3yi48kUNFoiLyzRcFJuVlgLpf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40613,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehiEfCRA9TVsSAnZWagAA+RoP/0XIm8XLY4zaIseeuJtE\nUOu5TEzyAej3tyF18ZsTuCZC7Su0zZObP3RHWZ86Uu4+4jiemgk53NE4Vmk5\nWtolXzqD9dDKNbM334Nor9SLWq3G0ZQvowzKNeDpTQB7Qy7dIz8IUTD3BeY1\n2OeEJHfpf1QbwY8fdl8tWwztdqa5L8o7GpREqQMt7Dfhs4CBfQDa0/he/HL/\nFyRHud9dMgpdBJEp8ZI76chQWzOgDjzp79fuVkdOUyVmBgBzdeSSp0lyoVWI\nutaxc+wHqgsBJ58iII4a2ItEMD1V9XUoGxT/X2MlWm6ruP4S4bZQF5NmrnKc\nTuTfGLSQoJ4zSnholVZGKQG6c7XhX3CiGJQbpSmNPu0wkK/2PbraA2awMMV9\n/ZIxy8fcBxSMfs7FShCLyab9IG3/uX3yR7jc9Rjfc2gTqZs+f3UDTX84q2rh\nZ4WPePadPq2iRPz/O032jb9+IJ/L/kXxLjDVw4+7AGTRfrr3rwOF+70pCZo1\neYee+R4hIjfcjEUzleegXz6LLTaF1JxXcMKceCo0bl3dqrST+Q+Ezf60K4B1\n+zb9J8Qcnu9GW7E8Cwt2RMQRYnm1xUzIh6+XluuuklYF51/nWL0Q5uzG/t8z\nzG3QgseNWDCETL7Yhv8aES/V1iHHBN8JvCPHwASR+VIe1FjKzS8YOeRLwWui\nX5p0\r\n=Mbfh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.6.0","@opentelemetry/core":"^0.6.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.6.0","@opentelemetry/context-async-hooks":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^15.0.0","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^5.2.5","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.6.0","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.6.0","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.6.0_1585848607185_0.22720588487037618","host":"s3://npm-registry-packages"}},"0.6.1":{"name":"@opentelemetry/node","version":"0.6.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.6.1","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"cadfb75985a9b75c99b55602c260b64b826e1d04","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.6.1.tgz","fileCount":15,"integrity":"sha512-I2DDOnATTMi/96tY9pxnM8avXpz0pb1nZhvCSTW0sHLB67CvH71vNDbFlWG6zSkZd9iYg5V4wZU4z8x1AjBFHw==","signatures":[{"sig":"MEUCIQC8pXQR8CJIEB3jvfly9HDltS/OXTcYD7akL8e2X/EnHQIgJy9I3323IDKP7b/KpqXtP7Js6PHs68OpHiEZNLVIdMc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40599,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejhoCCRA9TVsSAnZWagAAABEQAJMLAwI/ZIqSn1JUjtQ7\nKyrYRVk3jhPXOnjNjLAuxl25W+JnHm/bbkq+uZ/Cy6nukx1CrQ0j3B3O2lEM\n90o71+68+IbMaxPvMzgXoYc6Y9pdk65TeJSzvZphKFqehW+kTsYvWz3xQVjO\nXlZXomI8FbeR+Vk9uWm/nBb5LeuCrKjMLNv+xP1G46m++UzWgzphFIsE+5e6\nHk0scHakf6M78seoRlibUBwuP53DMpd6tYEQp3BjwrtTBpSgZE9iuEZ05QDo\norf8KPiNIMMxl/TCI34X53MaNyqPdCNM/rfu6auyfZFJqTbokL08mGdIi87y\ny1PpkVaCAEGi1iwVbeO7MMqqIAD7GfFIAUP631PNIk4WPq6FXDTdtI4e1vGz\nFDWa6x9V87Qui/kDFQpOqrr55YXRtesN8gOuOwZPQqtn3zoL3SNZLwF+U+ri\n4bhFLUufVWD/g53F1yrWllvrUSdDxYrCfBNN7TDW+LdR5B9nDbxO+DBbRTig\npDG/MxLg9UicgfGoQGjv9nAQWMbnyCYX1FmrczgEP9spaGps3zEoXFM0Goxu\njYnzDXx6kE7AIQDyn9fzHIcQ7jtnIUzEsus38P9B23CjPa/ifuw8C4Alohus\n5E1iqTb5ZLmV9oXXkxiBDIvWfWkJ7psl+4KBvp1GUXLm3DiGRWbyeumaYTtv\nadpt\r\n=z6eA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.14.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.6.1","@opentelemetry/core":"^0.6.1","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.6.1","@opentelemetry/context-async-hooks":"^0.6.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^15.0.0","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^7.0.0","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.6.1","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.6.1","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.6.1_1586371074035_0.600969364682697","host":"s3://npm-registry-packages"}},"0.7.0":{"name":"@opentelemetry/node","version":"0.7.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.7.0","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"340793a39d88b20d344dbffe7ccaf99b01d3c2cc","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.7.0.tgz","fileCount":15,"integrity":"sha512-H9vwyp/LinkpjABaFIbgxsCx5rXDlI9B0yVcJ+2kA9yTkFIFEKthHjKtAUPL7C1N/4yHAzv+2a7MD1JqHQ5J+A==","signatures":[{"sig":"MEUCIQD5de52iIrD/Dl7FC1+VxyT14V1Ss/tGTkzaszJ/rx5aQIgA3UQ9qbunJktMRdZUhzX7Sr32utlGv/dlDDxqN8ddc0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeoyzACRA9TVsSAnZWagAA9AMP/0eFj9PVLvIUxnR7eoju\n0szdWNXfGr3XWVPtEoP7hNd+dM4igTKzSFfXyP5ChbTvPMiKS/zSFRZMczQ2\nBF0Bv7Aez6MEKHamLQHNcGiYQxDuP1TdLEi5bvucxV3VaJrRAggykzot/Oy3\n3TYGSjBZLkaYpad1QbdIGqQKCfE7/hEK/zD7GdwkHEjWiLwdSqjRY8ICEyiW\nUb8uRDvMOFwaROb6FN9Gt0uXKu1D18ckuMxypauJlx3KWpE3es7N4p237rhE\nvE8OOw+z43Qy/F/HvvVnPVR+BVmbCDVmv2qgyS1M/hevJBPCnF5RWs+j8NQs\n/yFFcwAX7CEuaIMlyZMMZHZ9nxW972ItivJeux7gimTcvxx771jLCwkIOS9m\njgnphICnw9dO4NLVr6e2BfCUhKCvpGPD+9wGOO9F3tZbccWGENQc5sv7D8xZ\nxVy+//gXVvfiiGs7GilWRQ6pxI184FQJ+UzPGHnMAu65b5KMYsCwo39k4nQb\nmSXYkhWo9qS+qmGRBZPDlq8iejUoAitWesuC6Es8j+DlJ5AovmLZ+O/pBpsm\nhw/waYPEsZCRbGKCcJ6y824cHOlDouym+zw/27ZfERWRe25nTfb1ckqxlwDl\nHNJW/Er4rTvUkF+ykT8ON4uSkiSeX+iJ4hO7ZkEK6nXXA2kDCRmFCX+Obi7j\nepy0\r\n=BsB7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.7.0","@opentelemetry/core":"^0.7.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.7.0","@opentelemetry/context-async-hooks":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^15.0.0","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^7.0.0","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.7.0","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.7.0","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.7.0_1587752127856_0.16804052471522368","host":"s3://npm-registry-packages"}},"0.8.0":{"name":"@opentelemetry/node","version":"0.8.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.8.0","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b30a3f64bc66e42570142a206368c9f91b59983c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.8.0.tgz","fileCount":15,"integrity":"sha512-69oS33UV8XixSrVxN2OeU2CTE8Sjk+g046p6nWK/M6HnpxG7bHusKqEqCCxg3EHQHZ0ufKwOxqNZ0xIpqT1trw==","signatures":[{"sig":"MEQCIBJoBdTOXxnEe5YLytBQ8AfwMUPJDp5xOGoUlZrtmOwoAiAqGu2ZC9WkU8a0Rmd6bussRm9v9iivBS3MLdD8VQKvaA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40903,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeutDYCRA9TVsSAnZWagAA7aYQAJ2c7qlc9qz34ZiZIxdz\npm4Gw9pQKoU3mKOCnRwcFK2qho3+5Xtl80M9zfwpsE6JW2B7PkjBFBN4zuJl\n+JRxs8b+wY+HOC+D2ERxVMoN+TtKMJmlVgfRQ75KAcR4+gOahd9agAMsHsP9\nGOc/5RwIuEZrQWw+k1Wv1mHNbLwesI7oKfjI592Z//BQjHMu0WrtDDPIHX/X\nkC1/Rv2rpZX4k6Zc3rmbKfxBVSxubudtHToVWhTyjc2JNV1Qajwod6LpRCDW\nvDQrK2AMJZG68BgPWKEpDNeld/Edw+ccuQGXKtuhm55GYTGz3cePmaKfTeeY\nEE7ABF8Zk10ZUFamtSdfhaUzI0Ks6LjTr+e+CqkbSRs3g1XN/0UQJy9MJ7N4\nrE0aLjgmNfBvHjzI27iFcdcsbvM+gaqXDFif1XkAVwfbNGcs1I3yT2sLbX8h\ng7zhVs04cmZJxUwCnWzyO7JvbitV3nbOWDiKn8Pogq8k3M+HVpe8bKR0pls5\nflGOEjj2Wg2tKN2p1F/mnbrPl8dps5ZvDVo0e7jwEry825JPk7dW7SmdyxVI\nCTGF7/l+4KtjWI6mBBl0U0gDb8r1ELf9A1mAOrGOBYE2E4r4u5atqVVXxE22\nRaALa0YPuaQTWyYwQy0MnTrfut+/ORpc/N1sgkiNJbJB58N60tgoMFZg8+SI\nj4Qp\r\n=bqkY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.8.0","@opentelemetry/core":"^0.8.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.8.0","@opentelemetry/context-async-hooks":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^15.0.0","mocha":"^6.1.0","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^6.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^7.0.0","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.8.0","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.8.0","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.8.0_1589301463615_0.5467262342529549","host":"s3://npm-registry-packages"}},"0.8.1":{"name":"@opentelemetry/node","version":"0.8.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.8.1","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b7ac0dffbb1cf277d7ff050c6c3d33ce02b62a1c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.8.1.tgz","fileCount":15,"integrity":"sha512-ICP5YgRM3bbdjAT6l3seyOIG4iVemCEmarOcccDcK4jndHnpiSUgd/s3A8uVHiAJCKhL1wpY6g/IFyaSAXtQ3w==","signatures":[{"sig":"MEQCIFzLT8sVSYxpNRAXlbOfCTe7qEy92lIr4IqeNYbRbHSSAiB0tCcIHRRReDthgkqJNuar2rS030S7ld6Urpn6nGoMig==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40903,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJewuQUCRA9TVsSAnZWagAAaDIP/2a8EacTxwbAuPLIRVaN\nNaJelck0/8lpEIenZtWBP/3byYeWbgkYNjghZuL2FUdJMi+oF+sUAD2X6vFB\nL65pOVUWol/wfkxFd5y5NqOs4M4IMNlotetPx7Odq17DGX/2IE+EeQ/sW8Xo\nt7FXYvcDKPFBO8aDnCp6sE+EkFfAc9N0sDJvPB7fFR6xtb4B7Rr+e78z3RTU\nRi0r8YzBpAK5nIv7qGwEYpscX4bFXXw1plhHb1Pw7XMRQDOuyZ+AdNx+JsQc\n7PXMdEHbHkJcW9QogYiX2T+woW67wWggjmVBNhQEkU23yL5sNpATWRQqWDQa\n9+XMpYIofQrkP7xwIUyijgTjZe2d9cTJzYMylpK8VFu5L5Z2FxTjFUp/OLqu\nEGxpd5OR/Ep6znZulW8/Gz3YC1wYshIJc8K0wO4Kj1pryCU46/AV5R896ZFC\nbwRWO+W82u5mP1IHcoeA2wksgc1jMOCJsMaIxWYjKT0yF+hW5w41zWmv7YI4\nka92LjC3lnZNdNVuqlhKh1gArC/Av8U3xjnAfgbMkUdX37Ykx1OGsptvM2S2\nPf9hBK9HxYht8SRU/AtrEv1JHaEwZ5Iv2xonqiXrYQ2uphbipLSDQqVw8d0b\n4JTSfSwrNqaRxRmfgD1OAqOaipyV+Jr/L+lH2ZaLaiOCcGJA+drLSJICb/yc\nFXoX\r\n=Nkwe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"gts check","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"gts fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.14.4","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.8.1","@opentelemetry/core":"^0.8.1","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.8.1","@opentelemetry/context-async-hooks":"^0.8.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^1.1.0","nyc":"^15.0.0","mocha":"^7.1.2","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^7.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^7.0.0","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.8.1","tslint-microsoft-contrib":"^6.2.0","@opentelemetry/context-base":"^0.8.1","tslint-consistent-codestyle":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.8.1_1589830675955_0.9491002232982857","host":"s3://npm-registry-packages"}},"0.8.2":{"name":"@opentelemetry/node","version":"0.8.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.8.2","maintainers":[{"name":"bg451","email":"brandon.gonzalez.451@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dkhan","email":"daniel@khan.io"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"7b369e7363dbf4b6a968f799dec9a58afffbd318","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.8.2.tgz","fileCount":15,"integrity":"sha512-AMVM//d3na2S5wzpULO5UjlNd2d72WBNghzs76Mronblw8vZ0HQEDgHvwtJs0+T40wtozl6Ys39SIsYpG+StSg==","signatures":[{"sig":"MEUCIQC6xSJm/rBE5Pyw6eIkxFakioCcqT2vtok/3IfXuDExMwIgQa7FVesnWPaVnU7GDlPhtb4mpw0MA3GrleWcst2VpSU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJextbMCRA9TVsSAnZWagAAWX8P/0r4j7hW7u/T7X8EsWCM\nkVjIJb0A8bmZtGWu8AuJs3w9oKcWhUzbzS8yVtLgy0lDbPrnKwgt/OH/jZfZ\n2AoOJkfdDroVOgRqflUq+uFs82f4RduEhV1Qcmh8fh3PAZdPD/+IrL5JkMp+\nl9YLB0L0fF6uS7elaa4eY/OVhVi2SpjDyOW6Ay8+ykOLmimK4ORi6X4Y4qXE\nvRWW8aPXF/nv19C1B5kNJiSGQwj8bhC07SYfshAav1U1pbtmquLIw0zlbPAL\neTIhNSMYpgG7hyHop269kfo8ETFMzAd/qsi1+NEGuOGn3CX75G1mSNdtgq5S\n2s87/hDqm5L2AeZnJP5PPj2TpkwqlCt7qImotiNwEN4Q9P3XsuLuWjah/Zak\n5s9bBzGK/vv2T2fBY/1DS0bD6iIHMd+j1gtjsxpJm3i2CWqp6KPSS9x6DFcX\n5faweJs0m87bI8yFagzsMIPnk5/CspKfpkF15dzkwArNI0U0jCek8m3M7XDD\nOgiOThsQQgxfrtzA6d1YUOO/14+vvtdg1nR+nWdyEdreMztMBQr+vysSkFn2\n6QhAX8F29kRRRYkH+dqZN41EeJlBOaf9irysK89fiOO6jD/Vp7vnpGFQ60b5\nXe/mkvnOKc0UvuHJNh8rqRDHbcOjp2Y41jG8O94GvDQ1cr+XWiItK0cgEsHB\nBpQz\r\n=/Zz7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.14.4","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.8.2","@opentelemetry/core":"^0.8.2","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.8.2","@opentelemetry/context-async-hooks":"^0.8.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^2.0.0","nyc":"^15.0.0","mocha":"^7.1.2","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^7.0.0","typescript":"3.7.2","@types/node":"^12.6.8","@types/mocha":"^7.0.0","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.8.2","@opentelemetry/context-base":"^0.8.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.8.2_1590089420054_0.3146369223430676","host":"s3://npm-registry-packages"}},"0.8.3":{"name":"@opentelemetry/node","version":"0.8.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.8.3","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"2866bd4799716f42b880610f1f72492984bd1fc3","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.8.3.tgz","fileCount":15,"integrity":"sha512-B9ks4F+YH3/X8QM5qS9ngv9xFuWPPC94AJkeTvi1SHcktn0Iz86UXHXTs2FzoZlJK6JRFB5DbWnv28oluQKrsg==","signatures":[{"sig":"MEUCICBXvRk0PvfyafhtPvR0Ru2K4KpMBjT504N36sSDozy6AiEAm6VdSj8KTGKjMvCacAIvVlJJu1c4MJYR7f7bzBFw1/8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0BzoCRA9TVsSAnZWagAADfkP/RJriaJkVDSf/hbi1yrh\nCHV4k11zq2tUlVrx6p+JS3etULnYz6RZG9Ix/L+bkZ/fEo5c1vuzoQC90xyt\nBPmZFO4ewIUCdKUmoTf0m6zcKlT6pD0PwQlVF9XXJ5RGc2gPoqTI6W0uP6aJ\nUiaSugXUgG1dfvTaCxcsFJfrVyijwwe5gCEYeC5wITgI10e2sTFoD3XPPuh7\nFRtYU/48D6TYbzoRbuQUkzbOnp10aNJm+l3r6jLwbpo+bUvTUIDfMTXOd42E\noRlXcIDcgsy9o5lJZdOQ26uG87cjavLl8fKvKNgFApmeJ/PqCsLMOOArYu+m\nq2klAnm5totorLsDTkfjmKvA2aBfYS7s8lVdxFulqvXQclYE3ctDSy/QK06p\n6pmvo5wF/IznANzkYuxS4vawyiqPX3GhD4xfOEuU9SH4m8mETh29dSLBjprw\nVjlQ027uwbVCot870j6igo8YWuylHDH129FFabIlmcxe2elBXI2XG5gW241V\nVuvtM2nWjIr+XM/d/n+knXz1LBDMVqrdabTA6F+kiiCUWWofuFIYXjfzGGAu\nAtouZdKyNdjqQssEcsl5lgzP9Kd4nKKj1Of0SqwhNP/7KRIO+d4oCY2Ebx5v\nlbEx0Q//p+RzFaVV7PkIDHJYZimIwd0J4HyGIp4MSLKZ6xR/D3q9vrD/2CwH\nhOKM\r\n=4Agt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.14.4","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.8.3","@opentelemetry/core":"^0.8.3","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.8.3","@opentelemetry/context-async-hooks":"^0.8.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"^2.0.0","nyc":"^15.0.0","mocha":"^7.1.2","rimraf":"^3.0.0","codecov":"^3.6.1","shimmer":"^1.2.0","ts-node":"^8.6.2","ts-mocha":"^7.0.0","typescript":"3.7.2","@types/node":"^14.0.5","@types/mocha":"^7.0.0","@types/semver":"^6.0.1","@types/shimmer":"^1.0.1","@opentelemetry/resources":"^0.8.3","@opentelemetry/context-base":"^0.8.3"},"_npmOperationalInternal":{"tmp":"tmp/node_0.8.3_1590697192236_0.975047679419828","host":"s3://npm-registry-packages"}},"0.9.0":{"name":"@opentelemetry/node","version":"0.9.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.9.0","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"1802fdba841a31aae3a009b779b427322c2c57cb","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.9.0.tgz","fileCount":15,"integrity":"sha512-LW3fWZckwQCq93j3lNCgF93ho9WvXvXVRlUf5UtxVzw8/p6I+RyvGQTp/uQk8NHxRX2KHbdVwdmXCVjlsICeVA==","signatures":[{"sig":"MEQCICN07ByoVgYAJgCaxiffv2M1Gm/+gSMjfYwhn9V/SII4AiBY672Nyxsz3Zt5v3NDd2IFkWM3ayKJlsJMGmUsEQxBcA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe69uICRA9TVsSAnZWagAAdkMQAJL2Pfwy7Uz16+TN4J5n\nONJOd/cu7Og6ubr8XV4ry7U9/oft0RSQDzcrjLvj7URTWUH+RPG54LSQzqev\n2RuvHa7pEh9yClnrUPCfIpuf6zIjoDHAiCuJQ8HMsuGCie81iNxla/j0rPJ9\nuOUPEWtB7IzQSTXWm1Q/zD1pTM4+OaE3pLNbE1421ezsCaKiuFPvhF+MFoZA\nJeGkc3tcLqnpSPLCzDo7mmNxt5MNSgXGEhL6GqSqnqHy+Wb5IMPGDYU8fDjD\n9fQwylGcXa+kbGTTXSLrDwYB530cGhcItVPXQRcndSgKULYhBVEew6KBh9lw\n6RfXNrA2wzCU+vy81gm+3cbufls4EyU7MIUTi3YREpgCuqfIwnx6q+4Iongx\nihBYq5+E4ksrjdLwTr94UlfeRKn8+toUj1GZ2rnUhH3k4L5CliHguidAe/6+\nXfNKxRR50CVLeqNm0UlXmmJKO/Vvqb9GlpMr6h7+QtaPCVm62AkcEqhPziDf\nunNTPTwjTs0o97/0kcghaG21ACcFPOEIp6v525M4SkkPp/Kc2VfAi2Hr4+Tm\nqUMX/+MM5KdQsfcso7fQS7dYVqA0DCKO1L+lcTIntuXAz0hbbdlpgIqSX3V2\ngIpUJa6Yt43969sWkVE2o0rTIpMeWTLfZWB7DkwFzZ/01QpPHHuUtaDMmAnH\nwRfD\r\n=hSDe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"mayurkale22","email":"mayurkale22@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"6.4.1","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"10.15.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.9.0","@opentelemetry/core":"^0.9.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.9.0","@opentelemetry/context-async-hooks":"^0.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.0","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.5","@types/node":"14.0.13","@types/mocha":"7.0.2","@types/semver":"7.2.0","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.9.0","@opentelemetry/context-base":"^0.9.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.9.0_1592515464395_0.5547526821979145","host":"s3://npm-registry-packages"}},"0.10.0":{"name":"@opentelemetry/node","version":"0.10.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.0","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"72c9bae341c9ca93bf319ad7ac789ba798d6cbdb","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.0.tgz","fileCount":21,"integrity":"sha512-YWnwntWoxDKrKlOmmpb3WcPxI1WByklJKSdLR7/Hr6vhFinzKsR7d3ToatY/Da81ENy2TIDLTZAxBFr8qynDEA==","signatures":[{"sig":"MEYCIQC1a7K6z7N/7fE4RmIHtG3t9S59D5WYM4EMx+J63PuhFwIhANHEEt7IDN66MQPWIKf63Wn/I9hf0UtlU/2qMFf65PNd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49896,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfH0A3CRA9TVsSAnZWagAAfSMP/1YTFgSSSwMHaOLh7xMe\np9khpInrsOtJ6eMFcZB9Y/jDJtjZwZ7KxpTatkz5z02PDZt57BRrMXrGoBZW\n9pitrhm8DrG3klwY5GRqGaszUoJrbg1aJfxt31KHqDwT0qUK7FcPV6m9GPEJ\nKdxhl6+noUVgroPcCErDaYBr3rr9iAQMDb5yHRW4LEy0cMkdSLDSwjOAoo7C\nkPTtTvIovoZsNVp4yyuK3N8h8fKbmzrXK5hEreytE3NFkKTMjBwSo3cwvAa+\ndMQv/dudmmgBikeDStIFmD8uJHAoJnh0oF2wXlfe67hrtJttvJOHyFz+T7Nq\nWCfbxtU21n2QW9PqhQocqAUa1UpFT+g41PObChYXT4GVt0ORNbVZhy4p0EDG\nDSAkhjDpoFDhe0d3JGOICH1c7mCXSsRRZsk1rpQUU6xYKrp9pzgGY3+F7dXd\nst5CWMWbHctsEsdFwTdSLNnn6aXp6tYdPv7WKMs723R47XJHWAIgkh9Wbq5z\nIu34jmpk3XrGRkreNNec1nQesxI5vRnXXziscqM0GYE7bV55r5DnjDQNv/vJ\nF3QvFjOpLw3EnUdLrYPZgqD7W6nHGpD7TyP6KsLW+iMbW3QrFZHxw+gegCE6\nIS9yF9K4t39RAD8FTooORdTeB1mdoZYlJHZZwWvHARV3kOhOgpV/l9/LzwMU\na9cE\r\n=9H1A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"ab62a4d69b99b3a8c9c26100c04f3226af7859df","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.1+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.0","@opentelemetry/core":"^0.10.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.0","@opentelemetry/context-async-hooks":"^0.10.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.25","@types/mocha":"8.0.0","@types/semver":"7.3.1","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.0","@opentelemetry/context-base":"^0.10.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.0_1595883575583_0.20057646334158497","host":"s3://npm-registry-packages"}},"0.10.1":{"name":"@opentelemetry/node","version":"0.10.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.1","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"79825ec3b921ce6d8147fba3faaa1d7a05c2ab64","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.1.tgz","fileCount":21,"integrity":"sha512-kY8Tvj+FRN8fAhwCzXofl3AxEWWtatXLwv+xT/k/7/pHZnsCZt8rrRrpcG8qoLsowXSJIBnkY7l6ZiEe8NVGfQ==","signatures":[{"sig":"MEUCIQD7WZoGStDPJtQvo0d1C+y9UXWU6H6kxdh7LWqJlTT8mwIgbAD5ch79+i/LGtzS7XbFm99/9t4kO6PyFbI6JgTde/c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49896,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIEB3CRA9TVsSAnZWagAAJEYP/0QthmOsFHTnWTrK8E0E\ne5Woa6s0zLYR8j7A/tyFj7sf2mGMnZrjIDATxGufVm9oeI3U+6HNKDXZN6Ka\nSK0VQrnARvaylQRKNbOLAOyALjz7r1xlS6NAMB++O3A3oJ6tnR/iAB2rhvqk\nHGFoK8wJAOYJl4PrKQZodU+8RAu+Vj0+ggvkeKyA/fm+mC1iP2FbZep8bwAM\nno4JFMP04zgNrwNpdeSYVTl5aGgaHImx+HXMhGPalBSQJFHp/zHsDM/AVqZd\nSomNVkh9dOgR8Cxl18bVqn0D4YdN+wR4qa/va4X/1owURCzhpipNpFQCfQDF\nBvyPn8K1MjnUmuslppJJT0Ty4hkkqPG/hTZnKWo5ELiPKK46pTVJmJE/jtmA\n7dBj3CyoevtokvH/9x7r5GP0G6jJQXC0LWKPOGvmLYxmiprIqBKvsVn4FMEb\n91WHa3WM0a3T6iXvWDQg1KfjB+lkuvwRd0thuCgD7+ib8J2bstkGOItToEFg\nwOS9PIlPbkixLq0Ni+VM4dMVHtQHIP5u1sVfHCnE1coQbPvn3fKNEVtgryV0\n3rXR/P1H033HXxahvbwdFwHQ96y31cXnWSioYK2Fui1u0UWKmkTK5zV//krr\naL4P66DiC2xeTHixu+61XVkQdVOMZXeNkckCWxUF5IK+7RZnD+wOTpwsjV8t\niY1+\r\n=Gy9N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"03981e4299282d0611d1255ab0076368d5830753","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.1+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.1","@opentelemetry/core":"^0.10.1","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.1","@opentelemetry/context-async-hooks":"^0.10.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.25","@types/mocha":"8.0.0","@types/semver":"7.3.1","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.1","@opentelemetry/context-base":"^0.10.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.1_1595949175126_0.7123972335057078","host":"s3://npm-registry-packages"}},"0.10.2":{"name":"@opentelemetry/node","version":"0.10.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.2","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"4a9e5f1eb25c2c0ad6b9fe596df1e4e6a7f26aff","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.2.tgz","fileCount":21,"integrity":"sha512-OnX5i4/PPMoQjfEYVmfdiS/APrT+E4YSOcI0HUhRLjYvs6Z80DUBg3phzIsRPqF1mLqiHHn/8aSqrlxRTofWhg==","signatures":[{"sig":"MEUCIQCTjBc5TEAIU3TWsvv2VJrOMIM77lvED8L1FUhXtJAWJgIgb1GeHEsZ6p95c1xLkdssViZrmlCQ5YxkE7ksiWhHAjU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49896,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKJz9CRA9TVsSAnZWagAAwcUP/2i8DQlr2e/PHiOjtnXn\n+LLxPadjltxP5VFq25nrJatPMhJGhztis6V2j5ic9/TMdBcfTLOBnHNEvXNq\nLa2LV3ZY44X2c6p+Pw+4jr+cO8PIXEBoUklw3nKUD3TDu1tgd5H1B3UGTuCY\nkVm02El4vjSYlEHU8ilMZYpq49FFHPrS8vs75ORnxH7isj9G20yQTUte6e7W\nxDnnEo7+SaY5sB672JjxIfY6mfX4632g1K8ab70Tpy6ZhwDrf/nW8IEOUSbR\nnQ3MLw20gPlD/RlXEH222KobCNtE9R8BKCJ3ckZhI+foK6AFVHXymg61FVTY\naygtuuJlygbE2Tq8Xc3S9kDbF4LB/3ckEDP7SpGLw2K3ShuskeiYmSwUNvNc\nHgVL6c5enXHkUp8jl+qNdx0qC5sPST/83sHpI6uUmKj9vv94SsnJyyug2Gza\nNXJLXPtr2MvOSTGp6kvftV88YZwzSp6kRrkZdzNjtXgAhLmtZImwPDO4jpDN\nkPzYgBr6zDocGpflJWlSSaWU7gYx7Wh/U6oMaCdGxGEBXmASNsUN0GLI6Cdz\ndAKRU2k4GuRCv8Je1Y396tZ00w8Pa+mvCVpBTsLPrHFKbHxE/WP044g4U4hb\nknJO10szoqsUsphqUVHZT8wisnPJqAklHjadeK6LT0EtJpAIEnYyLa/SpsoR\nAIFm\r\n=3aJL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"b247e69034a7888a842fe75e0a5ff06f8bea44a8","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.1+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.14.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.2","@opentelemetry/core":"^0.10.2","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.2","@opentelemetry/context-async-hooks":"^0.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.0","@types/semver":"7.3.1","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.2","@opentelemetry/context-base":"^0.10.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.2_1596497149358_0.5716730021736414","host":"s3://npm-registry-packages"}},"0.10.3-canary.0":{"name":"@opentelemetry/node","version":"0.10.3-canary.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.3-canary.0","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"69fc713596c6e7a21a43452ffa28875b0e305592","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.3-canary.0.tgz","fileCount":21,"integrity":"sha512-8cDKktDHfu+rxGKFV/W6EwDKcWQjG2Zx+W32qh57aFz0umX+ByCKjV25GA+dQs/7Kr7T2b4wpLThMhq9zUarjw==","signatures":[{"sig":"MEUCIATQhQYG2E7/OTjOGulK+DOMVG33TEstaHgUlyo9KfnhAiEAzhyzps/pZ0VXLM8nzVUSKDO3X9D4hoNfz4N2vLULMI4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50051,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLYW1CRA9TVsSAnZWagAA9KYP/iUvMEf3fBJQ7xioDfLW\nNJ+RajTO0aoEYCQGxJ9tU7UHKPhPz588u50DRZcO1/oWpq0UkmHXOBXQ7C/a\nSMOFXnMMW0Il8RqxbPZ2+EF8UUSUk/05y8GjzvojH4FLirbVfW8gHxV4wFoW\nykhaJvc2NR+DgKIXRVBf4ZGsqnX27qDxk+H9yhOa3m/i/i57S+9105mIGOhe\nD8iM2iSDE3Cin2uCf1N9YNhjZz20clQbW1aifIeMM1lUHwIm2sTxl3DyOJAa\n8lsKkrgEG992XRlgGD/5WBlDx4eds8oiCIJdFkJRbobmDiYeDRMpm3ixe3iB\n/M2hl7fB74l1eJR9CqqShmuJ47yPaGbUrtiFwvb+mBgMdXJ3tS17qglbDQ/X\nuYW/lNso12z11QOEYs5kLLRDqqhefPZAQgT0/NsQiID9uy97R6TOBDuCmn6j\nb7GM04uxCd+wI+pD527fXJGTd07nMDy8pzypJY4gSGCHutyWcOYK8YiSBCcT\nUCkBT/UIW4bjw0q/HBCD6zlncmtIuwZ/3svC6Z5TNQ9rAUXRguXb7e9nJn1n\nzi4yiFo4kXWjWpl188aeoayULOu8Do+HTBPL0BfelMLb+VeE21ppF9lyNbSp\nh1lytXugM/4AwpqSr17rQ1xhWD+YPN36CKhOuZlExu72wzc9uKanpN3+h/80\nEsn9\r\n=EL39\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"f4f2f84bc087389b3206a2e17837b7b0b95fb2f2","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.7.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.7.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.3-canary.0+f4f2f84","@opentelemetry/core":"^0.10.3-canary.0+f4f2f84","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.3-canary.0+f4f2f84","@opentelemetry/context-async-hooks":"^0.10.3-canary.0+f4f2f84"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.0","@types/semver":"7.3.1","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.3-canary.0+f4f2f84","@opentelemetry/context-base":"^0.10.3-canary.0+f4f2f84"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.3-canary.0_1596818869168_0.17821726417832928","host":"s3://npm-registry-packages"}},"0.10.3-alpha.28":{"name":"@opentelemetry/node","version":"0.10.3-alpha.28","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.3-alpha.28","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"93593144993354a8ab4dd9765cf0f4fde02dbdae","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.3-alpha.28.tgz","fileCount":21,"integrity":"sha512-FeDTru78athiXImLYuVoxpFwwVhiJ5HFac9yRMnv5gxI3w7XB/d/9L34HsTQvkgNqrI3SdmSYj58BSDg0eLM+A==","signatures":[{"sig":"MEYCIQDLMX59itiICFApic0Uyj/doZnX6FwGvqMxzeH6GaWIXAIhAL5n6ZTEDJztbVFu7oS4aMW5MTJGhcZJPYz1hMk4QM34","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49983,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPT9vCRA9TVsSAnZWagAA4SsP+wd2TfJdN6yICu8XEFBZ\n9ZJ27yau7ewBCuk7CDysW2rfdccThD7zERy/JxKl2N6fppF3BZANt/+K0x4c\nBsPvrrn2k00tM0iCfudo2vLUhlXk31v5QPeVOJ+FjbxVYzUYGFadkzZj6fsA\nWco9ADq5Vd3pvDLo3TEXln6n+oRtrNozy1u/R/huJLgol3kkOOMptwvcqZU1\n+vR0BFi2pW+L3T1ChKjJ4tfWKmnhmZkwRqMH75/q4mxXEY8OsqmOQq2B0Fra\n01poFf/ZIqLVFAxH7w/eDBHSRppaVSalBmAAP/3HuHgfZeeQ+SGBrNkxFqP4\nJQfYQ9KpeeB+M+rjxleyeqRJaaa//Nw96nuZJ4zfXg5Yajx7zP4BlWUCuDsC\nnNA4gDbTczZvQO/sEkvYYkjjr6LtZ2l7Tbvm2b3c4kTKxFqtvu99swlix/iu\n/TIte1CybqK9fxaxkyy8C2BFacPVoq88UdyUxvVke/bZha+U9KpKORwCtIRh\nxBqjsjZ2tt2+TZxRqrs4eA75Y8CMPimI3M2m5LXUysyjGN76h7kmzIroaTLP\n19TsOpogaQsT7/xVq/bUQ1LxmMJMY2dTZKs3HDFZn5obyF4tjkbwFRgiG5GP\nLozD/plrpDNkwdo6OpCaOOk2HcMcwQW+EikTafr5Y7g3gKlRTkkBJSm3dNBZ\nbA2b\r\n=gQwc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"d68ff0fb7594f6a367cb7a5057cfb2875e8c082f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.7.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.7.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.2","@opentelemetry/core":"^0.10.2","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.3-alpha.28+d68ff0f","@opentelemetry/context-async-hooks":"^0.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.3-alpha.28+d68ff0f","@opentelemetry/context-base":"^0.10.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.3-alpha.28_1597849454815_0.36797435973851056","host":"s3://npm-registry-packages"}},"0.10.3-alpha.34":{"name":"@opentelemetry/node","version":"0.10.3-alpha.34","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.3-alpha.34","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"aee1d78721017a5bc57f52229e5290f8c47427ec","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.3-alpha.34.tgz","fileCount":21,"integrity":"sha512-p2966JPR7FP97Jjl215GGtIz/tu1y5LTj1uLJn2gnbojH6sNvRjSPv/uPpbApismH0RFWm7bVl0Xa8X8IZ4MOw==","signatures":[{"sig":"MEYCIQCCae0wZFuivVWln6Nv3ibbJPKlzcBon0x6fshnsVGO8AIhAIL3ZzR9I19Cyr7/Fz5E7woX+Q8mYepoeFvLHaEG9xM1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50297,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfQ+6ECRA9TVsSAnZWagAAJSoP/2pFvS0o0sXrpOfAqxRW\nd//Y8A1oG+nHfBVbiDbXfh9mkk8NtZ3Rkcu/b8623uXY9ovXNedbHJLongBu\nDJmoXhUZA/T4eNNWJTS5G8aVrgkzJpyTOIntceJCI/Ep11gT4OxjYAIlQ3DS\n9B5VjwKCUV07AGEsTSBI+JBdBg4L1kcT3L+yXnViyZK8yssnPQhJiH6chWMF\nTB0LqQwVGlzsIrWrL0jF/pdhyOEreCms+F6L2qnRFBpvj9jEkKzUwPbnUcag\nnOsRT2L/B9/kbPD+XDRpwLGbhZxuCfQnqvMEQZAdBi5T4rcOAxDFd/Fo3YXP\nNe3wJ1qKc39rZgq2MyRDCR4L7A2x6STmA+u8ZrnW1cr0gecKaQdYBLWoPnFD\nEu5JiM5yi509Q586AqQ7nfbsEnWX2h1mAnX6cFCe7oMIQChSzIEKClbTxvB/\nlwDQS1wXMMjykG1XS+YU1hgkAN7SxBgw6n3i0To4o/YFZs2DTSVy3q37/DuK\nAfF/Q50oowmnhrbzLtZ87BvtDdhr3FNPPD8+ihU73vSnOK/UYCs+Mlb1AZtY\nWJWiH/6EVpWGL1DagDZyJc/YOUIgojTe7c0e6FdDsJh/3zLVJfSQN5apPVa1\ntok/90/c1r2n5xMe+AMAW23kwyx+8clhD0WG4opCt1JwrXecOQlUrKEDSFSI\nQpSa\r\n=Pv7M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"fb06b5bb1142286acf5b326925f3af3353aa9d90","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.3-alpha.34+fb06b5b","@opentelemetry/core":"^0.10.3-alpha.34+fb06b5b","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.3-alpha.34+fb06b5b","@opentelemetry/context-async-hooks":"^0.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.3-alpha.34+fb06b5b","@opentelemetry/context-base":"^0.10.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.3-alpha.34_1598287491951_0.2908354069832164","host":"s3://npm-registry-packages"}},"0.10.3-alpha.35":{"name":"@opentelemetry/node","version":"0.10.3-alpha.35","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.3-alpha.35","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"250740ad7a2e32e9d1e6de47a1d18526ca23bd51","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.3-alpha.35.tgz","fileCount":21,"integrity":"sha512-gRbtDS+QgZ1DMj1rwRMVtaBj49JA90Q7b9hXsUkWTgZmY+wNVN5wdlVeGf9cceyPiovdK5nDnvlyzjgZmut3/g==","signatures":[{"sig":"MEUCIHY9mG9Wz+JmTIBWgM2milEyMsBoQE2lhvgQC5hQH/35AiEAypbwmUKFxZHoPWmaA9PIi7vwfGSrr1PfCpvNsCt0WVk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50297,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfREMXCRA9TVsSAnZWagAA4fsP/R7e2v6uYaVEEMCgY6cH\npjYNrX3BNmB1ihlVKLWj4pSiV8cBwOFkMa576fGa/VqTRBpKNS2kxkO5k+WC\nkjaaL6R3u/C7pROD1BwB5xSS75hf6DLpYSBYk9ejOuSFcHS2jLLKlO07NES0\nt7ts3iCxukKbJUTZRVL2vT3HE64ufcZDZAhjnerOxbGA0/TRAsE35vgIgR50\n9ZWkK65ZSBa285Xz5BNnfJplyhauos0BgahPjhR19bb4myNreBs3wYgNAnC1\n/AdwOe2GNg3aAdnBqbXdYXcsz47VXamk7mPbyKb7jNGOsqQP1rCQ8YMyZy6C\nCrqiGUhbCiPGTOnvuPZZHwvRDScPdUCK2GQ/p7Gxitk+RLOvLcgfSmOGx0/+\n+HcaDfEkIyPv/EzZjyCnQs7iinXNnBKGwFY/CAvCKz8Ikg7rAMiZvy8l9GFZ\nQZqnC3L2OycJIb+ytwimxm6R/UyK92TroMMCbCdlT66olbyzITWeX0VpuYAo\nZhDbGxmz+me3DtBsFBJkBFQsV8yXymPllVN8ioacvJ4JpAfgJqVZiP5N4Hzf\njn0T2DftMVaUHAM/yWkopk5glRCjFgbiTfHZE7qILBIzc9Pmuu8XTdSh1wVM\nB6rjsyZ8Nx8Qz7GrXCGAmsNqCA8kkFYf1DOP08uVFNce4syOAAY59vsa2boY\nS1Xl\r\n=Rrud\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"2ee9f1aaf7b61c4b4ae6b748f0a07f8fc708f07e","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.3-alpha.35+2ee9f1a","@opentelemetry/core":"^0.10.3-alpha.35+2ee9f1a","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.3-alpha.35+2ee9f1a","@opentelemetry/context-async-hooks":"^0.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.3-alpha.35+2ee9f1a","@opentelemetry/context-base":"^0.10.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.3-alpha.35_1598309143172_0.04779418205226782","host":"s3://npm-registry-packages"}},"0.10.3-alpha.40":{"name":"@opentelemetry/node","version":"0.10.3-alpha.40","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.3-alpha.40","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"01ea83bb59ecacc1bbb53e48765161aa159893f6","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.3-alpha.40.tgz","fileCount":21,"integrity":"sha512-twwGXust1d5+vh1I8Pzet32+YF/Y2byenLRs/+DHP4tR6cuHqBaVROKEydOF9CWS9EvZNiKzXwmnx22wXkhncg==","signatures":[{"sig":"MEUCIHcJynuaYLucASFnuoecMRvPajJ8W/Zi3RaBQnbVef1OAiEAiReixV4M6UfavLQBoiIL8qCiNnNl3S0E/qyGodT+/ok=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50280,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfR8H4CRA9TVsSAnZWagAAUdAP/A5roTskQ5A5lwKMXxiu\noU0hM+AjqEj3d43tUAMIBW/qPiHG2jPY+v7eoU3IzVFk9JCWf3K21Q6mDYuD\nQVy9PPcXSraJ6gBa21XYimIMY6wx8WrEj9llidoHeABWA3jESOwR8et3w0bQ\nxSlDLp6ZkwPWff25F4ZqXAQhsKIoqnIWE59tfe0c4w9qnbOHw6DkwR1VQXKd\nIs7qeIJe7hK65l4NnxWdTIwekTY8m+ZgrGDigdtn/lB9co5mAxWEoCcg2esC\nqw1BIvqibTAvodxE3Irmfnl5OOV2/7NYZfZruPHkxAlVZXBYyu1z1XdHNdA9\nwzEEuen/3pigNKGdhCFzd1qMybXynn4iH+cqIWqVMvK13Jrl7HslYYzNWjJe\nOBMSnG73d6qeynBPzWUSN7Bbmbcp18uv5jTFLOcRZSwpqHcfGN5NBmLO9o47\nT3hRBoLpmsQOsQ7ajPamBKf92lrrLxB1j1dkMazraD0Btk3g+wE8C+IVg10D\ngKlJMGMnx0/OZYPQDkBjriokVxjn+m7cYX4WBdexZ389nG7nHmV1roIuW2TO\n+jKkua4Ft4/i4NTzGzPCQ5m8wQnJ2NasZaxn0x1R6Ee720rB99HipirRtaqz\nkGBDapyawK337ydXcq1jfd4oI2mUKiYJWfIituNd16rc9hLZqKbQKoU2hUy3\n4muo\r\n=cyEI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"2052a245bce0d7a6ddc273cb3657bed5d3d21dc4","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.2","@opentelemetry/core":"^0.10.3-alpha.40+2052a24","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.3-alpha.40+2052a24","@opentelemetry/context-async-hooks":"^0.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.3-alpha.40+2052a24","@opentelemetry/context-base":"^0.10.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.3-alpha.40_1598538232484_0.8957850319652787","host":"s3://npm-registry-packages"}},"0.10.3-alpha.41":{"name":"@opentelemetry/node","version":"0.10.3-alpha.41","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.10.3-alpha.41","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"cef882d5148280f47c2a1fe0b10f8f18c58a09f2","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.10.3-alpha.41.tgz","fileCount":21,"integrity":"sha512-0NMwFhF+MCMRIzxbw+RQ2mnrqu320+MRqcZHBYiWHFUxmCxfrvtExLhygG2eQMtyYZJ1ANZ20kV16Fx6ep5xFA==","signatures":[{"sig":"MEUCIEqqkKf1dcuv2osQdKbbvROimsIb5/zbVqND8G7J98hdAiEA4Zl2dpSBW6BUoeoCam7CCpLLdAyYzISiz/GuSLnlH20=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50297,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfR9qlCRA9TVsSAnZWagAAUpMQAI0A6gBO45NiJgjkXhjm\nCmCb55pjwz/EPics3GEYJuBCFwAedZNlWf9fImY+YzJbuqvzlUTFPBtLhDwO\nZA6ACx4+1ufCrtMsIY1duIX2RpCpqUVXI/RISctpJlU/HlYbTq+rUApFhWmS\ndSfR+XSPO0nl9ZVPVkrXYC05O+CwN6AJoqSwkVi8wLocgxCegYO/OJTKFEAw\nW2815gi31YRNFzkBNP2g+w6s6SFtva7Vjz7gwzWgMWPyXlhGI2IAdxdf2Tna\nDGRYoWqYnthyUS4kxMvYf2xhcqi0kJk1wQwSAWoBoeRjg673OFKRyiH4MVkt\nDyLASvfl9V49kwLN1J+scZT6K5wzQPGf9qnvzX3CYdaCHAdKXoBDxAnTfnAJ\nk5584Hk8J1sc5Op3ZH8klxi/lnmg5WxDmAD5UDvYY/dZwSWuH8zeoRYlr9x3\n4ZpayX0rDXJVfOmtd1vOrS0gj7w+Oe7yClGyruwerd2eP0ASgBR48TniihvF\nRD89/ltJqq7SfgLdKCn35sXfildikVvxCHpRSOKzCOhLr1P4r61gPsP3d1CR\ndN17arPYnFLk+lkTJqKXdMcmAIZT8g9oxmDsmxCz6hL4t3JF88wVqMWZTaQW\n0psqk4mLY2JxJ0Jh6wAirdF1XB5HhqSfrfhgwpr5XODEwc3PAkfp5hbgYoj2\nAfst\r\n=MJR7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"5c7753fe6534a34f0f4eaf653d53f8c002ee299d","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.10.3-alpha.41+5c7753f","@opentelemetry/core":"^0.10.3-alpha.41+5c7753f","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.10.3-alpha.41+5c7753f","@opentelemetry/context-async-hooks":"^0.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.10.3-alpha.41+5c7753f","@opentelemetry/context-base":"^0.10.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.10.3-alpha.41_1598544548648_0.9740760940667892","host":"s3://npm-registry-packages"}},"0.11.1-alpha.48":{"name":"@opentelemetry/node","version":"0.11.1-alpha.48","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.11.1-alpha.48","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"bae4630510ee1e2615ebf2f42e3b4ee9dc75d17a","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.11.1-alpha.48.tgz","fileCount":21,"integrity":"sha512-MOJvzQiNMRLrv1NxQkR01WiTZjWJNRE8AvW6EizTIaasiNrbaRszRSEl0gzBhzbW+doogF3gqrPqnb2IGHqK7w==","signatures":[{"sig":"MEQCIEbkkeHnp5thUN/2GRzh8AtPS7fQY5+uOqIR6T4kTOYCAiAZTcFO0hG/4H/XzjAhltIFggTZryMDgudf9W8/ZrHEOQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfTp/7CRA9TVsSAnZWagAACWYP/ii/9nuMiWaK8f/UNNRy\nbrgF4DCk96uJN6Lo7Kz7w8yc78nVbOKnqJH3fLtRpEnkpg5nH9CH1b207aX6\nvn7Oel6bhQRVgmxWcl8uoKwj6mdOnHpwCPft0MbmtTYuW+hbP5AVbKPX9hNa\n85EI1yKaOfdSgeiJHQbS83WZWhrnVhxaGrFle0K84aQHt8bF1J+aObhvE/aK\nuiX4Z7rFWM3DPVmWeE4Ke/UTAkLm7THz7qg7fa5wT83NMX2imP7P7xZrGEnX\nPhzE7m8YpJq0rekyHinM/Qp4G7XUKoRLF1yzdOzGNtc2qa9Y8K9gAIdRmGhx\nGyc48gyA5MjcRonrol96UaeJj41Lpa6pHsLSjfR5+bk/feA3ah02DUZU52yl\nAl6z5cHihVpjF9o0k8djSBxTxnhwLwU2NMrZg+SsGqZNeO8oeYWZzPe/YmIt\nxBs37Qi7Raq1MgWaoc1GLElS4R+50VImHacwMAL93xlWo6Ewo0OWA6PQ3R48\nftByXFlXBbmfeNZsEzbL8ONuRICbhTCHyprcOmGKXu3nvlzc1powxk9W+06v\nFLqOv2rlBJg70tgDr0RHUXD/vHu+7iKuy91G1kH3w+zYk3Pxp3tZF+3laAAv\nXiaTxuURi71tip2zGYVbL1V5nbtYOtatXEIcW61iAr5ZlFbqNw1Zq1VZHyqC\n3f+8\r\n=226I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"15174c6647ab9863dfc1424412fa60f2fddb3351","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.11.1-alpha.48+15174c6","@opentelemetry/core":"^0.11.1-alpha.48+15174c6","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.11.1-alpha.48+15174c6","@opentelemetry/context-async-hooks":"^0.11.1-alpha.48+15174c6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.11.1-alpha.48+15174c6","@opentelemetry/context-base":"^0.11.1-alpha.48+15174c6"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.1-alpha.48_1598988282829_0.15921590109189143","host":"s3://npm-registry-packages"}},"0.11.0":{"name":"@opentelemetry/node","version":"0.11.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.11.0","maintainers":[{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"81036e8ea51edd2381c3bbab60751b06d22e3cba","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.11.0.tgz","fileCount":21,"integrity":"sha512-1SrZNbF7aBShySvsmWL+3bir6fVugjSnCyXsKMwclinhZIHd2cUfgjKdi42OCcA5G4Pp8TpO7/8ue8qI5yKX8w==","signatures":[{"sig":"MEYCIQDdUlcApgRJHLVB/QMIHHiU/P4egTLv68JqV1u5/irezQIhALigjYv+CNLlBeD3Qqbf7ecB3JltGZRmwDcQgQXsmhB0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50176,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfTqHWCRA9TVsSAnZWagAA8oEQAIFr0fwt2m3XvWgQcn4p\nnwQ1A4dOz/fOoVXNfGlwM6jqiAL+O2EY4dDkAR4pPJFvscwUwHklQGzzTXRI\nPxPmrdMErHuAA5bI4vBohke+WZ/gUUNHInGirOkrMMolc+Vm32RKyA36HLiD\n2O5bH7RoHmME7jY5gHORxFyFJX0whGeAxq6yuKkLCaKdrTwmYAak7g3j95of\nqNLjk40Y9Xnnzl4m5WOET6D1FTZZm2brhCjy8mENwooiOzrZx6Wz/NUT2zSe\n4J1ZVvHrx2c6NI27yThaQ7Cj8sKaSFZJAGIYK/IBq6V1FlXANZFT/XdKAu6W\ntssRc7zeRhvwi1V/OqcLoGmA/RJrPo/4XysAvU4SPjqGVu99Gej5DPXNUMTF\nwqge1vpuQyY+IFhWDN+QTYrFV6Y8FpHXGGcI250Lyg0u7ApNJ8H1bYCa4v66\nzeEKfv6AypbIxJChn55/5mlP6348P81G6kjBqQ+LGvKETKnKzrI2fyx2EFF8\nH2AYYDipyJHCoQ99SQj5XwWvxfY0vPwZDUBsN/GGHpKQIflDVh/fgeMXxSRg\njQowDRebH0y05BbMmmlxFSYBrO/ePAhJUpZVWk/SxOGatsqRM4hTLCDpYU0X\nLBDmwFbkVf7aT8D4Mw50BIJanNuXPOAbnhuyID45mziKs8yYBe0hGts0Dm1c\nwSar\r\n=UOKL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"15174c6647ab9863dfc1424412fa60f2fddb3351","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"obecny","email":"bobecny@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.4.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.4.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.11.0","@opentelemetry/core":"^0.11.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.11.0","@opentelemetry/context-async-hooks":"^0.11.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.11.0","@opentelemetry/context-base":"^0.11.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.0_1598988757582_0.07775579443517677","host":"s3://npm-registry-packages"}},"0.11.1-alpha.15":{"name":"@opentelemetry/node","version":"0.11.1-alpha.15","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.11.1-alpha.15","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"2bbfed01ac5c13735ca8f542817c768632b73c19","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.11.1-alpha.15.tgz","fileCount":21,"integrity":"sha512-WJDdHxc9bFOpkUsxEMTDsqlxGFFJMPk3+2TWm5JRpw4zLR+w5iASO3J+IQjyBLXy08jnznkNceVmVGFyx3F0cg==","signatures":[{"sig":"MEQCIBMr/K8qzyfB47DJes9ZJDm27hJTqJiSx7sOmMlhGEXbAiAxKxtW/i16fXN2x/GaLh30Pfnw9vIwHO0W6lilB3DMaA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50296,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfaB5YCRA9TVsSAnZWagAAP7AQAI65PzaqmQITcWVhuDoZ\ngXyZ2PAw6qJxLks40pwr92/Z8je0GcNtMiEB57fQEFOA/mlUnPo4nhiHG8gY\n6TLNhyp3wYCeIbKzbJeuoCjDPPm0iIFLyDGKLfpI35goH55G3+rfqwi0SdtN\n297xmbYNhrkfHZhzUI0qeezPbcaJ2nonYgHyU5OZPSoQ9Cve4POMcU3MiGcy\nNtgwlOf+GsjtYlF39xauaSswfkFyqLZ2lRL+0oriZEm89sP/ms8ClzIM4T5v\nI2p0W7A8F1FEqUBIm0H0J6m1cZh/RfTm8ExAZ9D36uivMPBvACLU6ga1Z9EM\niR7fhsm/MxR4HN/9qE1rymYewM7LJ9owSZPoBZlU2ubT8JGB1kRFqbIuBL9n\nfvP/6f/17yjMZBUAxspjO1nNb6vQO8yaG8lpDZCkZY78HJ0bxZFyyVnD36+/\nfQL4EsLDQuHuWMJbAFN4OtS+XR+Rir25HhagQeqlogcsQosBbTj62qJD3mR1\nopiIXl+tj/nx0qvVSTAGhAMO3XeN/GKcK+g2HLkFiVho4QAnUWaFD3odqOtT\nlZTX4A0q+tuYWDXdoUY763mntVXWnYDaxnopmv+qo6u6XbhGsqVzFsCLzH7j\njtHgMFOotZoE32Hkwauxll6Ud7z3cYCNg2mPCLOknj9s8Cre7zcR444onLAl\nYFmq\r\n=Obl1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"e170039015e8a1a7419bb835a00659b2a734b8a6","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.10.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.10.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.11.1-alpha.15+e170039","@opentelemetry/core":"^0.11.1-alpha.15+e170039","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.11.1-alpha.15+e170039","@opentelemetry/context-async-hooks":"^0.11.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.11.1-alpha.15+e170039","@opentelemetry/context-base":"^0.11.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.1-alpha.15_1600659031651_0.261146774773642","host":"s3://npm-registry-packages"}},"0.11.1-alpha.35":{"name":"@opentelemetry/node","version":"0.11.1-alpha.35","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.11.1-alpha.35","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"a0b7538ff1f62e3fd20bdc124e22f54130d69dbb","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.11.1-alpha.35.tgz","fileCount":21,"integrity":"sha512-2c8y4Lb6O2ZbLJIUrMFED48xY7eQxKvSGAW6CwLc4djGyIjY/tU7+e5Y+c3MRadnZLGb9nec8+NkQ+1wZwBC1A==","signatures":[{"sig":"MEUCIQCRjBC2QlYAU/n77tWD9h2TAEolb3rDH23wWhEwjg1KgQIgcLWcOxoeoBzjplcrUqFO21q5iHiVfz1mvcgqZFM/lEI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdHiPCRA9TVsSAnZWagAAMgoP/RdDu8WHxoUzYWS9ayqh\n0f06WtqvqbdF0RqEdQR0Z1d46NLkOnr8xbMybH3XWhsB+hmEDMh+xDUYqTHx\na8doK0WSFqZ14Ht1VsEl6fV6yU5aDHrXmN9pl94NQnmXpFQ/8REi9UM1aFZY\nkNvHJWHfPWDljErQdWUD4I3CA+VpaJ0gYWyqCGDpoDhiO5FrLcv4K0mS/oMj\nm2MzU/KFmpX0uPEPJJDEE2ilojHuzR5zmor5Ux6luOgouKsH/Y4ISpBEnoYV\nuEKtL9+GeUXaS+wplVaOk4Mb7wzPOWFb+2gA2bGusqAIh+AbJ80S7uRhgXM3\n7BWCAqk2y7MfI+z5GE4PbQE3kT3B7Mb23yX+zGKRuBn7bk+rzvcxrbxIvqdH\nVPRkEF+iijwCfrdj18sQ3P7qzda7QLhviKzfubEgDQKXvaAKzN5Iv7H2VW9+\nN8mSPmQ4PROoGvXLc1swpD1WKs4xYuu6Ey695NtDT3lg5DIMB9YEzvKalZ47\nQ4QiA1IrtpRDkk+LqUShbX1tRJT6rJcezFGbBSqj24knjtNpV1hUGWaYpvPG\n2Rz4WK5NhrfjmgPEQBwXHPpKiiTvbldIRtlcYAGLUpctkqn+1Myeu9qo1Mc8\nfllbj0n7l++sy/+YsFGyBPxO0OjXSOUKEMA0Ntg905uot7FmeNmoRpelRCXz\nLy47\r\n=/4c6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"c6c993bb16c58ba907337a5667da01b3c248e350","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.11.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.11.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.11.1-alpha.35+c6c993bb","@opentelemetry/core":"^0.11.1-alpha.35+c6c993bb","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.11.1-alpha.35+c6c993bb","@opentelemetry/context-async-hooks":"^0.11.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"8.10.2","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.11.1-alpha.35+c6c993bb","@opentelemetry/context-base":"^0.11.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.1-alpha.35_1601468559019_0.2796077667776806","host":"s3://npm-registry-packages"}},"0.11.1-alpha.36":{"name":"@opentelemetry/node","version":"0.11.1-alpha.36","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.11.1-alpha.36","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"9838d2ee8488044f5bd9f33803c23cae8cc4a249","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.11.1-alpha.36.tgz","fileCount":21,"integrity":"sha512-lKGqp/jopFaiMN4BY6Y0tT8JaiIL86hWANgeLUIOfLExqZ7r8p4BmUhXakdcaobcCeNl8OBKgiR2KOI9eRW/cw==","signatures":[{"sig":"MEYCIQD4nyhxwEZMtGaCcZMnCcvJVWJLOm7Cl5dbGBGdR0IVMgIhAJkCb8pP/HLdU9MdRWiiuSPd8bjCObozexo9znXZmvtt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdHx5CRA9TVsSAnZWagAAGTsP/R56tA1f8JRNeoHKolzU\n0CmiZryOrqpRkO3YLrAXHf+pdJBjfDc58ALbUuc0IBEKx1f5MnA/ogfTHabl\nDE9vYAq1c4l8H7aaZ+Srq+s7O0o2Y/UeRu7td9pAq5Wh6ONe4ThsZY63Gu8y\npfuJPapDd0zbOdCrH6oMIwRGY9Bo1BUu0JMEGFCc+Y+3QI34RR661p/IxlcX\nJ98/TF/eGl3FrAoB4qg9cTFOWoJVr2mEa3tAE++vcKIZyb12zdZ6/EeJ+ztb\nbLezHf6G3etVMz4fdKzL7hZBPDjV9jxZEaYJ+/hrTq/dCB5lc2SfFMqMyi8i\nXjp8s+Jt9zrmbB84x6dF1pceGzQl3Cc884OoIu4rE/dssO6Z6mUyaV9qf8am\n83k2MbQLUZKMegJMi4k2BOKj4ltyv9sZxvAJ/G8OYX2ZRHtZ1yQCvSRb2SoN\n4zc9nQZjzTYLTdzJmBO3H9gmLjtI96pvvA0kuxgM4Y3J5hyD+ibqMgNpf6DZ\nJZY47JcX0Wrz9rNj/vvWFMEbKIwFUhk0SRLNEG05liQRIyCymiUtGZOpEGLH\nNMZjNm0bvUvesESYb4sLhU6JRKhfVvm1GpVh7sHR2iiHTACvV575ZFY7VdjO\n9vTnY8qALCkaluXXnWk+pq2waMu2Hdw/VAYPrwTw/2WZPloFoH/UM7erf4Qt\n5syA\r\n=kXh7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"6eb157c66925fe84b4960f247a86678441f3cb60","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.11.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.11.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.11.1-alpha.36+6eb157c6","@opentelemetry/core":"^0.11.1-alpha.36+6eb157c6","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.11.1-alpha.36+6eb157c6","@opentelemetry/context-async-hooks":"^0.11.1-alpha.36+6eb157c6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.11.1-alpha.36+6eb157c6","@opentelemetry/context-base":"^0.11.1-alpha.36+6eb157c6"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.1-alpha.36_1601469561116_0.888232663994099","host":"s3://npm-registry-packages"}},"0.11.1-alpha.44":{"name":"@opentelemetry/node","version":"0.11.1-alpha.44","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.11.1-alpha.44","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"9c99e6c4a15a4109569cfe8cd4d2ea8f7ce405d0","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.11.1-alpha.44.tgz","fileCount":21,"integrity":"sha512-UIDkskMLWNh4V2WRbplG3/+QDxzZdAIlei+oryvdFvI12YLFYSX4Vp/g2RiRTuajb1GcW62zDf9y0x/DN5jYMA==","signatures":[{"sig":"MEQCIDElZWespAGKGnuok4mLd79Ozc6V12Fh1ZRvYxvMVgxXAiA6FETcFjDpFsr8eYENPQzpysNaxhdmfGx9erLgRvUKnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50799,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffh0wCRA9TVsSAnZWagAAHcwQAJhVo3cENNMxuc4TVDxU\n5fiUaTshi9+cLNflHFWqzU70zxUPUel0Oc/dWvxgPt0ii9rnN2WONFKsPOxf\nQWvSI4FDgBn6g/vgHu9l7q2LRWAI6I3yaFl8qBzsWfMFnqaT0HMMWzDYlR/B\nTFF/5p3DPAGETLP1q+QZS3Ph30Vu/pxz0wp3pEtX9Z+t1u1u9MDs3g1X11U3\nzQ3ECsl79MWLdq/GMXs49zMdCRr0O8PzcOpqYr0OAdULGLXwcgO8jxjmqBE9\nNfwlVgR43KfT9SVG5ULq7a6I342+AASrxuvfUYNVOo6mcAzIftkrAPpFguFk\nSDeEGaGuiz1xh4Wo3DyKV+On2PcHNFs3Q5y519suveToK+u64e2uHCiH7NZf\nHBG4OSuFexPbnSLzbrbV0Gqc3rtYsJ4GWbOAgmMwPxhd2JsjFVpVCe/6KD4y\nBydJZ1H8PRnakjJGwxugRrH9C9l/7k3P+wpzfalS/vg7pzmhRQrwOQk8bRE3\nUMM37AVR/BEfGZAKOa8tYNwg6hF9mx68t0Alz8zDdXOr7acFWYUNcewnA47Q\n4ls1vMABIaID65KUDODVsYZzF1nXzVz7Xw9s35uGux5hQALmd0MeNlp0LHrs\npu32hhxNgLKIOZaI8yoNot8OK4ocAcm7dqQ3f6S6sUJ5rmVkR/AZ8nkfIYy7\nAs8F\r\n=NF8C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"240f852cc41707c751f28811b7ce3d243382e3dd","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.11.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.11.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.11.1-alpha.44+240f852c","@opentelemetry/core":"^0.11.1-alpha.44+240f852c","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.11.1-alpha.44+240f852c","@opentelemetry/context-async-hooks":"^0.11.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.11.1-alpha.44+240f852c","@opentelemetry/context-base":"^0.11.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.1-alpha.44_1602100527978_0.8415205021490886","host":"s3://npm-registry-packages"}},"0.11.1-alpha.53":{"name":"@opentelemetry/node","version":"0.11.1-alpha.53","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.11.1-alpha.53","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"dced3b61d58c5d05b5a49d7d21f4f491481c4c50","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.11.1-alpha.53.tgz","fileCount":21,"integrity":"sha512-iKiiViCWjU6VmavUjq5PVCjxczIBp4q25cRjnV8aXcJEZYhvjKUGyPYclLjwgqkcFTe/7i73/zxadg3uNPPSyw==","signatures":[{"sig":"MEYCIQCDj1sfGPipYOO4EQJ14jwUGMEeUMxvo9MPFCYKNLHWCgIhAL8yAf2P5+Lc+NlL46Jxb81xdDpsbUEvCYfK41rbdwO0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50799,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjX0pCRA9TVsSAnZWagAAWgMP/jTa9alBHvWqSNNivfqs\nzS4+te5eCpQkBQa8ttq9iSV6g9Szgc1cjAeTa2ZSAEQvrkCCXqXl5/Mq4VuP\nUHRQeJrhw+mgSKBkPffAM7c4sAtQe2MIBiYQ2QdMFa20+P7GnqD/Kz/YLEkm\nGtXDkagoFXjM6rYpx9nHRQVvzPVIjHGhRp58HtIcEyUAXhoBOr6e59Uoax2c\nIqy7iZBvvtLNnri/W9vU6/8xSIiz4K1ySbdbreQg03prHClYfXTtM0hj11Ng\namalAXNDpVvyoaY20q8K6zMMRv+tpxh1yw8YtHOejOkBtS9XrPi/aR8hN98b\nxhyjTYIfDzoC4VlH00PndNtnOcY4+c34g22kht7xFecjrlzODUQOqmkVBQ7n\nTseCQXTlA6FPiJ+qWpKNOZQfTIeB5oZflqRSkj7newAkBsbmW4RiLZMDhNGe\nXkhAfJBJwJYw8WLIzm2cPTKZZFPjhALqZYVyxrsrDBneLfwsDXCQ3DWGQHp7\nrQSIDcV2qKMKsitqcGlxxCUpk/hpTVtcfZd1fRcZa+L7rY0CHqWLnF3Rqxhr\ncH/NV1PKQsTrga74d97wKwI4FyNfkQev+x3+tzobquQJ+kJ6FT2Dc4sSiEZu\nijr6UwaM2Aw12hpYHQqk6u+6Qicr7Hwz5QT2A5hk73M2B40E1U91V7xIkgxJ\nOVaN\r\n=dZtk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"00a8ce7f982ea24bcd4bc398477112894078ab29","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.13.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.13.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.11.1-alpha.53+00a8ce7f","@opentelemetry/core":"^0.11.1-alpha.53+00a8ce7f","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.11.1-alpha.53+00a8ce7f","@opentelemetry/context-async-hooks":"^0.11.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.11.1-alpha.53+00a8ce7f","@opentelemetry/context-base":"^0.11.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.11.1-alpha.53_1603108137437_0.2836849050370476","host":"s3://npm-registry-packages"}},"0.12.1-alpha.54":{"name":"@opentelemetry/node","version":"0.12.1-alpha.54","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.12.1-alpha.54","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"23c785c6648fcb0de290d74a22e2415ba10c32ae","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.12.1-alpha.54.tgz","fileCount":21,"integrity":"sha512-pYYfPGExDWyBlRgW4cRWA7nRX05DFFUS7tHRGtiBKdkmgosZiJq97nHGZKBIEyUNTULHJZGKVK3Xitc2zE8y0w==","signatures":[{"sig":"MEUCIQDKIRAzgfmKI2RwV/BAObfD14q8CiuRlhBhR202xmZuLgIgajDtbju5oxLEISVKmEYpgJP/sOioxSU8zDk5pJ+d25E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjYuVCRA9TVsSAnZWagAAjSAP/3GdHXJbO/E7QZsFhGni\nn74ZxaVt6b68Ua0Pvhms83Jj8kaKtz6PitrHSSu/xnkFr0guaJk6sfVNAIzr\nSpvMYyMUJRHKQKfbmSaRQbsOIUMD00CuNUpewqRoUxeStUAWnpjHcQQTKUl6\nJiRi8kjzbzkzJn7kakuDE215Z3KYpxWkkyrFA/naY7lyy+JR9lr5Ho2p/ni8\n3VYgqEq6JVNdgnU08DKQfu7L/sdxjXzVI8GzWMszAcgYWO5+iJ94qnQHDs/b\npo5SajelEJYu9y+QsDQnI0CoNeNLqWnU0G/8OtfiKJQurcG1wsfNJEVfV4R0\nlRigsrCJxyAjD0v5OqBnnz8HJ71akb6bJMjsDxgeLJstRxKA2QBhaz5zapsW\nWMoCiTgnHig07fFvz0h5lm/7OnQKhHP7cfWTcnbMIzhsx09uczVXXeWNJHdN\nXIFcR9XDnIJedSFzZiPp6bikYIzdSR3qco5qeTV+YFkxJ1pirDYt+vQBogA9\nWFnCE4KC5kZvNf5mPDq23dzxCEYf2C1XeSFoEDABQHkh3WrujfKZcLU/acjX\nWkjjf5oQvNIa6FoURn52oqRu2LG4znn9nem5E+1fgopIC92p+c0A3Q7Q6q+w\nVqAJOPY8smJX2janRABQZxkKPhlXxHcWibqbCFc3SfI/OjLZYZloT/8v3Kxo\nm+60\r\n=v32e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"3f72613a36b6f97555a0fa7481755cf8b6cce1a7","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.13.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.13.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.12.1-alpha.54+3f72613a","@opentelemetry/core":"^0.12.1-alpha.54+3f72613a","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.12.1-alpha.54+3f72613a","@opentelemetry/context-async-hooks":"^0.12.1-alpha.54+3f72613a"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.12.1-alpha.54+3f72613a","@opentelemetry/context-base":"^0.12.1-alpha.54+3f72613a"},"_npmOperationalInternal":{"tmp":"tmp/node_0.12.1-alpha.54_1603111828793_0.980614135888946","host":"s3://npm-registry-packages"}},"0.12.0":{"name":"@opentelemetry/node","version":"0.12.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.12.0","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"6f0fae58c01a679a502321076353a769661c8709","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.12.0.tgz","fileCount":21,"integrity":"sha512-S6kl2ExkcSvMl+oVgiibmL67liTAKnVXUS9PqvpZcafhkNqMAyIq/BEKF6p/oDJO/2N+nEvXu8kmPjivdOqi9g==","signatures":[{"sig":"MEYCIQDAXPdPVr2b08H8/qd/ZcWDpx3D+IwGZ0Q/+1fSlJXSZQIhAPJXWyss1JHj4oKEYpbtj0ADGiAh2aG6dB166NzmJt/J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjYxtCRA9TVsSAnZWagAAfq8P/iLa0aDjHv/3EnAVJrhG\nHM5+LKA9JiaNztI+cYzQp3KbrZUNwwmJET+W7Qy+SLYTBXHHkTnrTHnDBl7p\njIISc5OWwh2x4LRxF4yLfpbPyNtbcwum+nQBbqYNdjuDyX3X/XSOT2CVH+/g\nP1kW0H07WA/AHEayMvQdeEQcMHgPQS6Pc0P7dXnDlqKR3b40gxapMmvEguBX\nfDkNAcuo0wwL3wp9Y8tiZ3YoNujZ3iSVCJm6neFKfDdRNorLVdVtiEBP29e8\n8sHErPkxZ/6dUbMOQaal+e91FOdy8N1rJ4KB48jPdtAjv06yGFNgpvHc+XGI\nhK5DzPZnE+Pju9hliFb9asYl7KJozJnBa882BhiIKY5N0NKI4NfZv+SfwjCa\n4XptYCNmPMASiglnadY6FdClz9Dsm+mwOIkzPNVYlhEeyriIdHZBmDygqg/X\nzu4faSnW4W/q9SBxyU9exWReXfcx2GmMLlaoe2FIh4hPsGykF94+vfEfWBoA\nSJEHCSDHUOLEIYk50vxmUrOejhuciu9YhJn4c8e+onGC9VBa+0Lsawo3RXuE\nx2OLYNJcFWbile/ImS3lfIlBcmuV+jV03IdtGE1mphFtDqqqQe2NSeh8WUKw\nORcYpKwE/kXYUY9ctWOIQmibornl2cm4f8FOkSY/4cTHVBXsp3ZyCh4oJF3A\neXsI\r\n=ZEXd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"3f72613a36b6f97555a0fa7481755cf8b6cce1a7","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"obecny","email":"bobecny@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.4.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.4.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.12.0","@opentelemetry/core":"^0.12.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.12.0","@opentelemetry/context-async-hooks":"^0.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.12.0","@opentelemetry/context-base":"^0.12.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.12.0_1603112044976_0.171094374956811","host":"s3://npm-registry-packages"}},"0.12.1-alpha.4":{"name":"@opentelemetry/node","version":"0.12.1-alpha.4","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.12.1-alpha.4","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"f1e12e47b16c09b3a1d5b1b4a40786c6cebcefaa","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.12.1-alpha.4.tgz","fileCount":21,"integrity":"sha512-3QPgGbuU3nZ2oy6LeJoinVPT09STbkk/nZfvx5v0czHYIplZ7cahp3VtJuYFsESXAet/7bVL3454jBzuIz9OrQ==","signatures":[{"sig":"MEQCIDqwQvmebnkqCaN6sm1t4bdAf56kZi3NZyDn3SHoeUPrAiAcQVjHtjypYCEeh2R+g1RALld9yfr+RQIuziequZwWUQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJflu3yCRA9TVsSAnZWagAArj4P/2X2hsDQuyfplEYEhozq\ntlU7cQixgScuOnZn4mUBM+Q//4JrS/7+lAsRhAL2WaToJVrpN8UWxwArj6P7\niWySLNxsVEngWI1JFKGeXVP/ACRrj3a8nWAfDOVdKrFgV3ztfzdUGBu7fizq\nMNRzfoppZ0aUGylb+mi6qhrrktfLVMRRfJR01StTrHwhbJqrCnCPQJ5WRfI+\npoOXCzBOK4q6Rlfg938fSgr2mzJIuWrEQ38OC5VhTt20Cmv2vut4I/Fl/SVu\naa26JneP9ysgR2fffLDRsVLFYqAJ4HcqAMJj0C93Y1ICSM9688YfkClHZPvY\n8As5FsjlTSSfgTfvuGMfHKsGsWRLePKNuFo+aqdG1eSP0SJmjjsbBn8n8Bkh\nY85zruUBwfJoWbYu500NnfnEv7g79U8PW7a8gXv+FgMehK2HN7RLandVtU6U\nblsMO3lgavlrspWx4plw2/tklLu/oezIeAKEuPb4Q2eSQITPw6vz+fJUJvKe\nRI5urc8R/nS3We4gzdyJd7LSKuQv3wDUzrxjAoREK8B1U5WYB1dV/GVPq3EA\nMQnMhpe83NNtrN5xcPr+uNHy+Yc3De+oIiB9Yg8X7aMbRymzZ0DCxrZxb24D\nudT/6Bspc5AqiKKQ5FqoIFA1HKcbyYRKmk0m+vCVAroW7Eg/DD8QOBkKQCbh\nviGS\r\n=TRe7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"f8988b5d8d2e138add50774d06bea77ef25745ba","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.13.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.13.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.12.0","@opentelemetry/core":"^0.12.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.12.1-alpha.4+f8988b5d","@opentelemetry/context-async-hooks":"^0.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.12.0","@opentelemetry/context-base":"^0.12.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.12.1-alpha.4_1603726833577_0.14753073195401378","host":"s3://npm-registry-packages"}},"0.12.1-alpha.7":{"name":"@opentelemetry/node","version":"0.12.1-alpha.7","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.12.1-alpha.7","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"bd338ff5ef958bffc1f97bfc4a3655157af11506","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.12.1-alpha.7.tgz","fileCount":21,"integrity":"sha512-DBaRWWEQAVSUjUxZF26xD28jJrZ+RiucpfvJJVRGLKmae8qJU4Y70mJGUC0ZiE/DB+wHo8EhdHCxk/zbCEE3AA==","signatures":[{"sig":"MEQCIFIQWE0DzIvAm2J9y5xftSPPW78yUWOom0PzfFFWqwrSAiBIcszBM6heK0DTUzkEigU6M3QXG8d9F+cnFvlr7ABghg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJflzvBCRA9TVsSAnZWagAAh1gP/0Fg0lUb3yVBhW9RQZy3\nB0QpQcdTgjYlC90wMPxD7V32LQNmPW85rQ9GosEcSffwXTyWbVt2Si9WQx1Z\nCAuRpGjYgcaPgZAAL4YsH2FX7G6MKMdGbrSUfadYMHhzZ3NhBQb8JCezjU3x\nA5AHVE1t5coeEs3dIYsprQx9u9xakHVZTyjLZCDiETtoX3iiqDEZjo2ZroQQ\nMIZotPWvtdhRKkiibp9q0szBeP8pAsiAzwVTau5u4OWJnu9WTqP00nPqeFTK\niUJJIadjb+TZ6ikUhZwE1xuHHcu5gGBSVMRnx+OdEY2sW1oH0DmVk6pPnyAq\n3sW3TwWtwZJ27l3lo+nK8nugxzPKI7KAU3aIZty+GelgKd9vT4W6G8zUCim4\ntZdFysnvDUWvn10Zkz5m4mPnoU2TgHs4QIwOUwlyVv/xHkTWnnirRkoSgzOM\nXtX94W76Ky1wTnfVDM5/dDMDPunC5OXUkp8DySO0cX0EeMXcHyXkvX6zvuSX\njQr/aC3b8RuDs/0bB6O9l3bxcB11MpVAghLBmKfg05V36Lksaj1mIQ0ozbKg\nE8ELjOT75pL72i+PVBTMbREDpUt6iVTu5WfD/dEp4vfw8iuYHt9btTDgl2Tf\nnOECjnf/zLJQqndjCl236aT148dtTIBgVjI/Lvh7PN6T5WQ4ThYOGuWjUh7k\nhlpd\r\n=Ucx8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![Gitter chat][gitter-image]][gitter-url]\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider` that will automatically hook into the module loader of Node.js.\n\nFor this to work, please make sure that `NodeTracerProvider` is initialized before any other module of your application, (like `http` or `express`) is loaded.\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom plugins (see [the plugin developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/master/doc/plugin-guide.md)).\n\nWhenever a module is loaded `NodeTracerProvider` will check if a matching instrumentation plugin has been installed.\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nIf the respective plugin was found, it will be used to patch the original module to add instrumentation code.\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\nIn short, this means that this module will use provided plugins to automatically instrument your application to produce spans and provide end-to-end tracing by just adding a few lines of code.\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/plugin-http\nnpm install --save @opentelemetry/plugin-https\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register()\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```js\nconst provider = new NodeTracerProvider({\n  plugins: {\n    express: {\n      enabled: false,\n    },\n    http: {\n      requestHook: (span, request) => {\n        span.setAttribute(\"custom request hook attribute\", \"request\");\n      },\n    },\n    customPlugin: {\n      path: \"/path/to/custom/module\",\n    },\n  },\n});\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us on [gitter][gitter-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[gitter-image]: https://badges.gitter.im/open-telemetry/opentelemetry-js.svg\n[gitter-url]: https://gitter.im/open-telemetry/opentelemetry-node?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"46f31dd2285d55d239195032528c3dab1bf0e15c","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.13.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.13.1","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.12.1-alpha.7+46f31dd2","@opentelemetry/core":"^0.12.1-alpha.7+46f31dd2","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.12.1-alpha.7+46f31dd2","@opentelemetry/context-async-hooks":"^0.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.7.2","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"7.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.12.1-alpha.7+46f31dd2","@opentelemetry/context-base":"^0.12.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.12.1-alpha.7_1603746753409_0.9268484451630659","host":"s3://npm-registry-packages"}},"0.13.0":{"name":"@opentelemetry/node","version":"0.13.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.13.0","maintainers":[{"name":"obecny","email":"bobecny@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"mayurkale22","email":"mayurkale22@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"042e0a76ebe66b93f59fe75e89927115eeaa799b","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.13.0.tgz","fileCount":21,"integrity":"sha512-fBVXll/9e5gvouLf+JI3+oAm9J3mljP7a3wbzBXHgz0j1/rWYK8V6n6VHK/bYFP4LEf7RF3yfuwA7kmpdbxu3g==","signatures":[{"sig":"MEUCIQCNVW73Uw6vS0+RaOUSYsV/piQXn/OrPmOWovLtoV+8dQIgGcqswxRNFA4kZUdndW1Dki4H34Jt5gSCc+esehw5MDU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50672,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfyqmHCRA9TVsSAnZWagAAP6kP/2kKazKjWeS2jUaYq8Ge\nTT0mv0ReYO8Rknttzrt6Ddp01ti+D4DIO628M2d6F3crX39Ah/34+h0glN7T\nt3SuDlyZCz5R2TAjNnG0FvF629Dmhc5UrZGPuvpySL9oU+Deo5iIb2y3OsUS\n7fe/XGyGZ3gQgLx9yQrkl/z19i2TuPEUev1Y0EuKu0qebVSpunest0x/94gW\ncF2kirL/9Wwa8Lcv5C7tcXydUO0i6561KJKnFyNnL3JXZieH391vsil8ABxU\n5ee/Ef/IlUUMn88txu9Jk4NGEVriNtsCjatdrgICxabFLWi2tZ9lMAeMRxGf\nIKwE8kSI/uHsqp5DMa0lU2+UPtsIPyBW3LFgM97BzWJ3QAcJdR9Y7jzI69vJ\noSsnNJhyVen9CL+NXWPvu7PYdHAiNfxnrh+Dov293jh2VZoC0iCcBXXrDIzU\nPNSv7jbz0VFyisk05l/QJl65MzeioGjeCj0Q9p+p1KJoogEN3BTyXmyvJeGv\nClUwBmJrLitfp2xeD7h2lDW5aKrAT/ToBRP9O0Fojwz1al9ZkLFGHJu5W9Y0\nPAM6ToDcd6z6kJY77AZsBRg1OubW9nZCb4n5y9B5AlO5W1mhkRIs+2LcKINq\n5rEYDUsQrD7qSc1ePO7eVRVIKnC70/DSm9kUM+ur8m9Y/cmhUW0PidVd3Lx9\nbLJR\r\n=lROF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"86cbd6798f9318c5920f9d9055f289a1c3f26500","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.13.0","@opentelemetry/core":"^0.13.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.13.0","@opentelemetry/context-async-hooks":"^0.13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.0.0","ts-mocha":"8.0.0","typescript":"3.9.7","@types/node":"14.14.10","@types/mocha":"8.0.4","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.13.0","@opentelemetry/context-base":"^0.13.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.13.0_1607117191336_0.25568859446770875","host":"s3://npm-registry-packages"}},"0.14.0":{"name":"@opentelemetry/node","version":"0.14.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.14.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"20af865de191a6b14443d619bb08d49003e64b19","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.14.0.tgz","fileCount":21,"integrity":"sha512-79egldZKRIqXArjLHD8SYTJUfY5PrcFZll4+ykfbz23vy/CXEVev+1S8bS8bkE08DUNzskDuiFYlLdWTY8fdrQ==","signatures":[{"sig":"MEQCIDdMjIdIWl8jgvkX3pS7QVTrlopeLpqw94wqBdQBIwgJAiAl/x0KuHROAmIy0lNsZg1xg4aq/KchhO1UNJQnxh66Yg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf28U4CRA9TVsSAnZWagAAg3cP/11fle8zW0OZBK6hwF2W\n+5Vv9ryARpGvnYkmRVBAgfS2MpYQ6v/ZGVt/PP+Kk/R7KhYr1kqAD9h8/yAJ\n0jHVDT2FE970H68/goveWo1dhL1y48ux2lG9/tkKIbV4TrvylOqFJT6XI581\np6ZxXvJmbo+amLHT2UlTgIQCY1OBtALm2p9eadSw4enx+DO8m5bqMf4wH5qI\niR8zH0Yt61U1h0zS9sPk+bjkJXhehJrHIzMAvwzqh1TVdRK9xoMFSXf7Vz3m\ndbjhrr6OLW17N0u6ibLKddxo0nrt4LUVbMx8jNGaUVgZT/frTyM3WnyM3MnA\nzIEmTn9X92XQ7lusa8gRkuc5ni5bR2S3jU9zKjvM93bVAJWfI/0W0cQNtSQb\nRYNur6r2qdxkDLI+BFAor4G1EMmWPm5WEtsBFJIgA54VTgrFET9xWNWin34N\nyRAnX8VN2dOvp5c0XivYb494Mp8uQAzoXM+1/7vNjYPkN1BOBFkGy8xI/v4f\n7lBCb2vGrUeBrbq0Z9sq8kYAAodLL+HoP8FZInzm5P0se0PUfFEufgDnjC7e\nbvMtLmxrUD5yemzCFmO/jU7Pm+BSQNrKJLYhcKgC7Vetvr27H+G520qRTOu7\nTNOq4OGEKFj5WC41aC8XuQnKPbJHbAQhLP2EtlD3KZOx9tI7gfR7PjqdCEIG\n3NDV\r\n=nVFu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"27a8d4530c56257c191468b073669909bf8892a1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"rimraf build/*","watch":"tsc -w","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"npm run version:update && tsc -p .","prepare":"npm run compile","lint:fix":"eslint . --ext .ts --fix","precompile":"tsc --version","version:update":"node ../../scripts/version-update.js"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.14.0","@opentelemetry/core":"^0.14.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.14.0","@opentelemetry/context-async-hooks":"^0.14.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"3.9.7","@types/node":"14.14.12","@types/mocha":"8.2.0","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.14.0","@opentelemetry/context-base":"^0.14.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.14.0_1608238392159_0.03175797888408627","host":"s3://npm-registry-packages"}},"0.15.0":{"name":"@opentelemetry/node","version":"0.15.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.15.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c806eabe5acd1f0f07a69cf4874dcceec124ab47","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.15.0.tgz","fileCount":21,"integrity":"sha512-Qy1D8lJeKjXzS/PJVNoCeyIoDFYak/vXo1NWblwNlyo7S//9g2gb/jBwdcb/FaQfQtJQHPRIgcz1ia6gdxZ3sQ==","signatures":[{"sig":"MEQCIBujcuw+eKxVf1JYQGWQxEsaVVpUfk0Ku/arulzywm2qAiBmWKf/uDWEXpg6AO/6R+hxnp55MM0Sci8aifdUQoR39Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49489,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCf4fCRA9TVsSAnZWagAA+10P/jWkgja58AVZzukEvjwe\nYpjXW9JGcgqCDSi/zjGGf0TPJGBotOM8ptCWF2jkW5eiNYkCe87WTtAkAWUi\nN07C08oVDuaEL31BJeaqFskQYNxt4C/oIXYM1k8jdGu7CPT9yfNS0rPw5vcL\nftKUk5SesPPHk8oOVYce2D78ZdL1cBW1F1I26T7E6HRJ11HU3l7sMW+OFl+5\nrjEesC1zKSd8GaxX87v34l0Ytur4UsGd3XMIaGOdEfeS+9kviJi5D9cSszxP\n4gxTyCmCWvTHEMJg+VdmdznpY92wBJGTymm9q9H3NLL/eC4Q2NqqGAetDYg6\n2GXmfk4ryVnsRUOpfbrjnfBomUmiT6bVoHgvpeGgHhEzSs4CBTeJayjUA8N1\nqzaUA4tgQlrJ911P6cuiBQeb8KLoeZvKgM4ZHw6Mytn5bY9Y+fK4GuyhMe2E\nIQ4eJSkxiXOg9FH6/xetgx9aLAAmYD+jOQfNyFuR+b/HzBEWMDoe4m/Hx0u9\nWcsVO0DQ1PHldbwIRgWqzvzZ1YcbGJSaSu8vZzyl69VrqB0w3SF1F3FwqidO\n95/+drHKdXV8uZOKVWX7ZlXdgCSh+GRKq+PsCYNyTgMdWkPP2MY5Q50O6SO1\nA9tYqdZAlNt7NvhpQe13rPNapXepCwcmPzgaqbtGf//TWiV0jTyib3yuXkAW\nv3x3\r\n=H69N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"960b868f5b7686eabbf49190071b8463551e5d8f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.15.0","@opentelemetry/core":"^0.15.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.15.0","@opentelemetry/context-async-hooks":"^0.15.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"3.9.7","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.15.0","@opentelemetry/context-base":"^0.15.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.15.0_1611267614751_0.40611133522094756","host":"s3://npm-registry-packages"}},"0.16.0":{"name":"@opentelemetry/node","version":"0.16.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"9d05aeb97f652b5a84e59032de48e9b6f5e37c6f","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.0.tgz","fileCount":21,"integrity":"sha512-hDIMsAZk1D+dFOW7FJH155nQrYKeuSBaiHvHm3F9VfZul+v9UNlNjPXqzAahW3l5au05nJ+e7EIKKq6cgMbw8Q==","signatures":[{"sig":"MEQCIB54H9ozaVsXYAJ7VEdOJscChQxDw5DP2RIOJzes5zmEAiBvs3lF1eIcNgATbwFO0rkmpyDKz8rv8xDHnqQFIkn+GQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGIHJCRA9TVsSAnZWagAAUlIQAJBpjOnUzOsSCau3SdCh\nPEDj7gw+HIAYL6B9XO0zt1RyVoJXCChx9AtquokHrryjknhqoBlCH4OsScvU\nf0IreY03vYlTv9Zi/ggsMTj7XPVSbWWPJNVGtDTcHK/KoQiGjTiZZFNrfB7z\noN8i0trJad2uEFbQOE9o9A3iFwnzKrq9sdl8ZEz5XpneN0B0VcSt8STmD4zQ\nfHFyls+ZQm4Vv+PaP3DXCu4zg8H52oL2GaSHrnLMhp2bSIRNDRSW/vbJdAnm\nPAPDHJcBWLO7mugIHm8flS1IvVa1I0tyUgHJzMh+32yqcN2FT8MUpiSd4FZT\ncFEPk2Lk+hDNOvPPmgr4cx/hskJRbErCUk8nEirZXkEug6LBWtdtxlLE4jHU\n4XpE7UmywCx4IKujvqQMxJKjcKW4zRTThA1mE+mhRmLp4kv0M4srMFx+1/QV\nY4pu7Vopha2cc9/18crV6VKTf9nYJQL5Mi0eaedZDjGAQ6sycwQC+Dg8rNBf\nUG7GPXAiO0LDcfuyKGmb0jLdsVQMFN4m+/N31lMYUXRtBm/OO+B7lHY4Jwjf\nMs+3e4/wHhbvtwC3sX5MBwMmG5GBSbsgbjuju6KuelpSwPHwuMXFR5JnvbBI\nhH72kwLwRRVRrbuinCk3b1edkCzVHgTVOXdNUk1lNk/kczPhVYJWnQRMVTOQ\nYZ/d\r\n=I6oN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"e68863f8e63854b08ad13fb54677294ac6d6b681","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"obecny","email":"bobecny@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.19.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"12.19.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.0","@opentelemetry/core":"^0.16.0","require-in-the-middle":"^5.0.0","@opentelemetry/tracing":"^0.16.0","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"2.0.2","nyc":"15.1.0","mocha":"7.2.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"3.9.7","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.0","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.0_1612218824540_0.6342539324352734","host":"s3://npm-registry-packages"}},"0.16.1-alpha.6":{"name":"@opentelemetry/node","version":"0.16.1-alpha.6","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.6","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"51af1832783556cee0707e6c355d8bbf00663400","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.6.tgz","fileCount":15,"integrity":"sha512-6OfEnALfemlc6wmAhwb9CJYR/42pA1uoMg1ouD8qvs2+TB4+KO6G+EPZiUYJ7WAiAHA8P7WmIZ5k3H4R1xAVuw==","signatures":[{"sig":"MEYCIQCGO+5dN1DoZ/48AHt+YBXIwiwBGe2RtGfWHch9+k6EZgIhAMgEX1MxDA0lRGLtTG69+vGdV/dFmviMBE75HaC+SYk2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27014,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHac0CRA9TVsSAnZWagAAk+IP/3WjDZkzIXJl/IpL9BWw\nKWxBhuE1o9BQzrzo+fOatTySyUgMY6d2tGn1VIQ1IubfuYMIGIGtbUDyqX/U\nct+hmwQmbo1cMk9BIeOJKrHq21yyE/e2CaeuLJzGhjZDp7vR1bU0akXVzpkW\nrG/GwGocOsD5jSNeod+c4UEIe2UkY/ZxLilEL4c/XOgGWLB6fMpRCEZds+DQ\nkatMdwQkmmZJdUHwUspzJxIf0d7NEAjazP87e2Gb4oXn6GIxJOk9kPft8kJO\nPXPyi7aMCHrY2WjQsctzyOsjDtHaIRbrUHnmrVu9pzqQ5QzpRFUgqsF+NUoZ\nAymE1mmwp1JJCexK+FyAgGzFoQgb8859bBjaTx7uIYXN4mW51sWdkrnIUefs\nH+Oyo+f3+e5Mr8IY1TaVDu3MxY/2aiyCjcU+Is+i7B+1huC/HSYYCqCABhB/\nsF8gUmJ+S071FkCBEMCuvCEd4lm+SGzQrWpDcR04nF3UrioKkfvLQiTBM4ve\nFQtJi11RJYOZ1atCESwtDrG0DgL8GjCszp8VzN+oy5HRha99Z6HSHRmMNKkI\nBBDfWw95hw3ggZNkUsB1ijn5b22lLDwxznOZ2RdJWveQHc+ZcI4sXoK5yUsI\nqRZutntxQD3qNSYBC0NithiarrwM6ucx66UtVxVT3k9L+nnLSaCfsJZsswjw\nc9NS\r\n=5Dpz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"9cfa92c4a5a56ceeaeaa8d043ee2eb00a561c55a","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.0","@opentelemetry/core":"^0.16.0","@opentelemetry/tracing":"^0.16.0","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.0","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.6_1612556083221_0.48589048438384475","host":"s3://npm-registry-packages"}},"0.16.1-alpha.10":{"name":"@opentelemetry/node","version":"0.16.1-alpha.10","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.10","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"ff10d4a2f6df5b253a8e3c26b64ada213b083894","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.10.tgz","fileCount":15,"integrity":"sha512-gu0ad4JS8aMqyiGZJbTMjjfmQJcSyV1uMaQ2u8T4+qmQzkh4SrSfC74Ea0zZz4qkiMZGOG46uFZVjEK0FDc0IA==","signatures":[{"sig":"MEUCIQCP4rJHxa7gvgSykz6Z2M8YAtJc2iC6AT+yLW2lH6hkqwIgLWZQtYPeEfWtLMBKCe4EwNdZKNnRiC4aoP6Dk6sU2Wk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27069,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIV3ZCRA9TVsSAnZWagAAAh8P/15NRS+S9ENZn24jqMBv\nGzv14P6xpb9cqhieEoeh6f2F9S3z71uiT45e6NzeU0MkF8u1Aj2vFfmdSa/d\nfdoOoh71Xx9eX8gxBlTaOwzgaQ2MfXqkhgFefBM+AYqIZIEY7RhlxO0ztt3S\nsTraaLq8NYXcGdpnPg8oplHcuKdSwmBLXNdOOKzgVOWih3lZdJ27DEMWH8wh\nnzgFbvn965/9lacXw8ecWk62hL4RhionbJbZEpWVNDOx51eWqhQIKo/AIgJ+\nRbD6O8HB7IEOS3IFzO0eBH7EFzEJx0JGr/uB5UxJU8cAzc11eEyPNq6D/JSk\nmccvchFG+5pVC1myt2uxlFSgZXYHXEbN3cjcu261yMTnTiXCCZPR+4IexVXN\nmN7YiWIEd1MPIoB9aD6+2nl6jYklC+7bbZf/+f2vOP7uL/xY2q0Qq8HF7UiV\n6kZvlnbya9nXI1Bz1Uc+52m93gjA0C+alSFx/E3508U+81zRV4wCRl+bUEDb\ncfVhGfItNAr4/8lltOj80cCqGuRggbENwI/FjeTJIeU7jetUXiLTX5ZrdtwW\n3IjNVOB2Q2aAjl7PQd/3tRSSZi9qrn4W2h9omVGEAvfOoFey4/N2FOVcsxE5\nlt+jzF17prBiZfnyjjlF/+HFaoW4yyermt4kAWre4xRtKEa9qhHwnTteA2sL\nCc0S\r\n=r8Vr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"cacbbdca0e89d31e2e0b10a8ff5fb86d7a714906","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.0","@opentelemetry/core":"^0.16.1-alpha.10+cacbbdca","@opentelemetry/tracing":"^0.16.1-alpha.10+cacbbdca","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.1-alpha.10+cacbbdca","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.10_1612799448990_0.602431545366152","host":"s3://npm-registry-packages"}},"0.16.1-alpha.11":{"name":"@opentelemetry/node","version":"0.16.1-alpha.11","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.11","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"8249b89d5796f177c021579e8c49baeaf1e8afd7","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.11.tgz","fileCount":15,"integrity":"sha512-+wzsJA10eR34hWrW7uwWsAuhsMOKzEdGmVu8pmZGKquv1gGW6eWz1U05Vmq0J1m8jHIaV1uUG2IFn2wvx2dg7Q==","signatures":[{"sig":"MEQCIEgGJZcZSHZiE6GpwoX+nxmskJGT50hzs6cLxLbF3ry5AiABHnnxpzNdq4B7ljNZg6iEhpDT7gDtMHF5xG3tNNqIBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27123,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIWRhCRA9TVsSAnZWagAAQUUP+gPtzBC6t5XTZd84kw59\nNWI4ZvRSHGojwvrVyAz6tM1LWrFXVWmsaTNEJIlR4Su6PR2pZvfzFHqxTznB\nwi+HffISFDHnjSESjcNjanYo4QKdxWHr9TVTulobcK9qSPn1n5RmqcW25mXl\nqnBhHVdYMfiR7GbGFTTr4Uyx7MGgzkQZYx0FKH9SwHVdJLrcBvCZPNPIx18+\nKXCTTPgl/Hl2LI7uKRv//0xOxFnz/POdLV1MiiyRompE5iCXOKDdu6eXZ6/t\no/lBS+pwdhyXD9OLkZb/8jMYRZ71/Rx/TS5eXP2Ct9TIWO4pJZtEVVbDHUJE\nf326goxUzetTwd17EP8+1Wxcm2Wyez6OyiPgyaewarYEbt9C0g8zFeV/rFrg\nm5BA6PIbedssOo+36ChL1YBKcCHQExqLEZFZnK5NC9a+J7QIaNc1Mze1UHkb\nUo2m9xO99J8DNfyMAAfVqb6lo4J4HxH7hrRW8H2zY5QlF93RQ6zG/pCLKXh2\nTTKztfw/Il/hA4+4tV3V0iEqcu3OJgF3+YcTg/jPmUoevLTIW6K7lJIf3N18\nePYkvEue59bnuyAQC0xZoy8ZMQ8CRQpweQ71pLDwhXaigYdjZPOxtg2WZP31\nW4mqMDkyPhkcoSUpo+NNS7nZVq+JSFNGVgnLfQyOGkdxmXJkfmZ7PGbXGM1u\nxY38\r\n=17ZV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"70a128ff5dca16060ca7c2cff943369ae9999c34","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.1-alpha.11+70a128ff","@opentelemetry/core":"^0.16.1-alpha.11+70a128ff","@opentelemetry/tracing":"^0.16.1-alpha.11+70a128ff","@opentelemetry/context-async-hooks":"^0.16.1-alpha.11+70a128ff"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.1-alpha.11+70a128ff","@opentelemetry/context-base":"^0.16.1-alpha.11+70a128ff"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.11_1612801121524_0.1653191372856062","host":"s3://npm-registry-packages"}},"0.16.1-alpha.12":{"name":"@opentelemetry/node","version":"0.16.1-alpha.12","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.12","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"90d87a29653d2bfe4793369e2c99f02e16703376","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.12.tgz","fileCount":15,"integrity":"sha512-fhoI4tcV8lv8BmxqjA8mcve5stTQDCMnUW2niEgHNYmQHR3QT9Ec1BbXRC7PoLOKhO6pSF+BIeTsUxdw/QZTIg==","signatures":[{"sig":"MEQCIFCUJq95i2xoX9jsJu8q/9cTPiTX+gddCptCbgj5u/uCAiBtaL6YgoIgYdBN5dPwwpEDrdJSkZfE3sk3K3ypzgl6Qg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIZrgCRA9TVsSAnZWagAAXjAP/36C6ci0neLU9o6FnMiZ\nxbW8HKKy+Q4CwFXnI6hBCXApELgVXk8sVOInMStzo34i6pVeXfvd+iT9IDeL\njNflhB0k8rURvE6X9/whwNC8VuvJxv50Cd8qBxzVC+K7TqyQIjXqi3sRoOJG\npY/j5dsF0oZl6m1ubBwJwvgignstURFAgQiUUhe9J26ohYUN0D220j1SeWjY\nHQxTFErmsQsqGgxXhSQkkpkNFYligMl6aPQaqIculm39n27VTr1O3QQtQ1Ej\nwgx3gb7dqKWs6djZvkH3l9tUrM6+Be501XTiBwy051L+qXE4Es9tp7WI1tsY\nxPnWGZ/6M5JDANqEe9h445aQZthzk0/B4mZGp7YRNr9YpZvnPKt8hHeY/GCk\nKhlwIiGUTI9Wjazwggy/eRzN4lzNvOebj9DFcr2Kfr5c0uuTC03nTRIP7Oy6\nGiQGBlUUKBi9Q1WelCt6zumQK6mwMzIks7LVETdHoAy1n7MDz0Of4bSvdof3\num/fs3IGYDubbee6B1Vl81GUN7vYwlAdwCQX4ViOhdBqvXEBvRcpfqfl/ggv\nBe/Z3FwxpX00Os2zaNBIcPKncndo2qB5hjr3j7kxRagwGPJIbrIoqJCgDYE4\nJ+r91Ue+m65hRUv8G0aYsQBPb/fr3c/DTq+m26lSSY3e8e4WIVnPt9fhUvQh\nV2kN\r\n=N19D\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"dc384956b3c762b16c3fc62c792def067e94a307","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.0","@opentelemetry/core":"^0.16.0","@opentelemetry/tracing":"^0.16.1-alpha.12+dc384956","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.0","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.12_1612815071619_0.8915833028534681","host":"s3://npm-registry-packages"}},"0.16.1-alpha.14":{"name":"@opentelemetry/node","version":"0.16.1-alpha.14","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.14","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"6cd9618678c76e15a35023331951d20b7ee6cfb7","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.14.tgz","fileCount":15,"integrity":"sha512-BGNTYrad2QHowXLl8uwvyWWCdtpnaRarkUkLSHdKYMPFlbQblLicSUDQmLuK03t2m9b6EhhDpHId76nM0f92bQ==","signatures":[{"sig":"MEUCICM9Y57bEPCKEbRTOjOllHX2GTTBdNefxZVabexma49hAiEAuDuinvkz3FWR6EHondyCctamFEKdO0jX4wLycUTAzZI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27087,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJASQCRA9TVsSAnZWagAAbAAQAJCLKG/EwxwetJosbTUh\n555NVxsiUp//MUOdJBbxN9qvTGJ1JQ9nnaOBys8N2DlCWTpV5/+eMq2cUaaf\n5XxTGQkm22tTX3Vl8ibNgXk6bSY3arwPP8RzKAeoHg0QqoRo6Jh/AgyYgsUX\nfEpa/HAAZRJ9B8Z+q1JrsKaOX7qbnzyYqamDiqPIxYwoeyn9opPpRIKMv+/1\nXr0rNsLB4WeNcL9e6keBouM2gVw9ko0sGyKlHB3CVpJjN/tVje4APz7robG+\n7YBF5GBKd2q7zLAbW61ipZ8BMaH4W7Y5VZ9aaWg5WeBr+13DTm5dHs+WQHwK\n/3QpaACKgGDp2NTHeYC4OCDosSajmfx2wYNQ6KrmRJnotuRTBB+UHaDr+9GR\nqujqNXa87VM8Fjtp0iMLpD1uukg4WjayamciM+YTERKI6/sOrm7OSXM7Qk8U\nUmP/lv+E88mwLggO1ZvdbvfbONb6CUICu8r5+1mEeAUgXhEWGJkerLY7sTpL\nr1RA9fQcMwPmLgBLGrG+S4d9P0lhfekRTgfj8JykosxcK9OvfJK9kT7YR+mz\nJ2bRuktXjNl8O0WR1xePPY+rs6VuWW0fQrp3hLXF/pilV2zWri6fsNKi4Vcb\nYDdeh4UFu1TOEu0XKBaXfDBi7oNxcvPeEz/fLOptRS0gzR5twumMWVAWLERO\nNZd7\r\n=g8KV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"000a8ac099a3848a9a3c66f4bdd4826b4cff987a","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.1-alpha.14+000a8ac0","@opentelemetry/core":"^0.16.1-alpha.14+000a8ac0","@opentelemetry/tracing":"^0.16.1-alpha.14+000a8ac0","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.1-alpha.14+000a8ac0","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.14_1612973199842_0.8031432020946558","host":"s3://npm-registry-packages"}},"0.16.1-alpha.15":{"name":"@opentelemetry/node","version":"0.16.1-alpha.15","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.15","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"0365e7e769085242914018635d82bdaf581882e1","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.15.tgz","fileCount":15,"integrity":"sha512-o/QVPvIXUhLtvcwzz0xenBRa7wA9M0CdrVybgdS6gyiZ3YuYgm5EkATypdn/YHFaWH0aPTWoR8FGl/Muye5XJA==","signatures":[{"sig":"MEUCIQCUIxdSpl0UXa8XbvBCL1oSDjinUwgLSSJIK+HWUdTGlAIgXpz1rfnxmsUoE0y7E9QOEGrEy5uuSzEvrVDPnJUakjE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27087,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJFvBCRA9TVsSAnZWagAAJE8P/R8FseXDTfhuaFQjcXKg\nkfmXtNQ+trj0OPC9aWkHLVXq/MPerErP5YeX+tfNKvqDafRsU0g8cskT47+1\ncMcCSz+zhfns5cC0KT8hTY9cIUiqSlhNmrDctxA9heq9E9zXMaJ0TCdPp1t0\n6G+WScPr9NN+zQ5J3os9nOgNL58almoJlAduR3hlJ3NFTCN/YIUmaFP/NfDJ\nwH0zilpDBEMjMTskubz4LwBlpwWrD4vXQpShO38lJ+eXtO173+rpedAPrISl\n3ScisM+l0nIMYy7B9meTrwGOAwY8JI9w8Uu+oS0DUV28jIWNUPCixOuT/W99\nVuNNm3xcucrYjtaqkLIrJlup5eohb6lOQ2inKaLraUUORlfT4hdZzYWJ4D3s\npu9vJsj8NPG+lA+SV/4JGMTQbzAssqu1Ay7hX+39HXE4+rpBZ51iYx/n5o9T\nVrzHD9EASG2+28ah86BlihxFKhRz21FOSunk/a6DbqSQKoF0/+H8JoqdyQGU\n54G/9iAQyYGyXe1giaLgTyy7WyGjLeGfAmG73brjgckIKM773srOEnolZ4bm\nXYVE+v11XfSY7BSpTdgYE3sJsQrIVuj+pU+2OcyzOHo7ZqL0I1D4IptpbAwF\nU20/kJhMia16rVr+TOprULzmN/55fAt8SiPF1RF4E1pxVcf2p10LPW683/5U\nHHAS\r\n=s1uB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"1d682c2f75f9d11265cfc1692fa822174594d4b0","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.1-alpha.15+1d682c2f","@opentelemetry/core":"^0.16.1-alpha.15+1d682c2f","@opentelemetry/tracing":"^0.16.1-alpha.15+1d682c2f","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.1-alpha.15+1d682c2f","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.15_1612995520834_0.7670927473455524","host":"s3://npm-registry-packages"}},"0.16.1-alpha.18":{"name":"@opentelemetry/node","version":"0.16.1-alpha.18","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.18","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"0f7ade9c623f04e35e3119517bbafbbf5eb6de04","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.18.tgz","fileCount":15,"integrity":"sha512-QMY9sG2XBE0pl8Vd0xitrhTD6SihGU8xTWPrnoDf3Fx/jcG+q/760n6w3hfp85pRJiacASgOS0TQfXqC0pFA3A==","signatures":[{"sig":"MEUCIFyqYdDGvceJd01yXK3Q1vMnzE5n64Elk8Ouf0GI0cZJAiEArW4mMb++tg68HKOpPejIbAhRYNT8F2uO3ZTcZDE1du0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27069,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgKWgsCRA9TVsSAnZWagAAwOMP/Ro3qrgN6t6VA+v6y9Lb\nZMKBD2uP7t09tGIQTu+rbFufhCYIgZxgzX1u//UwUwooXoJ9nRH2rUKJcpoN\nqIrJJOMoNLubedTIcO2IWXTJ8vMmsW0vg++l3mEq/kIbzBYXpB47DXqr150T\nw7isw3nM4rUOj/sMUn4E+crNz+9nIeUPLM3DJ0FUkOgWiu4HEHY+rH6PHZpp\nWvb8b7MDoiV9iH/V/+uyD7ut/jj5FQm+btTxRE8J0NTyGa2EnOHWGI0LHRwu\nrkdgxTxCyyu+yrCwfj+iJ7PZgSnzFL1kxpmgDPZIvVYP347u+SGUIK+1uMSq\ndY+c93M/rJtXiXM4flqt80z/ohXqs0NtNlGh0gXiK+71nmAdUZvZevVYbuFn\nJc2iUb6MA1GRItBhJ+jALPt0jmgAwhRsyWdPXaQ+dc0RUjeMDfIin98vljnP\nllD0kiDmc4G9nzNu+iAE+ZsggP8tA2q3g79lQAXGN+9MQp55KI5eKxBbOoBM\n0SiEHS5r8XcaVgrL5weoW3GTOTQOGyHaOlyGYo33LQ9bapWa5jB5J8PGLM1U\nIa9oo1aR4L/ztQk56Pr9djdcarU9IJz9QfHBl03U0ZmACbMAre4/zMxv/t3X\ny6yjYWT00IhlOycIV5NQkxAdvA3qkGh2XevoThcqmoarr/DrzeKVRErALhfJ\nEq20\r\n=VbIi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"9f965b0c749108df00bbe44eeab84d79b04bb0a4","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.0","@opentelemetry/core":"^0.16.1-alpha.18+9f965b0c","@opentelemetry/tracing":"^0.16.1-alpha.18+9f965b0c","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.1-alpha.18+9f965b0c","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.18_1613326379702_0.8810328192832004","host":"s3://npm-registry-packages"}},"0.16.1-alpha.20":{"name":"@opentelemetry/node","version":"0.16.1-alpha.20","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.16.1-alpha.20","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"37acead1cb531af7f6c9d50d171196a824015d00","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.16.1-alpha.20.tgz","fileCount":15,"integrity":"sha512-McDgfJT8JlX4SgoQXCUbfYI96CU6upDFPGJ7JmmG3NDzkOKQIIeAErBM79+JymmOXv0A25CtHGme1Ii8ffxznA==","signatures":[{"sig":"MEUCIQCsgl5YWCdQaka8+tGRG6OMH4iFA0CslyXIGVvcpUk3SwIgL5SyamJkG2soLHwuyR1k1B9bGUznFig9BniNvtjPFwc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27148,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLYIQCRA9TVsSAnZWagAAqCMP/iBUTM98/76PJkDP9Izm\nWkK54tVTiGo0HeefAYrAOVbosK/JPTxa8O0lvVuxERjQbof/hOU8rFkjV8d0\noAel419gfz5d5taOst9TMFkvk1WdRH+oKPPahcpgZptLECzxdX44+NXPkaJm\nPllfwiT6e2tBr2MByoKVK/uxvd/IWeyJgf0TC973cmlsdrhC0YxqC0jxjTTL\nBBI8nIjZsCisC/uBQDEp5FiEDziQvNmN/0fez9IP1I8VBPKbuuZynBVIPmS6\nOuGNlYp1i2P9Q37UbaYXF/Mml5QwAar6fSwKf7x7UJmWQO+wVJsbpYNIdmHW\nEHxyxm6PXFjqTASDvF4P7GkT3qLNSVrSYqSp49f+RfkKQD81P1sDnum2Ozpe\n0lB8svdDpZNrMiTRFNcR6tJI8hHy25VRS5vUkmW9huOA7KNeM0a0tc+eRNSi\nK0VLF4z8GyHth3IsKYx6NSeam/UyXPHZlVV5N+c/okx90LW3p2wikKXOyl1+\nyLoQyJmkgiDIVvvdraWXF6SFOW7GoM/HhDgVGvgh4GeAPtMze00W3riA6NqB\nGY9acXPKV8yNj1d53cJcH4XMhAkGFApl29Q2Y28Hcq03IhUxho4kaQka+J7z\np10M9Rm1YC6owSYCrqb2w+g4HT5jq5OMXBSKx55zQ2lrqzCOmW9xwivtl09E\n6dzN\r\n=pWg2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"62f8695d3fe5309c62418a1043bc6e8a176bc11f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.16.1-alpha.20+62f8695d","@opentelemetry/core":"^0.16.1-alpha.20+62f8695d","@opentelemetry/tracing":"^0.16.1-alpha.20+62f8695d","@opentelemetry/context-async-hooks":"^0.16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.16.1-alpha.20+62f8695d","@opentelemetry/context-base":"^0.16.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.16.1-alpha.20_1613595152237_0.47953729824705005","host":"s3://npm-registry-packages"}},"0.17.0":{"name":"@opentelemetry/node","version":"0.17.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"a9d0fa56a252a7769fa1c30b3841b9d4c59acaf2","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.0.tgz","fileCount":15,"integrity":"sha512-ED6Js2HNvsbekT43v7YE2cy8o1j5tbrWGIS48PiJj43l8XEFjrMWF9pezM7bGThno/f0L2vNuuYmc0B0/8QyMw==","signatures":[{"sig":"MEQCIHW9TTykOGt0UkVIEXAEpjUBrwpfP858tjwgg1eDgtBGAiA7oFhMHTtBuAZKxpQK2yc49uJbea0zIEZB2QgsYDyeOw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLYelCRA9TVsSAnZWagAAUQEP/AmBZdqoETceuw2TDDsp\nS8Vf8bmmXNFGEEP86EdmTvq0JsEhrpSV1B4lv5qYFSNUAcWCSNvUr4AXPdgs\nif3OOwXM9s4b+6FXitUOpG4z+f8OKkyfAH+TE+UEvszXGvoX6lytmP+EXTeP\nVIBNhPzOVjW2FdUYRNJlfLBQbYIsv1vsPOczjSB9z86vNvcmJMz0YOfWMCuG\nXuhQP72FHwMn7N9poR3w/4Nt3Q14jBvBtZSOdne9UTn9w1kh60jwmPqDh4Tz\nneQPzI3It4SpDMZuvja7fKogglRECwwba++5RztuzITvCj05HdmrE5NmyzSD\nq5HB/vru+0xuXQ5VP+G3I62S9rEmTEven/wn68LTJzPw3WgmU/uT9VUttfs0\ndxA807olKr7Ss+N5hVgxVfbPT0Y2XehpY0bVgcNy6Wflye625uPGEt1UA+q0\naGvTj4BLhtWjxnGN6Qm1Q1QzjGLRhsQ0BOlFjxRFM5cJ86/l4JslkdyE8FQw\nY7LxwHpMXoQOvcBnOCQOnuVf3yi6OqUxuw3rq3vb5LiusiD2tXvElZQl/sfn\nPYS2vr/R12s421aqPsbfUX5Yt30CnEPhfnoHZ4s7022KlbTUXn1obMS9Kkt3\ndMpVwcXiA6V4boQXxMFBoMIe6C/jmcd9Wdh4za19HOE4x0DsbcTOmMxx979r\nEHo0\r\n=T92w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"a91ea7617f288af632934334d0c8ecece318ce73","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.17.0","@opentelemetry/core":"^0.17.0","@opentelemetry/tracing":"^0.17.0","@opentelemetry/context-async-hooks":"^0.17.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.0","@opentelemetry/context-base":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.0_1613596580647_0.5416958706809378","host":"s3://npm-registry-packages"}},"0.17.1-alpha.21":{"name":"@opentelemetry/node","version":"0.17.1-alpha.21","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.1-alpha.21","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"5c0c710e0a594db1dc0fdd7fbabaddc691867d77","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.1-alpha.21.tgz","fileCount":15,"integrity":"sha512-lHhcoA1QaEwyJUiMTg7qqsGlvYq3fjvfENb78w0iAiyfemHDWPLeNRmAWr5IyWEBetIZYynZY0hG8l6YtEgfoA==","signatures":[{"sig":"MEUCIQDpOL+huf3v69as+YE6HnH3Kxag4VbSLPBNcDyPghOPBAIga2v6nbmrDuW2xJtO5HYQqIj7cxRetpGePgn8lx178WE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLYfjCRA9TVsSAnZWagAAxqMP/jXub1jLghww2GmIHZWd\noh4cGsk0a6t+RlSFBtQ0VrIOinqGpAWXb74tKoI5/vbOiCMuFyNdFm+BctfM\nuCu4F1qcgvFTjvN2kIPX95171zApWkSoSer18ibSBFNQpodWe4bEdYcIjCjC\ndzxTiEuntBn6WmAVpWMVmosUlnDY8oBcnwDet/fVPtmXyc/DviAJ2Kcdjsu/\nTZm1UGQmwEmwl56jucfRTOFehQE52uij6sLXLikK78mg/crEUVp0qhKX0wCB\npO6vObudIT6GwoSsLmD4NKNX7g+gEvxuRFy637vo59M3XQYU2auLsCvOQu8j\nz3KCs0IfjYxgdlyy3sH4oYvYQIByhmoXz2bB1paC9w0L4jMbqFK/H4Mwd2rx\n8wzzxg4zAT94hv11A8tIKp3OLObHCSq+m0W3b0ffi0Ih8CpY0L1wCcBpoO1F\nF4JzO5J46eqEejA4gA3nFqt9Ud29LhhXQdK+apdXpZBQqJGqkWUZ6wLwiUfZ\nJJgIlhR04YHbieQgqaHv2B9Dw5ZCSN3E8VRk7ga+WnWW5rtO6DBQha2D8nrv\n66+ADg5G6x7TlfbqIsBcFO8U+Ax2slH/c5GoB9tUaqwnUg866nsDTf80S9gf\n9TscVGIMWHKMEPso6FlQeYdaQ02MH9/FPfKfF6ntEOlRlQKHNCtZs61mUNtO\nj5CI\r\n=EaK3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"a91ea7617f288af632934334d0c8ecece318ce73","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.4+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.4","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.17.1-alpha.21+a91ea761","@opentelemetry/core":"^0.17.1-alpha.21+a91ea761","@opentelemetry/tracing":"^0.17.1-alpha.21+a91ea761","@opentelemetry/context-async-hooks":"^0.17.1-alpha.21+a91ea761"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.1-alpha.21+a91ea761","@opentelemetry/context-base":"^0.17.1-alpha.21+a91ea761"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.1-alpha.21_1613596642858_0.7719258058355458","host":"s3://npm-registry-packages"}},"0.17.1-alpha.2":{"name":"@opentelemetry/node","version":"0.17.1-alpha.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.1-alpha.2","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"d6840bf4c3754d1e338475e39e1ca97daf593d8b","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.1-alpha.2.tgz","fileCount":15,"integrity":"sha512-YlDp5ofh4/TsF5td/HDoHcpPA9rKGfecHbDlykKTxESBqw/Bo/E5A8RgLqi9KyPLH6cI1qzQHNtCpvsLBChIvg==","signatures":[{"sig":"MEQCIHypHYMH3ga0418yMzgAS+Q9nLE7+O1UoLOmEPTN/CxwAiB8qwiOX6dAO47QRSzMTDoiAwb7yI+qxi81dDTqfBTFxQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27126,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgMUjyCRA9TVsSAnZWagAA5DEP/AswLKbjaw37mOjhZEYJ\nW15nIa2uKeO4wVn3/INZgUOIqGyxVzi1PsQnFwZ45VDvsXyvac6BP0NiJERL\nftDmToXz6C5IyvSSBJggLGsqL0ndDPCIz0K56GM4eAn2VNs12Jp5D5bAiBpg\nfiTLwZCWOwOtZA57KtAQRFTyFK6tM4mSEgO4+VjnGR+roJHCpUTRADHap2KI\ne0RBAlebCj+H26TyfkUMB/FBwt+D9AYT9jk8wOI+FuTqiX6Far5QqyKZfnKV\nJKaJHna+uqYD16I91GmxIC2ZHaXkGS3BPErSByx4zGYFDryDAbGOW8ZJwWsJ\nLn1E0wiLvSN2RmTGEpPAs81MhsLZHWdBcY+37Rf7tx9WGFxcCSA2wL4fDzVq\n0YP5Cg31ZIVG/TGdqFzSeZWFUyZImBBhxFIFtMtw154aJJw76HVuSWhSNTfr\nEUds+Cg6IrIw/SdH7EAZHha7FPxSVaRKbITy+mYSFkjUejE42tceIt/q0Vmi\nsJ6VmUWS/KEQftptJtGaBu3CoXSW20bd9xBm9qtbOMYPt+rOo358/bCA+qc2\neY42ehWXChL/lHlPZC9V8ZkEU/6picAG2dbbMSq8/oGyyyMsB37Eil//tImd\nNctgFpIwf7KII/zUY5W5SlL2SGuWsUF/EqEmvKOYTf6X6r4W7G7GGha1eAD6\nqU3Q\r\n=JJN0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"38d1ee2552bbdda0a151734ba0d50ee7448e68e1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.17.0","@opentelemetry/core":"^0.17.1-alpha.2+38d1ee25","@opentelemetry/tracing":"^0.17.1-alpha.2+38d1ee25","@opentelemetry/context-async-hooks":"^0.17.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.1-alpha.2+38d1ee25","@opentelemetry/context-base":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.1-alpha.2_1613842674164_0.22642146191473533","host":"s3://npm-registry-packages"}},"0.17.1-alpha.3":{"name":"@opentelemetry/node","version":"0.17.1-alpha.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.1-alpha.3","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"31ca1d250cd190ae5ce8282314f25cb5d4070100","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.1-alpha.3.tgz","fileCount":15,"integrity":"sha512-iaR1C7imcqHFbwYjZpznSZBFUl2QpgEvU+/4/FtYKJmKe/jx8clsPp4tAvJ3OOKydwsop4Xi2tk0U0mwE2GNZQ==","signatures":[{"sig":"MEUCIQCdPQvK/Pa+/nLg4UircUhaUWa4Vr8pjAuIlBV9kI4YZAIgVYYfYdZ8LmQUYjsLYXqmGXDEptMGzu7Ep4PPbe3H2UI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNBjECRA9TVsSAnZWagAAjCsP+wQFYjODnHvghkbs7ZWu\nH015ZwFnucEF1TVFSrLBxUJOrdObK5SZ/j4K81wbjSpQD8tSrHnaGPq7+kTR\n8TseDgU9cRu53460kg+xJDQC0EwCB35etv1hIZ0NYYGOSMjA90MaiAXTOosc\nejXELvCTo0SypKBjCi/V0ACxBqAvi+J8odlaWmo31ZbcTVoRv4kTTDikPSvr\nh9crDNd3j9FqpY1nxNm2gl19dbmYlKdy/078mLd8D5HHJhZ/cterDjmBAx5F\nk8kSkYu5njC3keKUQOrfu55LWsbfxFORtyxJLm96d7+0Dhh/e6YpwpspYdho\nqC1P2Z9PEH9gHImuMXlkKyQhwStv1zFdumRi8KXei5faeB7E2Gid3SqndBXz\n/+js4QQ+bWA2pMfvaOiHxsZNTeqIrDzF6u/MKBr4MU+9K6mkdOHxrvi4Odli\ncIs/W5YdbV1SAx8x/6+30nHEFAlXp4GycDvCsrnVVhO8qhzKLX6yZ8l5ETgz\nyY9vCvFhOisS/mMuhU7Jqp/C+YAC8h2FKvXByIL08ck38AZHA+tpRCW5INyN\nxe0IVhheqNVcqhojLzvrElNPEzSHuWFZI07B8OsaxxGDV9L2mJSWr2M1AWPw\ncQwGb7e4bjw7u6OfTYW9423+1jOeB2FOvcgajO7Ps8L4J28WKT2T8H9lx7pl\neMb2\r\n=jchw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"9437d7e88603e9cc4e818ba7cc90de32832ea284","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.17.0","@opentelemetry/core":"^0.17.0","@opentelemetry/tracing":"^0.17.0","@opentelemetry/context-async-hooks":"^0.17.1-alpha.3+9437d7e8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.0","@opentelemetry/context-base":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.1-alpha.3_1614026947662_0.3887948687486775","host":"s3://npm-registry-packages"}},"0.17.1-alpha.5":{"name":"@opentelemetry/node","version":"0.17.1-alpha.5","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.1-alpha.5","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"e6b75f61d0418c15472ba0713db60d5cf2d7cdf1","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.1-alpha.5.tgz","fileCount":15,"integrity":"sha512-zWrgTgWxJa+csY4KFfXgot/SDGL7A3M+bwwP+LIEZzZtKH+tr7S9lDBYg82JrdbAScvJLIXZ6f0FJbCudyiM7w==","signatures":[{"sig":"MEYCIQD7btQUjmZHDJjq9QUWa5X9CBux+tiXc5lYOtkffTYKKAIhAP3ytkR3Sm/XfUE43eDH98cJWYYMXJoxrbVcF3LqFswr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNorRCRA9TVsSAnZWagAAxDEP/0jT66/baAIeL1VPFrzk\nLiaZuVHsV5IsIbmrzVVjjpa3DtTAizFiH3Y6IBL9nQGFIC6Qk4SpV0fe1jlm\n8wcwfonS+FjpOEZbrR+UCr2CYKWUB60mGaUpt+3+Dw9u/xGMeeLBjOXu+ChB\nI9j6ARu0OI0aylzo/q/L3RZkzbaO9gMGB4qvSKYoyiMqwPFQOzLPgo+dSX4T\ns2WHEH367wD3GV3uORQ01yzq7POGuIty1CFezYmMvV21WZ+bClHV8X61y/5x\nN7MZtx0d1ABiVWuf9f/VEWA5yJ3h8yyLYy07nT8yQlMg5CF0wC7l0xJf2qVb\nBZUO9I0nC+Ou9fL/N048zRjiG9iPadprFtzm5xqJde0ZiZBjh2cs792hoWqR\nWmwbD+VP58ByVvq4rDbWiCU+hLDKu8JXRPMRl3UmFAq6K/RaHD2EcdRjRwO9\n8U0oLTPCoXCo2gRKVrMVMaUkJr/RV44WtXCeUTPWiF4RrY8roGHwUVnrFkiB\nEjntFVrXWuw+Q4wPhtqrlQ6z91uc4BzM+7/GAllA35m+DZrnNJ2cJBvY41Q1\nYVWAHl/AABKGzfMiCMQLREMiJzVqkrUWC4VFKlTGU28Q1hn22Vfw/uyiKl84\nBNE5OPxZ0f4XviKihyxUudpn83JKGh8Ow/ZBfwIhTcvHkvRvVYNq7834Lyq/\n2Pad\r\n=y7I+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"36ae1bd89abc2e2cc7f64e4a35a94d7e75a81d0d","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.17.0","@opentelemetry/core":"^0.17.1-alpha.5+36ae1bd8","@opentelemetry/tracing":"^0.17.1-alpha.5+36ae1bd8","@opentelemetry/context-async-hooks":"^0.17.1-alpha.5+36ae1bd8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.1-alpha.5+36ae1bd8","@opentelemetry/context-base":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.1-alpha.5_1614187217299_0.3378603943995704","host":"s3://npm-registry-packages"}},"0.17.1-alpha.8":{"name":"@opentelemetry/node","version":"0.17.1-alpha.8","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.1-alpha.8","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"96571e6b63e2d17856b7e1b539f9c1b86058474b","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.1-alpha.8.tgz","fileCount":15,"integrity":"sha512-c19UBO8UCusNC4HZuSEMX60OOFIm5np+JbeS71XdCy6Q7bclzNsHehudMNzQsQwT9JNj1lnPPKlfLwKmxzcy2A==","signatures":[{"sig":"MEYCIQCNSDWC39j3N3ixiP6jod9J7sb2mg5Thx91E3buowt4uAIhAJPcVsZLwWxKwVZRbNroIKzY24ToXVMi9pUnVgBVcY82","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27097,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPO5nCRA9TVsSAnZWagAAXkwP/inHZOT3HfdF3M6ggqpF\nLunEezGrQh7hSP10ExV90EGnyxM0IO+zk12Nqelt5t4paddN3GQAC+dxz6Lp\n84/MGaZcpssLICU42QkneA+AINwLcKAVyhzedFDyN2/RGWzs+z2s5HRSxhYJ\n7FByKxah161hLPQU8Smr29K0eUY+PxtS0b+rO+WpE0mXiQyHweZ1gGjUto1n\n8O/2NtezSECuIALxDhg0F01AsjqHluk4DMSAKjzsJ6PTC1NvEh0mtuBvGv2q\n1lqs8UZGB1snODe/7wcslUSM/60QW+jL6uzpI9nzVk9qOKAZ/S5KQfpNh68a\nFz2Uimyj3IresNY+QIZOFk2kgDwgNaYVrJpWXhlg4tVb0qMNlblLxMTKVdDq\n4ZrWmVybhjWIh5/hhTWYgj+CGtNFC4KROSVOelha+7eG0aJA6/cB3UMTNGLx\nO2Z++Kzjvik7QZNsBoHCGgjRGGV+Zzj3i6KCUZGS3cj2nmhIBtcslDcpAnmO\nn0vMJdfgGD+We7II50eoHSd0+WqfJNtsErFZ6eoLlWayuGMD/sJMI5cqEfOe\n/xKFwmIhpgwT2oa+B1rrSgJlN6+FQDeR2W6ayYnxdUnGjNpxZsaMOfH4wePi\nu9XFXwQgjdzfu0vbshSLy/QIECMXh1OOcOiIC08yGNOYDIvG/NWJqN32BRbj\nnFSZ\r\n=2riA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"67f7e70a3de005484d3e110b06f6bbee75b6f8a6","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.17.1-alpha.8+67f7e70a","@opentelemetry/tracing":"^0.17.1-alpha.8+67f7e70a","@opentelemetry/context-async-hooks":"^0.17.1-alpha.8+67f7e70a"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.1-alpha.8+67f7e70a"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.1-alpha.8_1614605926931_0.7027600419521545","host":"s3://npm-registry-packages"}},"0.17.1-alpha.10":{"name":"@opentelemetry/node","version":"0.17.1-alpha.10","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.1-alpha.10","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"e7cdd7962e38bb05e7ed165a2e40b47e81e4ee2c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.1-alpha.10.tgz","fileCount":15,"integrity":"sha512-ZN1r7wnO0cmEQ7bCry2uET5QY+tRUgiP8TpbYad+DH3blBsS7XEX4GnVVXHz1bkT/pj8I8ZV+rGtyYeXw1/p/g==","signatures":[{"sig":"MEUCIQDnRBqfux1vQoTBzMLYu5sKhb0Fiu+f4XyF+ugAfoCV8AIgAOBHecVX348NNcmG/NOKguM271ckqcm1wOYCieLJY4A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPjwWCRA9TVsSAnZWagAAUX0QAKAfBXihdWlsgqLNSzzZ\naRPdKwYceWTk3Szav36wn9nW2ESQZf8IeHI06BLsCH1/96I2iXlZFNwIlcuA\nsZfOWeBu00Tmmje648+AJGUJhM9DlPy/2NFa4Dnz9pV26HA/y5c7EhBorQVq\ne0qutQWoBLnCFgKCccb/BYEDG9U/F3ater5/jJC53ucl/in6JVbvyUB10cg4\njaTcfKd4D/+jiUb/JrF++t8h6psoE7sZ5yH7Z2scQ+a4KkzNpWO2GRN3Qg0L\nfw9nY9QF0aDChBFq9dmTg9evJUTNCk7I6WmLxA4gnEBcVnY4shB+KTAjz5Wa\nREddtD+Z8tiLSQBMHrn8EZ3WGOboejIN+gJYHQOgwRndspzjBMqXaBe3+tX1\nmsRIaUHrpOjjoI0w2MDEBJEsAHL9PtOTVIMY3wpHJCZbFnkVXmpZQq2fQo/G\nZX2K0BEbbz5YRODfqvL/YbJGO/6hLOM6BocYQA0dxUnZx68wbLD9Qm/hy6ZN\n+zULX9v0bxsly+sJvKKQiZy96H2/9t6bkYoupnvFwIHrD+aWE2sLlvqEerzO\nh6CdQFvWbYCJZ4Pk3s6cunLtkm/omsY7q3nTGboArmK9lgSp+YxnfxJcidUx\nqIszVlp86qCqCMyS2Zh2ZHBN9qHFTCuvwLwHWk24yorlU/0OmW+PMVyIbfai\nf4S7\r\n=DyM/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"4c609aa13c899dd2b7a963d2e3e491bc35ffb742","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.17.0","@opentelemetry/tracing":"^0.17.1-alpha.10+4c609aa1","@opentelemetry/context-async-hooks":"^0.17.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.1-alpha.10+4c609aa1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.1-alpha.10_1614691350348_0.057211113216766085","host":"s3://npm-registry-packages"}},"0.17.1-alpha.11":{"name":"@opentelemetry/node","version":"0.17.1-alpha.11","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.17.1-alpha.11","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"ebae62867b3031d3ac92b8a95b5aedc739f0c669","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.17.1-alpha.11.tgz","fileCount":15,"integrity":"sha512-GNH1tQb5T7cWsaFrHYPN7MBM5/qWrX7VcsQEJJ2wzZOTFJ/3bQJQAD3PjlTeT5rxZja/d58m22Hcp8IFzUauTQ==","signatures":[{"sig":"MEYCIQDOhs0t2Dm6SDe24T0gOwZplx3Qzmtr7vQMgER/e9WRmQIhANUy8sCtRJcGuzyorpcbenxYHMJDcsFvk+90NfudE5UM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27048,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPj5TCRA9TVsSAnZWagAAmmUP/1Y0hGAEwqbo3Im3km0z\niKoC0Pm1mREkYPHne2HNxSw3UZgjrZzrkdJwBzgAYwWsO+xFYNtpDFh5BgbJ\nwVIU4HhnesYoNNhxmhT6toOwS86P2FNOjoCILpLaUm8rRNQm7F7ZVqsivYkn\neqQzXXPoCogrbuG9OtsEeSWxDpJxUxQ1p5W5vO3f42K6W/hlPgCDdF435sx8\nuwCZ5t1TaSim3Rc9Je7b+1+ggjqmdf03p1cAzfHIAyqdnTDaI8gJ7e6JSOnz\nXnz98RzO0p1vBU5+K8OTV2Bgtyy1sCUr4nHTfBEH4x5E8/6f580vrR2TlTMy\nzCDRCnKjmPU8xsf7nxyIHmLUwnrrngSkiZ5EcP+GC5nRsRi6UjcEk/B6tstL\nUqVnspm9EzPCXi5+2J8vNdKKwXwsC1Up3qMPtaSO3J3URs6S0lxPQHPvsthr\nnnyRbxAfWyjWrZH8FGPZ005kVPBp7w/2hICn6jsO+WZvH+hxm2J7iAIRUUBy\n8tQieLjsCw4YACJDCEgs2tmotg6iNQ4Umns4k0WN+Mo7ZkTQI4TotPw/kR6Q\n2YLMU2DFLtDqbj9Mvq6MZtouSShcEYtkMdmCuggc6ItBrprp1AyU0vKdn9lw\naz7HV2FI/jzjDChaHX9Yff+OwXG2RsWSREvuAIC8jP0bH3iXY1/BRDg54oJa\n0H+W\r\n=VCAD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"41235a9e68b13050ad49b8d6abc5c868885a74fe","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.17.0","@opentelemetry/tracing":"^0.17.1-alpha.11+41235a9e","@opentelemetry/context-async-hooks":"^0.17.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.17.1-alpha.11_1614691922773_0.8838568944369387","host":"s3://npm-registry-packages"}},"0.18.1-alpha.12":{"name":"@opentelemetry/node","version":"0.18.1-alpha.12","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.12","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"e904076700b6db07fc40da02adb985dc2bf77b48","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.12.tgz","fileCount":15,"integrity":"sha512-NsHo+NYZ0NOGfHKraqS8cL5CvCvJCZjch0KYxX7J7gGkj3wdRHq87ZFubLzLSWrWndH20GbWx+oGazPIr3IXCw==","signatures":[{"sig":"MEQCIBh0ZTg5DxNzIxzKH2IuBxpoGgYr9vbAfpA5ynyzUI8NAiALEUX0YTuHUBiC26Ur2UTdtmSXVIuOlZXJieLezAoogA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPkOaCRA9TVsSAnZWagAAvgkQAIHQYk6strypk91YW6b9\nQkeajaVf5Frcw0ac2OLNf6aCnyoJro4ZN2xwGmqkP1PR7q2s2hTHcddx1CHD\nFpXL2NntwnmVHK5uu3wSYMrSCywn0J/emJzmuWECGxJZfoaPlGmggeGN/FPe\nx7vbMLpJBFY8AEBLTWYuCDMvmqdWDpHWbWu0XFlvF5cMCBZHKELzhHetMtEU\nM8wbGtRFBlhAd1YdSgpmOYGfJSqO+FjqEnoRk84IEBxG34rOzWjLMrKjVYH2\n3zJ3YVvuJfFbYknzZ3waXuscPhef3nrHz/6qxmxVAAyvWH+ZziE3JuRk61cg\n2LrlAjpVqVPdtwJTvcI39k9Lb/BU0jm/aAFwOWSoqJcWURWot7mli1ZlvVjB\n/2llgFHF809mRuLOk0z4K4kgW+Hc9RWmURkTaIa8OBElgrQikZoWC+VYOkeP\nKleVQlMBQS57p1J1021KMu4Xm14djYQntb5etWXJUzRFROplXa1ER974mD11\nJ+rcsanGUr9Wpm46NF6TGACQ2gKzLXxnJmT//WMwniccmcPNpKZendzgh/g3\nyZTB0js0wJyhCIrO5cCR/wB41t/IvqyvFVwKr0bCL+adxfJCwvnH7AnSkmAx\nPBTxNeWvJx8II5LCqMFngFsEz6rz/w26y/plc7PJt4TadG52iKTZZVDXLZWE\n0X44\r\n=Unsn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"6540b54a8bd49746e164ab730269188237f89b1c","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.18.1-alpha.12+6540b54a","@opentelemetry/tracing":"^0.18.1-alpha.12+6540b54a","@opentelemetry/context-async-hooks":"^0.18.1-alpha.12+6540b54a"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1-alpha.12+6540b54a"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.12_1614693273962_0.5281251398729945","host":"s3://npm-registry-packages"}},"0.18.0":{"name":"@opentelemetry/node","version":"0.18.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"be8aadecb3a4c627030a9fa805c5e438aed77de0","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.0.tgz","fileCount":15,"integrity":"sha512-KjN6O+BvNmBwjQHKpcIRyxebrRuEMUzyS4Y13ZMH684fBMwRTju45aDz7ILCFndGECvbtl8nDY0US7+HCimpXw==","signatures":[{"sig":"MEUCIQCi8Gy9bWfwsuHuPIOcio7iSOlmyuMUFWVBfTPOtZeQ3AIga/AvZdh80et8xfJptDh2ziGni2bLA4OgM4fcnFZaf1E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27012,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPkUuCRA9TVsSAnZWagAAhfMP/Rir3buf5h2SMQlVPskg\nX3CAEveVxhi7CDf75hfkMrcDf6CtizKz73mkkPnGtMJkmqNbVXumZUvlrGq0\nr0QAHEXJJu/yp1fGtfgRONW5/puavSDbHEMToZAkrT680lGQLebrITBVF0i+\nGytqQOkpuRRuYFtZlaMccoR5MX0ZNmiDrDP0Z3nQbK68K64Q3Xi3ZvHj+eqT\nzTR82lRZ3X4z59xIO5FwlFw4yjUzHjGkcvZyX6wP9doqfIhiWLqjWsjHeQD+\nZhCB9lkH48a3P624Pd0GvCrz4aOfJDYH92Js6Ziu0uGEZQOmT1r9qpBiduMj\nrUmaWM9tRFtXiy44CVfLT9h8mMryWlIfPjaYwzvn8NuyzeCBJuE9dZ2g7MJC\nioYQIvIl7JgefbwLha9PJsnJ7ejCeffHuo5RKTfTG/5oaxNjZOh9GMraN7ns\nTpTIVha7y5RW+5JjZUO/yx6+9vuWC2WKY51Z++iPQGx/efdIagT74ued0LGU\nbpiGGletSzyLLpF1DmLXa1EKXFPcXkF7xtA1ETuonGB0YwaZuO+hthRxQixf\nuP3WaFl/e1W+5Oa6yT8wtLNcqh2yRj4SJESqDsYsu/mdOdNMknmTuaqCHz80\nv1+8cI8DMacqX7CxiaGGOvuP97q0RLwu2XICdB1+8DSm57BZR983kgd8EKdL\nwq6i\r\n=XLFa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"6540b54a8bd49746e164ab730269188237f89b1c","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.18.0","@opentelemetry/tracing":"^0.18.0","@opentelemetry/context-async-hooks":"^0.18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.0_1614693677830_0.7454482338032351","host":"s3://npm-registry-packages"}},"0.18.1-alpha.3":{"name":"@opentelemetry/node","version":"0.18.1-alpha.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.3","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c5d89fd9cf67d9ff5140a41479cfdc3bf5304a47","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.3.tgz","fileCount":15,"integrity":"sha512-st2qRMqAjOCGLegHO0VgruJZBGOmOD+3gcnoGM44ZGx1E/idAH+Il4chyhXxj7TYgk+ZqeRHarGuHVVEmfZh+A==","signatures":[{"sig":"MEUCIQCfzAamASMI9OcDtXgNg/f9aLkGXfyeu4UNWbMiS2hfWAIgEyJ1nh8hipT0hEnkhvYLEOWxWV0mwj1eJZbwhc944TY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27080,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPo2GCRA9TVsSAnZWagAA/3MP/3e7vZGiQtqvO0Lo7PSk\niYp3IkpmRpT3QJLXSAl4eHrIeWz83HCA2p6a0QZz+kVdYnpSPaptlz2iv4MW\n/+cwCDGZOzkWCZHsXiMgetkMdYsp2jTB5V8o8/86m1mIAE7xE4pd1zR4bAEo\nmZQxLe1ut9udI5NFb9hCYarCZk7JzzKQ3NPqo+7V4tI7wEXCjZA7VG437Lt4\nlw/ZkBPLrlNDKbPhMbshrN1dcTByhqEsDtCq4Crb5WSSgmoTiab6ZnTt7sRk\nSPslYNQpERRUtV8HGfclAX+lbKprFt+WIkgsKAzoNABYTkfnUtTXIWr3CWay\ntuu8SFzdfMiwIZ26yWI/bF9w81/TPRAN8zXtTxnMRS2a1BkmUBj4bdy8kj9y\nWzdtr3fO+CxegtOz9+wdYzuUKh367aJOK1gWlZ0d5z6RRDKOiosFgqIuTIiq\nr3peUOndNWsCwzxty1X9Tz/fy+No+iSebmWlUnH/EUEDqe1fxARvbzR4wOP5\nOAxnc8CGm5g6nH5RKR9MPwtbeAeWQXXvdYtxMCaeRf8E0tVahPBDzcdC9/8+\nMGgFlrpyYldSb8E9NdEJjWi4OTrSZkree561/LiPKzah9eBJDXOqD+lLibTv\nNqSNYgBysxscHPFBWQFG2TG4BSKcCTmLxBTj3p6y2eT9GXocWy6ofeOrWKOb\nugh7\r\n=7ZK2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"0643642f61de5e2bfb8942ce7b5dadea643cb295","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.15.5","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.18.1-alpha.3+0643642f","@opentelemetry/tracing":"^0.18.1-alpha.3+0643642f","@opentelemetry/context-async-hooks":"^0.18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1-alpha.3+0643642f"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.3_1614712197837_0.8070028807475873","host":"s3://npm-registry-packages"}},"0.18.1-alpha.13":{"name":"@opentelemetry/node","version":"0.18.1-alpha.13","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.13","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"dd2c7ad5d793f9bc0798e221576392cbec6b1a21","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.13.tgz","fileCount":15,"integrity":"sha512-/ydzKKlIYhWVEFmCONxcCIAIDSjHCgc1O9C26rNBLDhwaRRzzaRMAqFojlQtS9d0ZeYbWwSdKS2MaLlA7xYCig==","signatures":[{"sig":"MEQCIHED+aKW8fwL7wTSTKn10DetYJLNqAhnQ28fDr9NzRQVAiBijz3NW12ywdc/SGL0L9Ey7JhA9VKdojtcrmWBshxeXQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27048,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU38kCRA9TVsSAnZWagAA/DsP/3t5mVoMDY5fJBO6hTV5\n6ekRC4Alr7PZKSgw6FwwKC8U+cXr80htBMLmkEkum9bv2krkNsZ+awsHkxvx\nUXWoA/vJ+/0ZCWmbfYtWPKJkjKvlh53TJ3JaieGuZhEO5sf8lrljeZWvERNM\nLPdyODNg3xo3P8wAteeChvKlvDgqAX2J8Z3dhZptN85xBs6AkpRtUgeF96Ec\nd6F9WW+LrqQaghtTg9ETAsOJH++bBPbbT7cVOUU3Is5qTmwfg37lnQvHhXdB\nORkbsikOouPbagFHdOephIEx7cXfNBOqernCHVs0WPt2DRkaqVSIEi5XZEuk\n+OQqUKxCaRfaej2BFDCp8yxJ9xLLj16Ta6C48npVn94gpUAx3nPz3y3jRrAe\nitVtp1mdSiqaQYMvFzrAjL9RCKNHnvvM3+Hrpc16yxcWahxtfEN8pXyFXPGS\niTm8XgclnAxKOFyYLSPTamoTlecWevISU4nUAdubX1bpy2BACRMyqz7bJPvO\nUdaTMkk6pUs+uolbW590fZ8Qq5B2ivJIpoixr7kW2i1m2+i61gm2JDva22Q6\n1/ND7EhYcab/DvSUke/9EOZtJBOyizgOLPFy5aH9dnKIm0wFUnW6B96sYAVb\nP2HlXvI6OCywLJ9qoRJFisURXwhuvAV/UMpxmMkqFv/CPz6lfJ0pcCWQ82OU\nYTpJ\r\n=Toz9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"445c39fcd54675d455115e22605b6cf3434eb071","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.18.0","@opentelemetry/tracing":"^0.18.1-alpha.13+445c39fc","@opentelemetry/context-async-hooks":"^0.18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.13_1616084772201_0.5561190385404844","host":"s3://npm-registry-packages"}},"0.18.1-alpha.16":{"name":"@opentelemetry/node","version":"0.18.1-alpha.16","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.16","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"1872f31fe49b91ccf77ed3282850a14239024d6e","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.16.tgz","fileCount":15,"integrity":"sha512-5nTrCuUZVlJIaH0b1KwjMvf4eCAyo2Ps1YCQWQhd19MbRUw6BWPMwb35NZh4xFJqHQHyaRejClPGAsBzbBHUcA==","signatures":[{"sig":"MEUCIQDlVgIah/VUS+qMqShttwaaXfcEw2fBDiw9NAjI9CArhQIgZcK7OsEcvZef4bX5k8epmvLUQSq2airx9k2g0JDiuBQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27048,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWJegCRA9TVsSAnZWagAArLIP/29twVfZcC/8utiQRS5d\nG8jFEtRPverAns5k+z/O5A3bbYVfzBY987CnT8bb+5lOoDO/J42nY6Z5V4KE\n6FCT7rZeIV8wtzCw40v4MfjLAEApR27Mb2zVt1eVvbdGbO5ApindZCgnJj+V\n2Q4M6Nl30I577KGNJS2pYNgV1Po2qsqyhrMNpiFMyn+KXzrnylZm8RzJTL/5\ncrUhCHdMW8Mh+NKL4Txb1+FU4psCh/kMxUxTJIfTt/Gf+Ec1Zw3389RDA+yf\ngkgy41q4n8akVsuw7bBMFEK0NqJMwTiGEeYwCO+bvAkurbo1G3QUQnjUfWXr\nxAW1o0V95cmLz3zn1hQig+bJ3GtIOnMrCeo0gmUNhpB0g8dFNwyRIKH5VJVa\nLv1oSWR6p19X/SuhFX8HIUNemL2DJSFmjyI9DpjCxY3HnUUQvmlnzS6aHryH\nR2bZJpovcdijOR4I1c5aRGnuEd4XTzCUo4oa6eBNaDQBpsn5RFQuA1ocEamB\nkfWqANvS3fVwKFuY5Q/qiVPkw257+2LH3Q4EnTogltbBb1vVxYdiEdn1FYa5\nEyF+ktJQTZdrvfsRapLPMSextBM8rsOAahD3UCY4Q0s65FCb4yKBI0KqslsI\nGTuVjQQ9gzVbKjTFzbAYMnBQ/Fe8IXlcfyQf9HOiYDUxdnSpxBu/pfNlqX9f\n/UE2\r\n=w/oc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"f045eef8b02e6dda452aab3cdbeaf78b225c2fd4","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.18.0","@opentelemetry/tracing":"^0.18.1-alpha.16+f045eef8","@opentelemetry/context-async-hooks":"^0.18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.3","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.1.3","@types/node":"14.14.20","@types/mocha":"8.2.0","@types/sinon":"9.0.10","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.16_1616418719955_0.39958355702492865","host":"s3://npm-registry-packages"}},"0.18.1-alpha.20":{"name":"@opentelemetry/node","version":"0.18.1-alpha.20","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.20","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b0607cee3e1d9995b9970d75489fe998a2e68825","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.20.tgz","fileCount":15,"integrity":"sha512-zBi+wvSlC4SBVGltDnd7py/b389x3mvfpsSqxYcCuTIhE5ZAzkhaWwCeG0Hh3TIwnWwyHuefWMSH/gSOK+bXWg==","signatures":[{"sig":"MEUCIE41q0Zbd4L5yZyD9pyRnvtsx0Zg5ttfZLUCbODalmlwAiEA04u/3UF8tIFbEQP+lPVHJwtqJTnzfbK66kKwosGKKM4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWzp/CRA9TVsSAnZWagAAxfgP/iPbNXEeJ9ZA16Roqzju\nvtCAyPV75aqL6d57ugO+aTQ9KJXnrKl1I4NNvUMywCAYO9U+XEsktCLepmCA\n1+ERtz+0QExR3fRuIs9pMCDAlVfkd/AxGnuwStmrMvcFUUhvGeoXb2qWq31k\n3/+U+CBurT1F76Gh2uYuj2GaNlBU1fieIhRSa0veL+iapkN+NdhFK/2vW3Nw\nCDihLN1DsPIsrlNnymyZNvFO94HVtYn4K7Lfqo0V3ufSQA+t3CrQ664UtnVQ\n5gEh52JXzqkt9BBEgasVFlrukho0P5gI+UWrGm2QNiHDRFjovsuSYFCvJBNU\nTE9D4mCohk16Fa7bkTrrSRw8bp/X4PGEf8Z+9yN/TVdqG7pLxZveb05WUi8I\nm8w+CiLmBimIyntrkAGlTTxmAq6+/VP7OAjeoZ6zWSDVls0lZmhNDe90vHsc\nCqE9s8ezlzuqj5QkviTp8zEjkNcQSeif6lDodBTePC4GXpM+pxegkU7/LXwI\nP14wa/N+Lm+LDMUO7Xf9hsNqVxP/mUW3NffqjxCwRvwJynhWdNonN/d4SEi0\nFzyJRrFDGhsUJKeK2a/gIk3feaQxtot9UxdTh1Y7fnsnPEE56EURhc2lwE3P\nT5fsECWsZms++CLoCIfF3fMicq2BcLdIzGYLzhqRFQ/3NofMxi8h8zRr0rhp\nNLvt\r\n=Lmam\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"24bcfe82340e02e605c5c722b0f955da50bf82cf","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.1","@opentelemetry/core":"^0.18.1-alpha.20+24bcfe82","@opentelemetry/tracing":"^0.18.1-alpha.20+24bcfe82","@opentelemetry/context-async-hooks":"^0.18.1-alpha.20+24bcfe82"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1-alpha.20+24bcfe82"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.20_1616591487162_0.6320492964102009","host":"s3://npm-registry-packages"}},"0.18.1-alpha.21":{"name":"@opentelemetry/node","version":"0.18.1-alpha.21","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.21","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"e890239cf963d1c5dd055a1c6b1185b339e5083c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.21.tgz","fileCount":15,"integrity":"sha512-DBUMEa+lZVZ12ew0w93e+otLeAJz3BndVwEXNq9sr687XkzcRiLr3vSQyTCrDa51vOt79Ve0/FDQ9UJJfVv3UQ==","signatures":[{"sig":"MEYCIQDPcI3I1KQrsNuX4NK6rh2DBp5RqVh/0w+vMHs9PZXDSAIhAMQq35yzIQT1ikFZsQg5oBuCPEinxXYLsQzUJRcq+qYM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27106,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW0kICRA9TVsSAnZWagAAz2kP/1T3FPBWAmv8Qq7jfDzv\neKWvC6D3ABIspDPjkvnfAB7qE8NsCs1OAF0ST3+q7nZ/pLYD7uLDo5cZwjn2\nC5dmyur6guPtS9K/NjesNOi/DLFEzfuGtpDijmmGWjPhxFADeoPPlBDOrx1J\n3LL9+74ksIbHBR4ghrnNz6NxDgtZlKAmjyelbvFc2hLotZK4g6tqc5DREpDK\n7gei61KhRX3kS4HrSebmrUTnzsKdaT4y1SRFx5ATg6fd3F3Vb8pBDicec/Cy\nu8nqDqL8p6LIorO8s97SesO5FeqS+bq8VZ6qvZeAYKOb1Q4VtpZH2+5zz2Im\nBWGCqUFeAmHNRpSBEC3JeAWpA2LoEU/hz+Uuph3+NUW7BrxzgO5NO1Agvsoa\nX8gOgO1EPwdUtyvji49Jl/8Ljx3E717pIzDPivfRHdCCBlimzdIZGOdd9f8G\ngQoBX4+YTyHiCKcbFi0PS84cp70bV5jwZmfo7DE6ofqCVdJ8n6PdrvUHrObw\nmtMNbqAI9JiJ3a3kbOSEgy0vzycgmEIk9LNfrEYKxlSG/IsuZfaH2f3lJ5CY\n3ZC5oJBGj/An9PeTlU3AcdHAzQUIwJjOfQyEGxrqAQEzABm3aDa1+jRWpOvX\nQVQWJLuXejNS+cibsNpgvByDTlui4JAEBmUM7vepOsSg6jB4uEyf3OwDX/MR\nwA/x\r\n=le4X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"8010ac2fcd0c658c0a4184cb0f5d8108db3632e5","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.1-alpha.21+8010ac2f","@opentelemetry/tracing":"^0.18.1-alpha.21+8010ac2f","@opentelemetry/context-async-hooks":"^0.18.1-alpha.21+8010ac2f"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1-alpha.21+8010ac2f"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.21_1616595207679_0.6295383499794613","host":"s3://npm-registry-packages"}},"0.18.1-alpha.23":{"name":"@opentelemetry/node","version":"0.18.1-alpha.23","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.23","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"df3c84e7a90f3bee4fa31e0a24b9209468568dfe","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.23.tgz","fileCount":15,"integrity":"sha512-Xl1lzBbbOQh6DJEkoDFvucWoTNGfZPyW0wGLIO7Z7PtIytGA1SOQ/L5wjqZXS1tb4D1LttzrrSsoALApKSjzaw==","signatures":[{"sig":"MEUCIG8zN/QKHlKO+0bKQQ8fXowtkuljdRxT4T9K6om53DFiAiEA9A54PnGiq+lSQCsHio0eY1hCJ7r+Rh2u6HZBdmbr32s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27070,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW5BTCRA9TVsSAnZWagAAc2YQAJY5eUBPKPiFemQgxu/D\ng/35t5yN6NpOHNDZQ6hclYfvpZULQltNSfPq3J0OsAZwadXOppIF0RfEMAKo\nDl7rbt5iVgh9jPwzqCnud5Akt9eNNwyCA/AO6FBPi0iO4kN6nCyu2YxpX8N9\nOfQdouMaGCwFBrnSu6oPYHr6ss55iMd9bosInnC730G6DQywPJyj1Jq1Yv5h\nvauZMgfOXF8p+vsf72XogcX6jKI87lNvyJBVwv0H99HeVWpGF0JMl2JRySn+\nMGiVfjr0ek+YJjSEiC8MP/2ilpBwtVbK7Lgs+RYyD8m48eakU5+GDumH3Lr9\nFEUCxxxqp96Gy1NFOTC0G2/F74fFDaZ/4YicyKQzkKdUIlOSMk5xjM7qTS2b\np0Sm6GhmTbqxveAcVDgUxcs7yAbXO4zSjeN6sMYBHjvAKJbYhbKwX6D2rpRJ\n57vzRPz8QR8MO2OXMNVSxBn4U4l375SUeOQ5lLKpRzWE5HIDYLyB4y+a+Fh0\nmuEZphxGiFxAYuQecvVkaphR9pVnAtCTChzSye5/rqnqqao9Q28ioEyo8nQj\nQX4rKBlqU13MgkxCwDhMlfkd47KRIiXiX8yrFHVKTb7FsaKps4ixL8/evD5t\nXw8i5ScEMyTlgLh5u3GkBZ4pmOZQVbCwgUdVIB0QmhAH0sVOMhYJp63q9mb1\nNiJ0\r\n=EJu8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/status.svg?path=packages/opentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-node\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"41db733e60b5e4f981be94eaa56e4fca24b539d9","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.0","@opentelemetry/tracing":"^0.18.1-alpha.23+41db733e","@opentelemetry/context-async-hooks":"^0.18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1-alpha.23+41db733e"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.23_1616613458707_0.3181490889241476","host":"s3://npm-registry-packages"}},"0.18.1-alpha.24":{"name":"@opentelemetry/node","version":"0.18.1-alpha.24","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.24","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b5ce6c2182af14b44fa9895fbca562c0662f86b2","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.24.tgz","fileCount":15,"integrity":"sha512-fiRZC1AbffjrjeLA8VzD5hpt7lbQviGP4X3EwWv72Ay7V9oM5pmMpl2BvqxAqht1z2YSBTEfu6cUaiB8kHLlmw==","signatures":[{"sig":"MEQCIBKDArceaIt+1IC9LtdU+Anlyx9mxElGp/Sl2SDMFSF1AiBPTu1PdV3r6G55HnX3ZUzVmAIfgcb36OhwA4J8fViK0g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27121,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW5VkCRA9TVsSAnZWagAAl8cP/AsZosmwkzYbGl2EqR1E\nSxlAEvmnJRzhFkqdHqc/ZgZRzuyX8LoObiNFx0HlbmO+8DI7Y/NoKEwtQNDx\njQPnwKZhuFHVM65oLOpgfnlF7z2nBX0ao54CtCJG1ul/AEz26CWtySJc1sLg\n6+xXTqo2j/NaWOz+S8eYPYiUAVlf/whqDke09hJhALIeMGeE6vaGI2ieGrRd\nOGx4Q/733I8JKz7uT1xPhOIe5psSxaYEQI9KQTlc1LwO2168N3QEYgZ5xkLu\nWtfUD4LjrAIjDMccO1FfR1IHhphzNjHl0o55BuhnnOYlX86ZDdFQbxmi1BGq\nnUSf7DX3jAN/YWKcWTN6YYxianXSLlbpOS7hcx7sRhQj+eneRJSiB48vXD88\nekRs7kJEdJ8jY6grshY9ZYdSx2wmq0IHp2nRj55k6wgAxw7hq7CfsrZNmm5X\nw5QY7uWKFoAU4AGyXmba0eVZc+wyQQa8ukjReJvTL7AXQE/qgf1jJP73KT5I\nKPrXAMImsl5On/vFTqxAoRjVhcX2wymbA+LExyBpgQZ2Fh9mcZW8jCk+Jdmr\nRVr9hbq1mqMWNHb7yNQcKVguH10RElIqCYcll8MM5AoVyqlT6CNZFUP0LtWf\nrdLrl7agoOj1D0CQga7z1na61D3DJoynNDxGrNDGRydPUm73aM0ZbFPbvtrR\nnb+x\r\n=dejI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"69f2d3c264497bfdefa2126d0865ca56ad5f22a3","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.1-alpha.24+69f2d3c2","@opentelemetry/tracing":"^0.18.1-alpha.24+69f2d3c2","@opentelemetry/context-async-hooks":"^0.18.1-alpha.24+69f2d3c2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1-alpha.24+69f2d3c2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.24_1616614755564_0.11957617681069199","host":"s3://npm-registry-packages"}},"0.18.1-alpha.26":{"name":"@opentelemetry/node","version":"0.18.1-alpha.26","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1-alpha.26","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"23b7f19cb2c49190c6fc29c01031e4c1709a141c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1-alpha.26.tgz","fileCount":15,"integrity":"sha512-Zv/z4ZqVj/0eLNLSyKX2UpzeqnMuRTl0I4wDh78IhYMngO18dj7uiZFUDZb9bwEp2XeorpoysxDK1ggAV37NyQ==","signatures":[{"sig":"MEUCIQDIAHDHK7UCFcJ33xfeRu6yePFNmKqNkDlbxhzownQd5wIgNFhHZmHgIO1beoVqKdWwRZ3wb+Tf6qK9N6RFp8dcsIU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW5yCCRA9TVsSAnZWagAACYYP/1KLR4bkRw27Vn6ue2LC\nkU/5VmZugwhImdL5eOvF4xXtHOYWEtKl7v5azzufm8tam7FBDUfqdWGpmVzU\nEtK72kfPb6wdyXmDIW4TD83hnVxiQrqumn+zXqRYH/VSNxqgqra/6IUIwQBQ\nWRGJQJP5oINWSExmbDGEbs6zVn4tOQ2FWm89KJmf8PLxyq8KypftfsN1rala\nc7ODwVJByCFrbPG1v/P7qiQsh+kUqYSJ4uwINmnK3yFn+nxvqPixa0RuSIt5\nTtydWFP3Js71aTX5n1m8HS0nICHyOBnC7HCbApzAL1yY3jchtd9Jp6EjSouQ\nuqkHvle2Br1eepnBQStiKHN1BzO6FMqTWP2qycpOIfBn93hcNtN70G4MY+eS\nVHRRrBLwd6Nt9S5SEyJwT3FCUsyQq8tVmhu0KN5yTMPUNDrstlQok7P44cJ/\nxBXmT1erJjk9rK9J0f7LnmhJ8ODYSp33ef/FA0deCfY0NLMyNFIPBf26DaIt\nApdYqEyiFAvl1UnWe9+FXcjlOMA5h/+9TuQ6/kZ5LKC/Opdnh29gwspuhS2t\nv/EjMaQEQh55l7y3UPZemqlfm1tCTyQ/FBZUJd7SUiUsKqrfhZvOF3DiJO0R\nO/JH7Ps8CTgLmu8tGJDWwtxqVhv3lSChRQaHsdKFbs6/xaDfKaF88kmYwKgx\no2o8\r\n=R1ty\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"91483873ae3e3e8a686dbe3b7711a233167efba5","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.1-alpha.26+91483873","@opentelemetry/tracing":"^0.18.1-alpha.26+91483873","@opentelemetry/context-async-hooks":"^0.18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1-alpha.26+91483873"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1-alpha.26_1616616577918_0.998802652517115","host":"s3://npm-registry-packages"}},"0.18.2-alpha.81":{"name":"@opentelemetry/node","version":"0.18.2-alpha.81","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.2-alpha.81","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"0bf753bce5f61482a46bb30f5f2fbe88d2373cb4","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.2-alpha.81.tgz","fileCount":15,"integrity":"sha512-YbpPWOUr7eK1tm7Sul6GLfjZspDulFS7iMpSvw0ahKrFKnTemWY7bRV4ujnbSB1bBi7sz08CoxSCcGgzJXxqdA==","signatures":[{"sig":"MEQCIGExhwbOdVNHLtNeKWn+H8m24olIsvtkMS16d8a8W5guAiAy5LUerg4VuWwZ2pkNJ+wJ9Hv7ZvpWfxxiiFbBLWgILA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27121,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYjAMCRA9TVsSAnZWagAAvPQP/1JRPxSC3cGKPGymhg/O\n1fzXulqKXUUX2w5HD7G54OQYuQyj2mqqeOdABlL/hjCasjRmrOuIByVAsqu6\n7fSu9n2fDouM57Me995TIxqPecOqzeWm3sBSxxFY5aIzRRbg4/X4ZOcrkX+q\ntzgnnUf7Wbka3kVBlzIsAlcUz2bzX5R+owPn5h94OCKONQuwR9O6lXZV58vb\nXQZo5NE4dHjkY15fwVgIrhbRQ59s5If//3WhTXfo/xfS92MCZNRg3YSZi4ab\nb0IlSQjU09I0PfUFKes6GiLibZXcYnfvKkG99bADJYOv9z9C9ZhAmNDzfkkP\nVBuik9UKHaFk2A/4ng3X+HThMDYS2IZ7GvXtJkDGojSy3oYniPtc3q6dvekG\nkmdJMaGf0Nl26VYtSCr79VPX8505rGHVA3mWBcs6H3kml+gmka21TG+aaxmo\nC3qqnGIDVcRkcJDCPjTRtv/C6xR1Bo/FFsZdriFozGh8w+zk7RgirLBJ8Bv5\nEk/NQCQe3flc/LRNGtR2GugqjXsmNeOVYUYO8lR23S3z6Z4xKFcmzHL/+lBv\ny8rS4FCNHg2X/mItRVhNorBVEeqS9KcE2gS5JgOYVL+cij1m94sY2af4llHP\nvWuimpJ6N2XfT4w2tnCh+AP2338ZgkTbUzakOEf6IK8XIWS729C0dhSgJpVP\n+cEi\r\n=m8CT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"e369035cd228a5c8781069a99322c5b938061d20","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.2-alpha.81+e369035c","@opentelemetry/tracing":"^0.18.2-alpha.81+e369035c","@opentelemetry/context-async-hooks":"^0.18.2-alpha.81+e369035c"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.2-alpha.81+e369035c"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.2-alpha.81_1617047563786_0.6490677034169996","host":"s3://npm-registry-packages"}},"0.18.1":{"name":"@opentelemetry/node","version":"0.18.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.1","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c1dbbbdc446a29ebff8218dd9df4cb10fdcf6ccc","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.1.tgz","fileCount":15,"integrity":"sha512-ha5Z8sUJZcAbfgMVk85XqQCqe4yIOWgnaCWgcmENmoI7q7kNYGjCaYVUgSDCTox406P1lC+8VFpC1xj/7Y3fEg==","signatures":[{"sig":"MEUCIQCzpEnSDcqyhGlSnw+w09AZQIzYEICw8DCtilfcCRIupgIgfv/eEINrpQSeIm0OdoCrTHfgV30cjFcEZ3tkZKNoUto=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27031,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYjK9CRA9TVsSAnZWagAAMxoQAIflDlijW8p/mW77vljh\n5p8M9nHdoWhyb1hjK34j37+290IgD+uaX6oavrcxetsKyYQVLIm8vnyfutAg\nW4rSE4aW99Sl0iDjezoEGM+jtyncuhr3xWc7yQyyEt9lLBh1Mxbrf13yl7P8\nIa6Dp2wMf+rGZD7o3xGPiwFeX7Jm93HPMPYS7E8xaCTvKm0k9KrwrLOwBO8l\n7gp9AexjlQ3qnmM6ADbJeHqYOBrTVgJeFylKc+Uu28wtxJnAYHadNOUZZVTM\nE75eJnT3t4z4k9CWCjFyo0T98HyeXcEOWrMk1Xhh1sHOw5JALq0idXgxzBus\n1VAAtoR3fwGnYjzDr2yMhyiQNJ+o9HETWbn9EAWyCxGqU7t5ChB4WwLVOXeI\n1oJoeLDObJQ/aSZwJY5LbbRHYDT2LOjPVuZBpXk1YOXswkpe1pKx9d0yt/uo\nYh18SP29giSjrm/ziLgNKvtfZv9hVQUh7tFwnNXbgh68W7VjfMpfa9gdqPTK\nMzBfDcb0KvThpQFg9UfwZ/e8bLFmOAur+9fGDia5jthLYf2JWCJmd32f2s/3\nD9IBIiI4rGOmR4eCwTgHx9l2gDRFd1z/M07DejqjEIP1kd7F/cXzFB/BqQr1\nfKRLsrRw+63Ns+FEQHJW7OCm85ah64xYlCqqBtEyjd4GMnx/V9d1uqxCbsz2\nj2We\r\n=tFgk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"e369035cd228a5c8781069a99322c5b938061d20","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.1","@opentelemetry/tracing":"^0.18.1","@opentelemetry/context-async-hooks":"^0.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.1_1617048252758_0.2749528598909783","host":"s3://npm-registry-packages"}},"0.18.2-alpha.1":{"name":"@opentelemetry/node","version":"0.18.2-alpha.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.2-alpha.1","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"efb37d8768caab6d1ef709679d09e55d61892e13","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.2-alpha.1.tgz","fileCount":15,"integrity":"sha512-gqxxxfWt3SSk7+GjDZRBtSxOSoYuFJbTPBwBbISAlnSfBahnLbU2IFZZ70EB82Dht96YgDNFADhlziR9kPJufw==","signatures":[{"sig":"MEQCIG8p/2Rrs9LKCZ5MDQqa9+L9A3CP6dG3044gHBVHUhVKAiBvgXAy4BlSAb6Snaj5Y0qrEF8E7iUzRqBcfUyrkKrYDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYyJlCRA9TVsSAnZWagAA9psQAIMoCwRqkdtZEjFWymUW\n2SSh2h+y+Nlhp1jHnPVFz8ot/xcRFZcHzN0wjL1O+E2DmWHDNo42EDalJcsu\nG85BzZlSD9fPA+TxdMGrbrw6vKFfObp2CutnSnf70nQFRKUWHmsx2u4w2uN2\nZgp2W6igV11NL4JxNCm6YCSKaXuf7V1eYMLzBm625GY+Zkc4ZYxSaZIXOtNK\nHmyaB1a10HLdhZ/Xge9pyN8G1TNLsFQ3ZfhQRn8IXewWd2XYOMW8Ozy9isUz\nogbKQ5bBxClSk8b0LaxAJARvxFyhCYRJALBiouUiKHFz2n9XnRWK2wq9uQa4\nCcsCZ/J0QiMs9gJGTSIL3hCK/IjJGZ6oIz/Pp/0vVd/ksEhel/qXacY5ZX/a\ncdoEl58SjK96U/dE6VfmaVyeUzkz1HK8r7xcXjh6y7FOCGBP+QI3iIrNpSgU\nRbIYclnd9cPT+cw/CjzJCK4UwM6Mu9IY0sVqnEZcoRhwhDlCMULNXFU7p4fC\nMswZUyBrbyN+wsrK3k/hzOCnWgYY8IandX9a6GDUYgL7Bki4IoGhF/9q+u7y\n/zOogcOtEb1EUXFBUx6MA04yuzmxWTbLhm2NwxutN7xCaOw8Vk/dbkKjtkNe\nlfT9Ld0oG6+lbRdxUeq9m/6zFZEnp7ZLamW8Uk3e/ICcImFvpF6xqDbIt5OH\nkm1r\r\n=v+Of\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"54857c012414c05bc83b4a8da224492c98abfd46","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.1","@opentelemetry/core":"^0.18.2-alpha.1+54857c01","@opentelemetry/tracing":"^0.18.2-alpha.1+54857c01","@opentelemetry/context-async-hooks":"^0.18.2-alpha.1+54857c01"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.2-alpha.1+54857c01"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.2-alpha.1_1617109604744_0.7669295439626929","host":"s3://npm-registry-packages"}},"0.18.3-alpha.2":{"name":"@opentelemetry/node","version":"0.18.3-alpha.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.2","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c1848166e71c8fdcd899e51aecb43d4c434e617d","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.2.tgz","fileCount":15,"integrity":"sha512-YAzoEp+H/x80xWW1w9D+F20Bxr0VGo6vX2vXYieuuizzdDtXwMGKZCFI2d3Arj068Jp+DSaJjMydyM/Mn+mFmQ==","signatures":[{"sig":"MEYCIQCK9WvldAQPCck96sUZ9AFnWzvfEu7xof3sDaqlA+N9iQIhAJqhyo3EUAWtHLv3VUWT1L95Ma4Hwt1A5ABrPTnMDW9g","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY0NrCRA9TVsSAnZWagAAuGYP/1qbfqgLi4DABODdyEYW\nM32XpARqj6JD3XSk6TOviqBP5hfnBWyTB2EhqPqkndZlOe5Y+HqUCHJl65jp\nGhBY8FNonb2cxSvH+5P9W6RuHIT6H2xUr9LgvOB5lNx7M4JmInFMndv52KDF\njG23D2D4uPc9K20tBd+bBc9+GQfvVGvwdDmi42HyaN7EXEDxElwY3OCYlJYF\nxDaKMCDYzVEe7rT8bSqYvM5q57hlzc9xyrvCGUWn/0KV9R/OxWQu2DJ8hf+/\nLLJfQRxRU2kpScqY0S4FYSN4q+aDhNjik1OKQLqG6vVR59n9leQTcPSXecSy\nKlvJolBr0+POFVICMv9eTHwQrhJngM37xYzCyHb8ab4998jFgmZCw2otW81W\n2LUCUoWEJ60rAZXaHXLhlYS7uOpXKsovNfLv9NHeRDP0AdqAmILUryex2wGG\n5/91/ypSWXpCr7OalJQ+ZwyJXPJ9GsstmBlbr+wpMzhF383mAFOWFJEmdET5\nNGhKR3Uw2YPwUV6gXIipD9kN/e/NE8dGJRAC0sys5DPx1QfLEjA3Mehrt31c\n49i2EWKImkRaeJdQHznhS2KstM5W0Czbvzk16FLt1KFqA1MYd6/2Y5mwbMaM\n/i04X7epwzds7IC77EmtpeI6zUzkxqgCcwA6B+jehmRW9qYPEt6Yc9XVtt1r\nUNB0\r\n=zZhZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"2409f1cdddd92c23548c18c055a6a36efe36349f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.1","@opentelemetry/core":"^0.18.3-alpha.2+2409f1cd","@opentelemetry/tracing":"^0.18.3-alpha.2+2409f1cd","@opentelemetry/context-async-hooks":"^0.18.3-alpha.2+2409f1cd"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.3-alpha.2+2409f1cd"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.2_1617118059165_0.3481346473193756","host":"s3://npm-registry-packages"}},"0.18.2":{"name":"@opentelemetry/node","version":"0.18.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.2","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"a40fd5537daf0b0755181c09aca93df25e7ba5c4","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.2.tgz","fileCount":15,"integrity":"sha512-9cJtXQga3dSdkNcNyhVipxNg2g7fNa2f/lE08a035ZA3NKKIGKaPop/p+Uc5+2gmkZfzKkmkZRn9YVOBRHg/ww==","signatures":[{"sig":"MEQCIGcmxPGj0lu89QTEdUr4QHmoTEj5oaUHRLzosBz+Jxy2AiAtUy4Edp+IFS+owa+4Ac6PkJ+7cM+9nVd7ItxTwdv+pg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY07MCRA9TVsSAnZWagAAnL0P/0cdVkaHkQdM3IplZLYu\nfkakHw+7aghS6CaQIhiqJNuMsmu+y5/0Evq0W6vKI0ZA03xVFVKcuiFgb1G/\nMU2Zb5sP7iLMN0SKe/nQ5ObtKyYDI+astS2yTvUp1IPbETxrSKhL8PjBv+Wl\nHEREasR0yoIzV8AWl/6K07kx87JsLW1aSVjeTBu8Rb+zEKGpqUkQ4hjyIrVP\nqxlF3vZYycuj+lsqeqzq9LOu8N2FYrDk6/q3HXr/A3VaYNtDS2YugX55MSE9\ncn6C8xYrOCcIbXeRO9nWi0DM+utWvnRoZhqpA8pgfEJAmzA8zFEUzxyAq4Rw\n4fHyXZSo8m9CytJaSmSf3fDL/yl9Po5+DmN1jZEQlrpKmJ+TZTkXpHunsHGV\naFkiB+0vNw+qxdGWkoNFHylkVdrEd+vQV4k1GkR3gxAPToYIqz8gl1nMKs58\nxhFNhW2qIbZ+8LAqOAF5RbNJzMTrtdLEHnhpIVGZuWAq2GWZE9E4STGptvsD\nfteI98rXeZH1jxF2SkA4HFz+U6aFmXoxgzS6w7JhNLLJkkw0pesqHFVLPsLh\noEI18OV5cBxW60NTijukJKMgS/NorZfjHuu5Q74fRqwNKgqbThYFF20VFAJh\ntcLhZRN75Ou+k06R0zQPUiyuYVtP0lUkOptbOat3Nfd6FfGepwnbMOhq0RkF\noAwc\r\n=QbKS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"2409f1cdddd92c23548c18c055a6a36efe36349f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.1","@opentelemetry/core":"^0.18.2","@opentelemetry/tracing":"^0.18.2","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.35","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.2_1617120971598_0.404753326393668","host":"s3://npm-registry-packages"}},"0.18.3-alpha.1":{"name":"@opentelemetry/node","version":"0.18.3-alpha.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.1","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"5c841b8b153ee9db2d4016e5630cee0830b651f0","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.1.tgz","fileCount":15,"integrity":"sha512-A2UuM7yMtqoaqaFzp27ujVuec7YUzIPnuTAa/w8J0FMYa/+l+P3aKRFfCcTzPQcXJwLNGD7vgj60/XbiE/PEjg==","signatures":[{"sig":"MEYCIQCMxBtq2+WwoMsstyzyeadPKKSTBDqOj+5XSK4yBvh2FAIhAL/+pbkh5PwxadFNTGwq2zik7QdjhqyTOfD+l0u6e1R3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY2AdCRA9TVsSAnZWagAAmhYP/RjcQ23tasHaTkP1Wg33\nc2PSKIxg3j/Fia8UwhapzqT3o0zFNPJMjJkKcwbVjZseBr+S7JAzkHeEOL17\n6n3tE7ZoxW/jQwSFgqWrB8pDAgPape/4XUfxTXF2hGZZsLnHAfjdnOajboND\npQoN56avldCksJl/Hu6y5ccSmThEGZosJhLr32hnBrWhTIwqW3nXGYiBrljl\neIvsuDk4cZgLh5F37zAfwc5VUfli/YM5cW3Y45P5IfDWKznlU4Y+X/jZORg7\n0HPccrxFwsAEJLJYZzwJC0ka8qWxnq+LgazCx5NJjlOSrykcLeItsBwqoPBV\nt3ExsLOqSSS8HiZrov8X2pibfjFbS8CVvgIANPGPI+T+CFygDvF7vg/KivAR\n3Z655CCG7LFf1JW1BY6vE4afu+zqE1qSBspL9DveHUBEf9Jlo7mlJvh9v/gn\nqHrQMME+//AwH0Dd/dqaHdSZ/xl94X3b+SgrsA/1y62WUDC9kVDhsOTlX+Xs\nRe+ajcaBJfGy6ZXQIBoEs1klDHXB+3HbqI0PH8fsdaDu+Gzb6K75T1yDTg2i\ntueeBTHNwBZ+p154qWE8FxXI41xHKIhj37zpRewpbelNdPml4dbJOfSfe6pV\nJGyhCkxtrUJG6yZJBfdviLCp8/OsUVTSrb2pEKofvOPa04nLRBo/lNdzmDmw\nt9lp\r\n=NyQQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"cabf8630cf2e295ac2e7e5f44d6efd1ae911cbe4","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.1","@opentelemetry/core":"^0.18.3-alpha.1+cabf8630","@opentelemetry/tracing":"^0.18.3-alpha.1+cabf8630","@opentelemetry/context-async-hooks":"^0.18.3-alpha.1+cabf8630"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.3-alpha.1+cabf8630"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.1_1617125404488_0.9915663323928459","host":"s3://npm-registry-packages"}},"0.18.3-alpha.3":{"name":"@opentelemetry/node","version":"0.18.3-alpha.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.3","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"9e2511535d464403f9856ae2aa2b287e165e8eda","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.3.tgz","fileCount":15,"integrity":"sha512-V/4aHOCPTW1rHrvW0OLC9WWIyqkr/ZkkKidSwZz2/SwCiBjZLrFhnWj8ztLUMPJILCof/aw0m1C9qOYVij9eSg==","signatures":[{"sig":"MEYCIQC+Dvj9Af2e8tHkIIGGoz8Qg8fD7pKcbxEWrt//ZvpqwgIhAJXEHwDyp9Out346e5Z0vNQ0+tHo7yNjlx7/AEULeS5Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27095,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCb6CRA9TVsSAnZWagAATC8P/0tcijojTw3zu5d70pzA\nxpdm4WQd+wylIcxsTcl224bOP6Hk4qul0jAriTOJFBy3hK8/QbuKdPoInTSc\nnWYaie4aK5cliMrhgLkHXqtv9KC7JgjZwBFNLvg0FHrncQazPfcDmyTJPrf4\nHBg/z7frCeSfAi1je097qhjyGk1xRA1HeF0SBwkl1zNU3oMUNcxQpig4g378\ntLwblraZHlyFByVeiDLWmLsV01p26cblRBT5OEn9lMBG6x+4oiZytzGriGal\nmKumpc5X9HkEjE3DZElOAlbHevWHUZRo6ZUSJm2u0A/48qpX4C2RBVYbq/ue\nkxhK/3QoqDEfe+38nHN+XsMaEuTnWJut+OaswJxqMpzGDrJQ6u5JTieGffYG\njGdAO3MCDvTS4rgjckfmKS32QiIAJKPo1TVmFpOAZhJGHS7BJ/FuEo7K9Cow\nhUIWU5sWv30jbc/ZUovcygxUSOZ17re+RinTv8/yo7Np+K2PwyyiNt1FMHmT\nsqCvgLK8Rtl7dKw96Zn8i2/6ei+bJTl29UWk0ZPBrSfNV8902A+oHJ49C84n\nfDm5GyWjNCCMYAdLhM64tczrSJzqgKif7uYFplKVmezTW+Y1cRIP+tmjH7zY\nmJJ7POlt7Q9WuginzYWeoxVaIHRXtlE27G1O83OTH1VCGj1qs/DFRnGGSCZg\nAEdQ\r\n=S9JR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"853fcb94cd96cea0bd1af18cddb355345f76adad","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^0.18.1","@opentelemetry/core":"^0.18.3-alpha.3+853fcb94","@opentelemetry/tracing":"^0.18.3-alpha.3+853fcb94","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.3-alpha.3+853fcb94"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.3_1617176313749_0.8783846041580152","host":"s3://npm-registry-packages"}},"0.18.3-alpha.4":{"name":"@opentelemetry/node","version":"0.18.3-alpha.4","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.4","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"8bd3f95117ab295d4a3c40402b17f93f7ce611e4","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.4.tgz","fileCount":15,"integrity":"sha512-xN0DwVyuDFfJjDzCUGYH+cUiY6w6rS7B3XOKF0MXFiXyNNT2fQY2iswVx/Ykmx2XraHJGORe2/bCclOQhiFUkQ==","signatures":[{"sig":"MEQCICwyHp5y6F/rXqSPGBb7P2aw+95Z2g4xovXUqxguI16kAiAfknjs/OOWCpbI6JaGRh6/YiYXKbl7PxyuTspTYFuXWQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgazz/CRA9TVsSAnZWagAALpQP/jmiWHwfRyPP2pI6tO9M\n0fAgbGROx16SLbWGePfgHqaONABYpMk8Rv8SO6V46MFLKvFpVe4E27JAJqxd\nvImX3K9EiwFI3alVFrIJDcyXRkvfSL7ZxWlzahGbX9HL8+b0mi+K55bXQW6G\n40q+dQq7tB0gz3wHjWduJNVku/Ydm8AEilhjzjFTEbtjnq9OZsewPiZG7ANl\nwK9aXTzGAlKKoMS6A20WA58Ljg1YGTHwdH2YcmRTystKroQs4VjknlKumSny\nkO6D3lz6Tbt41LMMkXYSVDKI7/AjXnIp0KK5ige5ae435b7OYyforKrZfM5l\n9utVADtohwD5qWaFdtwI47tHhfqtKDoumoaFmBVV441JE4x0lximZwwrUlLy\nsXnYUSkrUSE0Or50MzPTHkAv2bB75NHe0LwD2XnxUm2vasRj1BvrLfzsr0cc\nZschls1qoPh3A7hGpvfs6k3ARuqVE/zxO5Sw3N0OZCp2XzFYssxDoTk7krb2\nPNLQWZxJwOEyZ6girk9j77/6EOPbIoD835wk3xiIBBlF30CIwoDbMzTXX9JT\nVdyrvlF7uRA97OqEK/f62Shla1RIzHl5w7PoKfMPBh5hq3sxeaVj8DbKQcO4\nyNfD4b4jGTkpm6iANnqna0qIo9MTkh/cGmfCucKSb1EyVvQQGxq9/zmGrB2V\nPikr\r\n=c7h1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"02175dfafde72898d7ab40d8078b0e1b6576e82a","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.3-alpha.4+02175dfa","@opentelemetry/tracing":"^0.18.3-alpha.4+02175dfa","@opentelemetry/context-async-hooks":"^0.18.3-alpha.4+02175dfa"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/resources":"^0.18.3-alpha.4+02175dfa"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.4_1617640702951_0.35734578324830735","host":"s3://npm-registry-packages"}},"0.18.3-alpha.5":{"name":"@opentelemetry/node","version":"0.18.3-alpha.5","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.5","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"8176badd8730a6ccc3d6bb1313b43f1abef7af70","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.5.tgz","fileCount":15,"integrity":"sha512-EUfvOfBzKcPsvCxL3gjxVBEjt2GyI1i03VpPwB0/K0xJ5COIu5y3jkoUR/IoItK3EARdGBETsqilJmLwAq4bVg==","signatures":[{"sig":"MEQCIAjqh7iKruJB6wygI4rW3jR7vV/uyWR/r6F0RNlcNPCrAiADRGqmB0uHZwMNdXyREO5EAZU8RLfcr6guNrwArARpnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27185,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJga08iCRA9TVsSAnZWagAAvi8P/jlvn7TxHhs+HyR5nYCm\n/cF9TjyjGRqWbaZQxPv0BbTNlY84iJFUNzQylK6sp3cYUgegU8Jctp6S7czG\nNl7yMYGnMbOsVmzxikIRYm3zy8RrYfBOKmTULOQ3GN2W4wJrs7imzOkNT1VC\nP4MdL6BjSdhMz+4vXhuuafzorWAyEHHPtHTrSXvYyFg43f7qAAFEmYxZ3VTv\nlerQWLp+z9IlbrAx8aDsN9M/l+UdZb3Fa4AwkhD1vGiQU4Dw6x2wLCSm24cL\nk1vT9+O8xeBb/Rv6MbgcPlKrsUfdCpYsR0vktGs0wt8CD6RUdKGrLDbgTuMv\nWetVuNPeTSVGR/vDSvH0JAnODOpE35lXkobsr7UiJ4NA8CJTFyeF2d3W1DMH\nS+ERTKxR5Bw7s/Kj3ukHUzPG5tey/Y9nDJMkRmydUR4izIVBQOyLLQpmSEd8\nL6iZMRDGdA7DBfrsKACNXBQH5GLDvP+HAdoO8GLuwyTiX5Vu24W5ti3i4DD1\nIJzpvTD1q1tFKaKacodbj7ParHPXflPMGhK3itF55iw7S2Igasl4P8sDK9X/\n9SNilPdaQpg9VpSev8Y9NxGb6e9bhqDgEiMz/8pNj5YRKNuqRMrhWHmpETTQ\nenHT1IkQ/lQxrXOGIrR24YKYZU9nkotnEIhyCotjt6Kh+ImJOugKareBGfWC\nd7GE\r\n=nIkQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"8e2e2a9653bdb648849a0ac64df55cbe3ff0c503","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.5+8e2e2a96","@opentelemetry/tracing":"^0.18.3-alpha.5+8e2e2a96","@opentelemetry/context-async-hooks":"^0.18.3-alpha.5+8e2e2a96"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.5+8e2e2a96"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.5_1617645345758_0.6912100389860696","host":"s3://npm-registry-packages"}},"0.18.3-alpha.7":{"name":"@opentelemetry/node","version":"0.18.3-alpha.7","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.7","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"9c0eec5fc7c1fb877e851f889933315ecf074823","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.7.tgz","fileCount":15,"integrity":"sha512-bvlzKj87lhR/zJ9GQyMYokxl9lrfiu/bbfwrxd4Gh1GqSwkd54ReybnGzHhzpkDVjyVB8aEbMLoeYdhr1yh4Pw==","signatures":[{"sig":"MEUCIH9gQbcTxBeiexZeD8IwC/+S/T4liA+8+sE/DkZD9r2IAiEA9eQ2xTVXZE++WBiG9SfH61TPXCoUk6/j15/FYNkEDbg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27168,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbdoDCRA9TVsSAnZWagAACR4P/RfXHfp8z8GLCcEJm72e\nkc/iBVNVz3gKiG4NM2ZAVAgs6CA4fknzAO4pyaSQgPtNPZWdG4OwE3UyWVDN\ndY16H8Zq/bAJ5w8neACI38QHNa5iuN/LeGF14TDhcUJbT8EJap9NOt6h4mlk\ngucphl73yXvESle5x6BpifGxbtdFqYe9fcHAnXYiTzQgBEqft5WXA9xv4XGl\n3zKqNcxm9hZXd9J6KEMK4cvJ/GaCJ5v3bHzJhSe8TnTzDwGrlRY1INv0rQYl\ndmAr4MKpheSJv0KVCbZrNZaCmYkZJhNDES4DgMkJQdn8DUhssXRfZY2HXKZ6\nvhT7zN8CZVUWAeMFYuy/tE8TjXCkAGQCs2udmknRWaw3AhzdK5gKbo6ZJBAN\nCq3GPKkqFGEoMTnFonHzZwKaSUxA2oAGClMiw91QSpCQYGufXPwnWWrXy1zI\nwc5MCEfxOLm+n5zAQXuTuh11dCKRbgWW7sYY8f1yln3NzXN59hSnO6XSPynR\nGkVIFGMwHsd+TLD0djIAR4nYcAz2AzsOP0XYaSD64prps3c8IvExu8qFmJcX\njAxiyAT3OF61+VW1BbrGxovaxL69EbRSiOpyiPT1FnbzMkxXrMe0KEFyxry3\n9JegltITe4GTkM0fvaYbn3tHTkBw4GkyDFJ1JlnX2dZWYlIiOlos/L5yyaiR\nji8A\r\n=uwqT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"897c35f497363ee3f3ea4c1e5ad1628e09ec9041","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.7+897c35f4","@opentelemetry/tracing":"^0.18.3-alpha.7+897c35f4","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.7+897c35f4"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.7_1617811970640_0.7050751037591132","host":"s3://npm-registry-packages"}},"0.18.3-alpha.9":{"name":"@opentelemetry/node","version":"0.18.3-alpha.9","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.9","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"2e8363bf896f2df6cd2acc4a1410eaf726c4baac","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.9.tgz","fileCount":15,"integrity":"sha512-dmW/n650epGkdGYaonGD9GAxR8gNpPeEhRWU756jgO5UYT1Nc4I82p1f6HGIvxzMDRfZK0WeVjfedJlQeUxXgg==","signatures":[{"sig":"MEYCIQDlbnDM6mVpWzRidpbThjxuHP6mmqmcWEhl3DQaWzFnNwIhANAYBtxT1zWkZy/BbuORzWoX+tADlrNrKw4F3dBDhhx8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27134,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbwHDCRA9TVsSAnZWagAAfWUQAJkrfzi44FmZ4ooWaQlC\n+SayGXlpJt7MrBpDR5uGL1Qa7kqHqYr/RRH+dJJBHp05KgamT3KX5F4DUXpb\nK0IzIx/aU+0scv0GmGcBYb5EAAdDKkBRm4mk2SR3onZYoEuFrEmIQED+UguO\n1kaT+XednYOCZAkG88+n1nWydmF1DzcVkWj7Esel1YJpGeKJqqvXiv95wLfQ\n52MVPIfViW8qO8mSbL41tZEtGYiCAu+H7PPShfFLPGn+jCdOAQUz4E/BAMsJ\nRPxLyuLuD6oaSf7NjRScKz2qA0EwzvneZLpxf8Onc8rMN4l1ClyUCSYuR4bp\nDuDHYjJbhQqP8XDLzBH/cMf6/aW3JwFmfX+aiiB95JYA4cFeSFqsFlRCjDRS\nn4caO/YMYxB3lVYZzjHofu8n0IX2xMZIpqSCpECYpcLQrtybIU2PMlSZo2w6\nLFU9cDx6g13rdBenmjXM/l6vLF3b2UTTHehZpsL/+gOUgcrvPZCZQcPZjUQ4\nsjy6TJ1lM9Ah14pg6CaF0ireEazatIQ5ZFslpzZVajS2+UX3vvS4W3G24dU+\nevLPt/xlwaaDHntTra8ZvDzd3UYAgETmeworTCfbF59hcxp2c8LTu1pLHf8N\nzHCyB7N9eV1l/I+DOi8X2eizZG3tcOKVids4TpTwBxd7YjE7uYpCt+anHMJV\n/Pr4\r\n=62VN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"a4577767a07c794ea687759421693e75f2a84b27","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.2","@opentelemetry/tracing":"^0.18.3-alpha.9+a4577767","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.2"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.9_1617887682639_0.52486943959108","host":"s3://npm-registry-packages"}},"0.18.3-alpha.10":{"name":"@opentelemetry/node","version":"0.18.3-alpha.10","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.10","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"ec38c33cbeeaa662e0710a9bf7ba5dbc697a7e6c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.10.tgz","fileCount":15,"integrity":"sha512-ReNQtWO+KXpMYfTq01Nw7s0+MVj0c+oRlgRzGoXWvYh81sCsQWe+B1SY+z6rWRYkDejAOuIOtNsKn9+EcyD62Q==","signatures":[{"sig":"MEUCIDTPxC/jHMjyf0TFYOKluWhu4qq0uaDPLmhbqQGzYKDvAiEAo0YBeqDKF1Zs5mkO9KNY6WMC4gYu+h+T7thp1mMlC8Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbxJ0CRA9TVsSAnZWagAAYMcP/2gTeCHfO9zfbtSGvsfS\nnquEj9mTkBJFXFHO6e/5WhQ02KyDgWwqW8Umiau9iRvpxL5xsLp+Y5+K72MS\n0WGByK86RDpfoVU8VA8CfT3T3WYPorKa5OEsD/xoCqea4d2SHwqa+HzmzY0Y\n0hnEIFzd8yo/Et4htNr88ONlwu0NWqsLIkRbrXpXCEylGvQTSf/isQK52/a6\nGHFNSwGm8hOXPRI/OE09iYLCgxGBy+YnYaJd3KDNpDCw1Ey6v+d0SRAqsxLa\nbBwStKcRtvb1ahYufNXNpHdBzk5sRr6zXt9qx1va3wxZse8vBPchRMYz4qPM\nXbeGnsivdu4Hbh9cx9ADPuq3vVCRUpS4Egiuu/4OP0TG+o6N8sgruHzo0uOy\nLBKweN+Z9oZuene5GzljuL5572Cyrx9jRjE+AHyr1dPBzY8pJBegJcYl8kyI\nVPOQEV1JEXBCNqhMt92UmisiJd94ljF8z+wxfglioEptswdJItGn0MQrCXrV\n3TMqlSn6IpEUDCCvw8cVx44p5CWbJLhjgOUzblnD6jq8KopcI6YjNeJsYgOa\n55ajQCnwHw5jHrPaX1huLVLbx4xdpt2eCYD+XR3VAznjPc8x/2DOmOFZhCNF\nxZVzLti0NYjc2iaSjhU/vhgYPt99GgvNTeT1trzlx23cqgKrbIGieykPFMFw\nKd/R\r\n=M4t/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"80ff5e2af390ed8bf97c4bfcd1221d2a855b50a1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.10+80ff5e2a","@opentelemetry/tracing":"^0.18.3-alpha.10+80ff5e2a","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.10+80ff5e2a"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.10_1617891956060_0.9576324705282411","host":"s3://npm-registry-packages"}},"0.18.3-alpha.11":{"name":"@opentelemetry/node","version":"0.18.3-alpha.11","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.11","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c731bf1250c25494c11e6eae64e5e37a2d7649d5","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.11.tgz","fileCount":15,"integrity":"sha512-mn55E6s/XiN16HJ8S/OC8/0K+/rMSHrhnm4OvnKZBlAu9P0rlVCEMYq/xdloEIZXoep1JWD74+S677GUFS70Iw==","signatures":[{"sig":"MEYCIQCkPZAF/lufYzjT3+OPYF5lKn7mJYeu5IchIDhjyMfvjQIhANCK5lCB6krZT8qNZdz8N7uWkpkwJoCnAF10eq/r1SW8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgb2X7CRA9TVsSAnZWagAAQxIQAJHoxuk4vu7qtD5iAzDo\nQ/q216HgH/Ll+w9BJJCLMQvlvnB6NT25+qheS6DjP8ese+UrQWtzAJKLguS9\nqF4cAnEfNZbyTH8Vx7VAdZ/NXGdelQo4vsMuZuwzM1auNlKO7HUsYvGOu0fz\nikM+ZA1E/bEl/fxIKxPGWs9z6DETgXqmUJ+Zy7XicX0+xmSBDoDMQkMuIeUd\nekFquraOIx0BEkvRKpb+S6c8n9A+RTfcs62qZRRCE8+3XQ4ceNtWoy607R+j\nTbrLtxgJpmBtBNrzQ2R8FJvfklgvxcqThUmpq/gYR+N3ED8V0ksMnmt1+n+E\nXwzGo7gX73F5oLvvLx3wGtCSUT6+6vJAFJOP2g9sDYrARJPPHEAILpq+Id/E\nOqGb9VR8aanZUKxHOSykJbKA0H/nJZ8d4HmyiciiSMlyIms6loC7TMP7cyAZ\nLZAI0HhevF64hDZybMIQYxSuMC7A39skYBwmei34nUDH7U8Mz8g7BSJyOVJj\ni8eMjNAlAKebkFwuuRqt5lwH6p6RN+0GGyZL4zpoGLqT+p+r79txIzOAxQ+1\nfNuVDqjrbh80ZAZEsdTqaIK4wJCEF+YLWImLgeG+Ok7QZo1V1B7pTIStuwQe\nypjEb67jb61UtMpfhU15CNk5FGfzBO07L51Z/XT+Aaw/9M8NDqFr/c99PfYw\nYrnU\r\n=sLNL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading plugins / instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#plugins)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation / Plugin configuration\n\nUser supplied plugin configuration is merged with the default plugin\nconfiguration. Furthermore, custom plugins that are configured are implicitly\nenabled just as default plugins are.\n\nIn the following example:\n\n- the default express plugin is disabled\n- the http plugin has a custom config for a `requestHook`\n- the customPlugin is loaded from the user supplied path\n- all default plugins are still loaded if installed.\n\n```javascript\nconst { GraphQLInstrumentation } = require('@opentelemetry/instrumentation-graphql');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new GraphQLInstrumentation(),\n    // for older plugins you can just copy paste the old configuration\n    {\n      plugins: {\n        express: {\n          enabled: false,\n        },\n        http: {\n          requestHook: (span, request) => {\n            span.setAttribute(\"custom request hook attribute\", \"request\");\n          },\n        },\n        customPlugin: {\n          path: \"/path/to/custom/module\",\n        },\n      },\n    }\n  ],\n});\n\n\n```\n\n### Disable Plugins with Environment Variables\n\nPlugins can be disabled without modifying and redeploying code.\n`OTEL_NO_PATCH_MODULES` accepts a\ncomma separated list of module names to disabled specific plugins.\nThe names should match what you use to `require` the module into your application.\nFor example, `OTEL_NO_PATCH_MODULES=pg,https` will disable the postgres plugin and the https plugin. To disable **all** plugins, set the environment variable to `*`.\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"64c8ef57a9fe3b8468f2388ff78687b927ef8965","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.11+64c8ef57","@opentelemetry/tracing":"^0.18.3-alpha.11+64c8ef57","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.11+64c8ef57"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.11_1617913339301_0.850481627639968","host":"s3://npm-registry-packages"}},"0.18.3-alpha.14":{"name":"@opentelemetry/node","version":"0.18.3-alpha.14","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.14","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"6fc2115b95b3dfe3cb512d7d8c9ff864354c6bc1","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.14.tgz","fileCount":15,"integrity":"sha512-fArSUK7YEm58pXG/Cq+xC3mIqoYVkCJPRebEyUTOUN/qoXIlaokUNxPJQsA4vccs5s6mzb1anIDWzFU8P2O0dQ==","signatures":[{"sig":"MEUCIB+M92Orvj0DaU63Z+OtbG4/B+fEBFYCmifjYJgv1T/wAiEAre6dAIOsEWGykAv0TWJvjt/npgYqFeAnU6yl0NrKrd0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcBpSCRA9TVsSAnZWagAAIL4P/jJXfIi+CNu6cufJNr2Q\nwuV5vJ8OBx/LtiNfurfoZJESB1E2UJJwFdl21wfN1B6RUmdSzfxBSvwc4psJ\nFKHl3wA76bNa1u4buY7S01Xtf72ybki2iYLy7u4hLlbDLpTZrrAOa+D4r2xc\nfiSY09gQhqouaUkCynC+AXcmMiQ9BufPU6RySul7P1LwG9QRCvqD8M1ysL4p\n4KAVAJbU6PQOv9OtZ9tqojMBuJLVqlpt1xDoK9oA9v2K6HgrzUfvk65ImI95\nePdpFjNsLOG0bAi1J3szlJGVDfciKLmVVpYRJ0QSL3W3mZiUVLLEgeJJCdpr\nk55FQF5pDj1+BHu5Qi3g/5rv4rfj1Cq7y/g/GeDMgIgRw9V0cCmLOUR0xCFF\nOPmFMmlRsAuXynzvcresluYRWKRX+SpAS7uzpVSYYI8/fNWDEFeYt/dWoVZD\nHSvDpyg2rHCWIeKFaet/jb90yy1Mv7rNkLY0JfzkPGP7v9Wj4p+neU36BIQQ\nQqTkUmrt9t/c+/AXl8nKoXyI+6EPWzJ75sBPFxIBpoEXUj8oMk0IFHbto1MB\nGhLRO0aR1uQFQEOUiNg4pjEQkRhfQN6MCrez9XFalZP3PWICRxxyhqof9s+J\nfddG+QwrFAPA2ntAOIRFfW1AbEgh2mDu6UO01fq7P5vHCqWWrknxz+eS6XUZ\nYy7J\r\n=8JQ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"4a3fd1f4d86499e4485c1f1af0f5589de993b0dd","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.14+4a3fd1f4","@opentelemetry/tracing":"^0.18.3-alpha.14+4a3fd1f4","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.14+4a3fd1f4"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.14_1617959505660_0.4967236854847139","host":"s3://npm-registry-packages"}},"0.18.3-alpha.15":{"name":"@opentelemetry/node","version":"0.18.3-alpha.15","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.15","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"7b170f5c82a834deb3050afa1f02975b5031e902","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.15.tgz","fileCount":15,"integrity":"sha512-OOIgzTy9PUS0MfWbSO/EphBWBctA8B/6rVLdVjRBJtFLmPasyJFb1XztmBs+mewlnzUfseHYUkYvWh5Xyxkydg==","signatures":[{"sig":"MEQCIDQi0GUHlTFCk7aCXhxz57fafdyu6d9sYqj73Plq+XwqAiAxvqdWGSUqTBR3iAF/y0buwsSNhHmtDthox2vVlNigAg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcCAgCRA9TVsSAnZWagAAS8UP/3CKTO3hYFeQpnHVkVPX\nKlf06xgy0OupguyhCJMea6kV2gPBeEUg4uQZN7vrbBCk6JGCZR9wH9YhF65z\ne/PubZLPRqWRHIouXkf/Y4HKP00bY3lD/WdhgpGbIQfDLDUayuhV7kPLvjJQ\njZU4Na/34bx3H7/hX24NK+91h4CjUv1GlcitYPvmOcFL0du/pyYIrV7zLIgF\nbN0plQjwt6uei85mjWdl4qSmP4jbsOXQGv5vn3NF49buzUBirtcGOU2Kcmad\nMM1eVtKmBP2H8wTBXdFC2heOlqtlt/QDnFmANRClDMKUevAAyOGicPfkfAct\nbDdw+oUTjmbiL5mshRdVLnz1judjWJKfI/V50f9JHb/0yQ4hdBpYAx2o2roJ\nOu82FZcX39NF9H4RE4M9Tel6oh+XaqHIudU1fEQNViOPuvkKr3q/jF3CaKMM\nWq6uycrsqF97HWLSNB0TLyhzw/GV1DAoIhJyKVALrDkzWzi56tre2vIR8Cz+\nZ8jyXtR+tPC8tMTieW56sN76OY2Dm4dcJjmZkVoaAcbtw50e8ZTh39IqXx2P\nlfgwB+5Q/qo7YeLFANnjhaUE3Sivy24TLTDOR5MsMRVB3DRDib7VLfhwiPN0\nS7rcsh+wfUekZteTQVYu4kH83RwI95ZAJ9acmDwOgBlZ9YbazlR/UZ2e0Zry\n11bs\r\n=Cx2W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"a2fff0dd2ece0c7d1246d5dae142fcf03371c21e","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.2","@opentelemetry/tracing":"^0.18.2","@opentelemetry/context-async-hooks":"^0.18.3-alpha.15+a2fff0dd"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"9.2.4","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.2"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.15_1617960992301_0.699466528416113","host":"s3://npm-registry-packages"}},"0.18.3-alpha.16":{"name":"@opentelemetry/node","version":"0.18.3-alpha.16","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.16","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"048f1d8b19f4c234c44b33ec9d0c75bc4df836c9","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.16.tgz","fileCount":15,"integrity":"sha512-iyU7oJvtD3JRH8/nj92vn7RcA5+9RGtGDTO3tZ7TOz/2j8lC1Dohz/wKyzs8Ir0EodAkocrYefD5Bvvm8KTHoQ==","signatures":[{"sig":"MEUCIQDyz7AeRNaeyEMkyUWcBxYqxVwvcHldrMyGL4l6Os4W9AIgHlmycgLIch7D46X3H74pTkGJ/DZDax97ngfky31dDiQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcLQyCRA9TVsSAnZWagAASpUQAIByKu+fd8Ox15WBVIiB\nRT+nG2tFpGyBBG9pV6Zy+u1YwzGOvZpt6zVmFq2t7D5SFStWnHAwP8UMTnbg\nj8KgJR8ERQ1WagEDJwN3+088+89xuAmfHcCalPotPldFFOmwMsEu22s6jtgl\nrtqDhxmtR+vS3TKCDkKfPyQ01WBjrmNXEswUb/G0biq54rEYYzQu2Os0SvRK\n9LSK5eC2PvL4eHmQknxKyOLXS7nZB/LGaX3M5Wdy+qDEPTmIT+qy1he7vO90\ngeBii/PZXwSbJA9ieFhByuJF+wU626ErZEJHwjeaX0nQNp4Q9zFU9zeK50jI\nsvccnIeAceyMDNrs3Y6ao1Dvoj/x7paQxMKEZKTUDtTHN/2Q//Cr6vb+Psrk\nfZwMTD0JoBPSom7GiY2FzZhtnL/Ut/kk0t1hvWkyme9H2EBViwJciXmsi4Lt\ngwXhmEEC1I6Orlr42k0R00hZy2eSI3vvm55CHqNjApSp7vsi3+Ve89hvMPws\nsixKtQaVpRTknAiFqqtlaf19w1DuqJKFqBAxFLacbQnYcpGa9TTxucCPVlqK\nuZwgMvsFph0mQWeNc+MScM0dC+mC3b3p2u1FIBsOC1QLz/e5MwHRNS3lbjRV\nkIPXTU6KfqVhRuMKe5iZzSZRPVF9NVZsbiXFpdn2DZhB2cXHGmiMLhEOVVif\n7onh\r\n=oRXd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"7f7afa7bb88edf4a4d46da8b252116d92b578b79","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.16+7f7afa7b","@opentelemetry/tracing":"^0.18.3-alpha.16+7f7afa7b","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.16+7f7afa7b"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.16_1617998895470_0.5995922098169495","host":"s3://npm-registry-packages"}},"0.18.3-alpha.17":{"name":"@opentelemetry/node","version":"0.18.3-alpha.17","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.17","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"3d05237cbe1910dfab932a57aa1980efc79ed0f7","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.17.tgz","fileCount":15,"integrity":"sha512-4Q1DsVnvXmD1NNkgWAQBMtDkocFXzFLsjWH4x2nPFZ3R4m0fPMDkwMmY4I2qJ/JIgPIKWd5vCY4m30nFMfFNxA==","signatures":[{"sig":"MEUCIQCShohssDsCmEnFNI6jCJ+/9utopJjDaeu4uWIbwpA8BgIgYQUXl7+A5ivxCHW+qezjKNyObbpLCqKYo0kmlAVeN20=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25826,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcXD+CRA9TVsSAnZWagAAIEIP+gMKxzWOSe9NxOMFdoWZ\nOl7dIgSzsSn+JX8DZVlWWt0O0IhLd+tUIIkwjw5LgzPxdTiUyrhueKON7jI1\nJqzD+SlE9YZCtzrivg3tw7+yIa7QBtJkaREsPZlTiUOA7APtybvqhIfV+2Aq\n3slMErSbPcDzglVndDOhOuUR3ZbfqZ+U4wjnBo6HaIwIuq8U0WKbTkvm75/v\nxt0pToHG9yjF/+zPdV1YoPXsj18wGfZvPxf0sNHt4J5bj03h5ruK8dXwkJ6k\nD8B9rrBwtnnSbp0A7/NDKw8Tq5d54h5NuRxdymuqkcdIEDGmTPjc5Phv602K\njJnTn5E6xMPVtZL/swUQDxSDsrbuAWLLI0lE8W/03R9LnuQHxaN7+5JukSvv\n7o5e08KvBjkGtXo6n8LbC2E1dptSOtZI/j8iXtl38c2KTvBSIQKFXjGoNHWo\nXvdqew5p/YS4Rw2N1c3a5gDr10TASFeVvr9FZCkYCVrzjgB5tQ6wNcaB90HG\nN4Bix/HpmhVTTwk9IQEqrL7ilv8Ll1kfEs87GHGINp7EZ0WrJa4jSpKDINbp\nRxamZGsmzuqtp6O1dYLWUya5/BdDTVVJyeCv6ukSD9L7D0+fIz3FXmtxigYU\n9wOSKikkGHbucZqvbcMFsiRs3lpauyMFlNc8Eqp1VQ2Len9jlYlTF4zRB+Xo\n5/TZ\r\n=/KkS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"031b0f4286f18a1d08523c87e419803fd1b0c9c2","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.2","@opentelemetry/tracing":"^0.18.3-alpha.17+031b0f42","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.2"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.17_1618047230153_0.28674632208395723","host":"s3://npm-registry-packages"}},"0.18.3-alpha.18":{"name":"@opentelemetry/node","version":"0.18.3-alpha.18","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.18","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"d9a6752d34d7dc05ed43f7e152c579b84e3a5e85","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.18.tgz","fileCount":15,"integrity":"sha512-PAFuYLYt7oUsm9f+GNutakQAd0v/cdnoXDaD/AM0zlRb9FnXPq6Q9HvZcdLl3EqSmvFNTDkOx1/wVKjX4zls7g==","signatures":[{"sig":"MEUCIQDuBeQRLiLPDlRDmR0fF+oG3gTNTPzE+bugRZ03jh4BagIgVAVBKBPx34/BNMOFuJ8hDC5tQ6LhRy/tI4OaPhBfcwM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcfX1CRA9TVsSAnZWagAAs0gP/1RVWOOWaHSg6u6qpEmD\nu+Ock2DkLlocV4AAFnfwZqgW4qF2UappvYg77fMvqjkrtefRK2l4TgGaKeOP\nWYDBh0MIQd6SfoidCBcLrGHf6oqxxTD9J/3EGolzfWQfylGdd4XSW+Y4E7MC\nWPBloFpFZWRUf0wtLxfVGcnZBSUe3qEAJwuVc5DjGyCVpGdvXbyCRF7BWTE+\nFxLJiVj8v1OkKGNubPuesKpxQMdEbXSmArxIQ0GNc/2VyjG4U55rHVDlVbcK\nuFPX3SnfECXl2e1N8yRJgO42dcosE1DV7HYRZvU5J5D5C5IK2u6vaQVXDwye\nKWFSvjTmhVTCtQzmXmHeL6YucBVtsP2yL7Y9TtYEk+vtBfDpUjOQRpJgC7Ve\nhGw2uMluMvEssMnwcUnT4XEKf/AA2bUeccoSTaURzACYYOW1q4RQkSwmh8Ne\nGHkVxFBmdsVfS+TG0gxJZTGcvJI//K4045yRKAjxlQRr6hEhlSuqUK+Gmc1j\nvdsTp70AMAaM/ZkpT4YzVYkaMUYb9dQRDJRUVOGxF3GoYErba0yZ95OycxsA\nVeYOr3LxeabDnyX3TMi4HvrcN2zuMcLLdW6KIUql5/dStwH2qiXC6/Bxg+ee\njjQo4Lh+hBK1G5azbQbK0EKwaRN4a5qB1131T8wkpe8bFutJIpDqW/4T0hYe\nzQn3\r\n=2C9c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"9fc1b109e7997b054c7182cc6db4d71d7ce9e5af","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.18+9fc1b109","@opentelemetry/tracing":"^0.18.3-alpha.18+9fc1b109","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.3-alpha.18+9fc1b109","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.18+9fc1b109"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.18_1618081268961_0.7055260283039644","host":"s3://npm-registry-packages"}},"0.18.3-alpha.20":{"name":"@opentelemetry/node","version":"0.18.3-alpha.20","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.20","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"7a214cb4eb3a218dff684294d5a6250bde857624","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.20.tgz","fileCount":15,"integrity":"sha512-mWJgIJt9sgYKRVM6dug5rY36MEVmI1EEGhx9V35Y5dAvA70e02wwipDUyw4U5OnlwLWBr2yeCfYUv0bg4ZslLw==","signatures":[{"sig":"MEYCIQCNw6qupFw8eOGQGDQPoOjO1ywsT8UB4Or/Y3O1OhmsCQIhANYZOspLfc4sHbipfw2nIcq2s4jQRhswqS7w9V2nKobW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdGKTCRA9TVsSAnZWagAAumsP+QA9NKT6ODPaBTFbxLpJ\n+C3ofioKGqaaVtv9Rv3yQDNR9rdb3WG7DtM6x4DFJ3M/D9rfx91qGFILZLak\nGnkB9V7oTDksd8QJncGLJyVWDQG13MlyIww3C3CjsyoPapJRl6a4YsxdO8hI\nwLys5jUWV3+PFnk2VN728F0sFo27BEgJhUdCUbGzi9vm7tRUGT5N4GNOXJ8I\nQaAgIG65n/9E+kpwiqmnaLXcIjLOQvgCoKFanbQ5BcS4/WQ08q+tMyDdpk8A\nHc4z5vWrL4zzAyOZxVFw0N3IEn4HbCSsaiWdf+2nTmidDIm2r72GBuVR+3na\nJj1OIgXVxTlkdDa0AM5G5ZlzS1Rybj1GlvOhuWToj1+BczZSt+LQwmIPOEww\nifLLLW30w2DEQDQG4SwcD2tIZQm+XZja3GDFALv5LiMT3OV4eBDp35yG1xAv\nxF11dsfiVKtBBa5e8z0CntROCbYVD4JrB5puaWZ1wojpweEGtVX7dP4yoc+1\noE9b+bZ+kDLztZ6WTges7SVJ7raJUUpFTRiCmT9L+mfwfeIr4Tam1QHdioKJ\nCZuyTuoJfYXiRGNUt2xaXjIpRt44nKw1Oz2VuNtJNMVmgahQxqeskF3YB3j+\nuXt4Auu9II2EI4XPIo6+sQnwUaZK9Ux7fw3QgCak09vUBX0cG2cIDvr+Nb8Y\nIQ39\r\n=Bz2W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"b6dfd978513eb400a706928e604b625961ea7062","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.20+b6dfd978","@opentelemetry/tracing":"^0.18.3-alpha.20+b6dfd978","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.3-alpha.20+b6dfd978","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.20+b6dfd978"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.20_1618240147438_0.07731882729451489","host":"s3://npm-registry-packages"}},"0.18.3-alpha.23":{"name":"@opentelemetry/node","version":"0.18.3-alpha.23","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.23","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"19c75a1965d4844737b84e4a50003a6ec91bd35d","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.23.tgz","fileCount":15,"integrity":"sha512-9/uBVXn4WjSOQdjcF0ZCNb3JKRT+QWOcybt3ZSaU76tOogriHPuPCj4RxQ3HO5gI12qFyEFoVC4COMSN8vUCug==","signatures":[{"sig":"MEQCIBGPJjMeWGJw6ZZABzLzI5WG498u3QcPzYzaXi0V2gTyAiAxidosgD15jlAZkDo+u0yRPfSA7fgr2MooYWAvWI8L+A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdI20CRA9TVsSAnZWagAARpUP/jTgulISNuQeXvp3cWkf\nPso9e3sOhwAoUlewvtr0mS9XjHGXqI8lt9MPCrtHKCG3ngi1GRDTCImkuE1k\n720WbfIGBlC9FII1tsndRlvw8wE9syElKLY/BKxxlaLQwUCmfD+o+kDwLQlo\n8ox80Rc5uiINsHeIJxrn1X6HjObQ5lZXBWNW0BAXwQfzimuN1Dacz1hOnA+Q\nd4NWOYVNnBBSUnuTCo/50hYtx4JcnQ6AjhM2SfRqrVblyBtmLDReaOPVKOML\ntbGllpPY4oIdgqC/tGVF1oUUdvVQbp7T5UO9e9t5aQ+5pEO0iC/yQG8WAHtb\nMwux+I/9cUVdKgZ456nfzRFBIqXqk0g+O5bcwHIE4830qRLS0LedHPYPh726\nwHK3Qx6cMemQskfYECNhNe10bGWty/bAfLjzDyprkMydapljum9F7idm9Bzu\nto0ulSiO+81Q7HqQpEG60QT+zhiFfMTbV1r+T/Qm/YrAZyimIpOTS0iDeBcx\nB31PbfQqzAuHtTX1gDt5QjT4TU5CnU4Rv8XObOjuzHJiNVeaDDc3SHVuJ+3O\nk+/kVOBEDOxqrA8VrzlB8AhAZSel+SqeLzj/YcIANF6VGAYUQT2R1B8Evbpm\nSiCt+o0k+1BsAbV5txMRBAPFOaKV66tyHQ01BpbYEqWYK2SOcHCOl7otPHME\ntiQB\r\n=Rbi/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"2260dd6594bd007f886e7985bbedba1d655a6d3f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.23+2260dd65","@opentelemetry/tracing":"^0.18.3-alpha.23+2260dd65","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.3-alpha.23+2260dd65","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.3","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.23+2260dd65"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.23_1618251187925_0.6356601213652229","host":"s3://npm-registry-packages"}},"0.18.3-alpha.25":{"name":"@opentelemetry/node","version":"0.18.3-alpha.25","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.25","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"f95d4836ebe61a3bc4a9b075b321d2508a58c8e5","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.25.tgz","fileCount":15,"integrity":"sha512-9nDCSmfVKWp6o5Bn7IX0QpHL+3533csIE8wiqztMO1hqUJNDs+VJwt5Cv6lk2khayjXlvzr/q68/9P1lY8O+Ig==","signatures":[{"sig":"MEUCIQDhT6UP44q3qJqGLUyi+KRGckMhU01ZmrAI1BtivSBLtgIgRTud6lybvpyx2Eu/Gt3rLRYzIElgAU7JR9i091cSZDk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdKK8CRA9TVsSAnZWagAAR5MP/1+ueLIH2I8X4ovJcorw\nqYDOk5xX8X5UBUPq3PUpoLcp+vQ/JMvhbylk0EdwfhjcFp7OsasukDkCviZg\numAg48Ce7f5rjo3INbZNGN4msZlxk6MOv5KSE2NDg2udSwQHdV84cIoV8i3K\ns3xsGoxYH2tyAiQ1Hs4+e88nZUmhddfYAoRF+ZJGwdfwPfg8//2i6pJgyvGu\n4MSNtTaXq5Cf/3P9HqZdA8qiT+AbM/AgmxPb2CbGxblcOKxzdMBhRQs9StSd\nIJZqf3BCvl0TdCTJZsPu8TIZCG3IZgymacJkOsadJXoRWuk+7c0DYKjxu0kS\nWg+8AeQXGdDnEVZPuTGT9+RtjqLf0bvlRJFWYg3nr3lSS6d/fzxUlq5t6DzC\n4MhJx8P7m2LJSjVq60BR2YBJ4KRCidEWC45Q+0SdTSznyYMH7nvqRL8rRJP4\nf4C1KOfvMJIN+v2zKiDdpiTeXrJBkHg57i2ZixoIwybjntXvAgdqMXRzT5tf\njrGDEgd/NAjBV3eQCXBWE5bnRL8Bq+C3jf4P7zDlLBom8tiGtov2Yf0wyf67\nfADtnstO78kyMNur9W2dZz15UXWlVFHm4SAOwH8tGV+5Bai/1fdBa7ZeyxoU\n9DAtfgD99Win0xyZ9WsaTHZV7TdEpCs7Fzyn3ssQ4brhj0qMHONqgqS5l2Ei\njUb/\r\n=AGql\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"4ef22cae74b9c976f969151ebcc3ae3d931cf9c6","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.25+4ef22cae","@opentelemetry/tracing":"^0.18.3-alpha.25+4ef22cae","@opentelemetry/propagator-b3":"^0.18.3-alpha.25+4ef22cae","@opentelemetry/propagator-jaeger":"^0.18.3-alpha.25+4ef22cae","@opentelemetry/context-async-hooks":"^0.18.3-alpha.25+4ef22cae"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.25+4ef22cae"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.25_1618256572414_0.018950989240045235","host":"s3://npm-registry-packages"}},"0.18.3-alpha.27":{"name":"@opentelemetry/node","version":"0.18.3-alpha.27","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.27","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b67b3a77fa0c6dc4af62a47f669059b012a82f6f","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.27.tgz","fileCount":15,"integrity":"sha512-pZk1OzJp6AjnewClH4+lFaoP7kp76oQM6eI1NirNLA3xJoB9u+Pd+4p2dIMb2BKwJC7EQV3wG3DEk66lxWu0Kg==","signatures":[{"sig":"MEUCIQC6depAECqVXN02kJJ6aL4vhQkD+rtPhPbHAgB6wp3dFAIgBNElmMX2LMdGrxXk460yGtheMJ4a5OYJaeXnwJOSgVI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26790,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdfcdCRA9TVsSAnZWagAA9x4P/i/H4ZJzf/Mjvdn4nyH1\nskTeObBe1U5GT/lWY8/XYPYnFR7q1mq4CFUaDTWd8+IM7FgKkyMdQhI7w/xl\n0kW6cTfArRqesBsTeZa4o8wVQVrg/9idKCypPI8fy6TKJ01tQ0B+b929CJc4\nnmmJdOOqvnIW39un3Z0xfkL7jUu4rqWpxqqULoZIwUlsMXDgT4VZfkkiEvHg\n5yRQqaLWab9hH0faUS3gtbzfAChOgKCATa4IKIgCPsHM4f5PWQjBe+r1rAQB\neJP5/HcyZUcKwiyvQI79nLJ3WXiqPhbkoRJv1Mstd+9jWX9PcdmnWFytA9cs\nr3GHBqxcnH0xHtdJmppihI89O+a3ZR7ejN4Ya9/qCgfJS5Q5Tb7fJzf7TAN0\nDxC+Dcy4woDwOuUIa2tcZ4WF/9UbQDrV3YKMhhg/k6nWvEPslGb5tG1Vi1uR\n3wlFQHvA4QYPWRTvqwcAyVeRGX3m565wqd98A9LPsqLf6U03O2upCmmr1rjV\nyd0Uco5C7YAKfHOoDsUfV/mbnyxv3KhK9JyI6hTBPAzc4DmuyaNb4PuW51Vf\ne5EZ7Dr7Qc+h0TXW1V85zv3nGpWg/CYd0/p6UgYqafZ5pPxRmXdOLQgrbwlO\nCnAmPi6vepx/eHu3pqjkpukX/tDb1AAWp80jHUchl4irdrGkoTmRhuJx22mn\nrS6b\r\n=SYdp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"115ee3977a9c5f5228a0ae91abdc7d6b6354e9c2","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.2","@opentelemetry/tracing":"^0.18.3-alpha.27+115ee397","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.2","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.2"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.27_1618343709421_0.15622221580860152","host":"s3://npm-registry-packages"}},"0.18.3-alpha.28":{"name":"@opentelemetry/node","version":"0.18.3-alpha.28","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.28","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"cf68c99b96cfed53b81c54f76f70e54dc8a0abb2","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.28.tgz","fileCount":15,"integrity":"sha512-tIsDZBFaAT4KZCmwSoqNbf0NC7ak73edUL2OYBGiqOvC+kmZG4dV3hgqw4jq9L9mJSYwtVC74fwtDyLcNwhN5Q==","signatures":[{"sig":"MEQCIHHvMsZPjbM6JxFm+rxyFdaK+La7PsL8LuuBwaC1YzatAiB/sWq9g0vrPiZe6GXw+MpWYZK/1KOsQQzF4N9px9KOmQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdp8gCRA9TVsSAnZWagAAKkwQAIhbAjk4qxq1WAi/KwPK\n0g+0gUbqqICzW+ZHX6QtL9eyCHxFrGTS3d3VcdCZ8dChi3XmrSdlIIwVHTGm\nFJU5vIkCVgIdqNLn7iyvG+njphnl8AN18FdPxgQ7NLj9XR/QLtrYyI1Mvoba\nGvfhyZJs55uNEK5b1JH5rPdMI3OigSdevQxkHTZESq9xv5uGYJ7m+L21Tnjm\n5xaHJ4nFs1lR8LYzvoNtxEfAGHL1gjpmLSkAV4PFCCZSXqN/pIKJHXZAutpZ\n2ayRAGebo1h0GwhMp/v8kl78MKctxRiHWwneXJ0FUUMTUbaG8JF6Bf8Z/utQ\nWTntQH8Tv2cvPdQxRmLVBiSEtFG+kANKaipGCtfVbH06VHlVL1Dfob5+Rnbr\niQiA+rvFzRay0aNGbtz+/vHJZZbcXjo6RtJ1wq8QpXI3jBl0YyJu3FXnP+5v\nhq18TwZd3GvpGyst9EM9vVvN5b4ljXFO+JG1LlNfOPX9DclEQzgbkSQfmxd/\nSPJ7nLedltHHNNMO2P24bcbvP6beKF71oqTBlyu835b991koiW9tP+PnwiAW\n3f4gco2ybNxMttynvZdNCB1MEAPoIWjeXde9zTr/RrNoxTFWyCPUtoxXI/lc\nGeNv728X+3Zm9v2DW/x6eHCC+0xRkeQcufKqpn0UK9YNW8Sj+1D8GSrvCNBI\njrUZ\r\n=b8Pt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"181f11ecc761b75a2702ecf4a6b017f5fb9a8445","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.28+181f11ec","@opentelemetry/tracing":"^0.18.3-alpha.28+181f11ec","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.3-alpha.28+181f11ec","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.28+181f11ec"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.28_1618386720170_0.8295701560305564","host":"s3://npm-registry-packages"}},"0.18.3-alpha.29":{"name":"@opentelemetry/node","version":"0.18.3-alpha.29","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.29","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"8e849213af0d4e7e0b5d4f53133b5fff6d58cad0","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.29.tgz","fileCount":15,"integrity":"sha512-ggaYLdjnKtRLkXHaGhbMBGolgO8jWffleGMeJMMGjSCPbf8NhW0OEN2I1NUYJ2hHw9JlAb7vtSnJyojVUtNapA==","signatures":[{"sig":"MEUCIFD1Vybrto+DU55g7xbboCb4DPnR1F3D6e+5JJewFLTtAiEAslGr8c459CsoEpSYW+NLc5WZYFjJCnVzMIJNNHBGK7c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26790,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdsVxCRA9TVsSAnZWagAAv24QAIgQnuFLoCqbDv/pv6Q8\njg8gXAK6E8hMA9D7wsHA550TzP5GiJbx2VcGy8JNhashrWc4en0bvYKbwtY9\nG1sBZ6aefQ1nU+zeLgJWGek8shbR9JIMgwOgsu/PuGfCee44YEc4yq3FqzeS\nQkjL+mpLSbba6h1MLgAykhjbi7leU392t/i4dgdVVV8z/WHRUB4h0tZThzuk\n/7Shw7hDtKtCTDuZV8stBw6ZLRcArBDrvbB3CqoxbcuqhsYVQprr2Mb9iVyo\npk6TkCXYHG4AxcXOeLKGsZkUDWAfUWO3y0NYpYanUvi031b+ZCN7IYiP5t7f\nPcLHwtjQTywbcggxH7t7M8x8+Bei3H+M+wahBr1p7ulDm0vihEdj6a7oI8Bs\nEScmrFIDLKFrBwihvK52odtTA1qGWY6dzclzVoLM/rgU8LZW2syjpAlM9PnI\nKdd7i46galuBetQ0IbMQrHcPIqMVoGLnQRjmqikBwKTtfXgxm/co5TR+/jdg\n5hs1qL4nNqiKkYdCR0m0YLktrS84vPeAFq1fEBllbNDt9PNXQhH5L7z2kVL9\nUhEvWbMbQUfAEp5yBEbyJzCvkO4qhjXEJZu3teAOmqfkDTZ7N6TyVrGCUddf\n8haD2j+gKzYhWJ9Ji9viPlF56nmpE9WuLUUGW736mjrYw0TqsAWkdpyVRNIx\nTFNw\r\n=bid6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"c0b021be5782ebee6a23015c992dc496b105dad2","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.2","@opentelemetry/tracing":"^0.18.3-alpha.29+c0b021be","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.2","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.2"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.29_1618396528491_0.6216940251438394","host":"s3://npm-registry-packages"}},"0.18.3-alpha.30":{"name":"@opentelemetry/node","version":"0.18.3-alpha.30","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.30","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"f3235f013ecaa0638de3af65d603b69d893b74a5","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.30.tgz","fileCount":15,"integrity":"sha512-e54aqywabkpN/On8AIoBCLhEgW4BQTQDMMnYt48zeqOwMaBoLsqPiMaVvJ0wlMjkoyIvOBhWrQ15ELYjQy0muA==","signatures":[{"sig":"MEQCIExW5kFaPMFtiaoOUroJuYYlijYYlVYM29gTN4HUG3XfAiArbgi5mALi0NMt/oho4cxxvqXTYwbL8tT05WjKgVk9OA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26790,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfbd3CRA9TVsSAnZWagAASFgP/jb/UT3JCayUnGnRDU94\nuyuC5QBNGP/0B4vJ+1CAa0BNBYiaW1hhmQ433FPfkAAxUjc5FNVzzGDE30TU\ns20bJ+3XmAQ3uSWSMQfh1eY/guJo/fQYgqyX08/BITt4w2e3gzFlIClm9U+J\nJMa/MqiDG9Styc9kMn2C68Fbm/kumAz1liyGAjP54dWWMIsys1hd5ReD8fmH\n1n4N5D7rwBxynjBvHo1Szm7MJoHPMvvB99LxL5BsX8sslUS6tEf6pFC7RFX6\nCEvKG1X0TPKExwbby6RBZceWEnmnAeL4d/ndKDYUEHKr8taQFSRo9E/a6EO9\n65m4g9eRNOOBpbdlvJFkfLXkXqNtBGEFMUXGZYk0V0moHSeiL9fe7leiXedV\nvzAjNumvfKGPQFRxiJUkr6mek1Rf+iEess8iAmSrNTDYrAUYmgCucrx+3tks\nmMef5kEMJGU4Ow3f5arrb2E+UF716woOt4O779Ye8ULjb+XGi0SNKdvh3pkN\nppLK9cv0tEOrlpDRXkJeY9xs8bpb99jHZgeG9ypjRyuvs0x4gStWXsFv6H8w\nfusO8FKA7RyhDSXVM/+806iCi7/faCGd6PAVDRIGbWRp48yd+ZxpD9XLI/JC\nCNwB9shLvVSNHhfR7tSCySVSFga9rr0CRx4DMVm74XLQbrc6i5xv1ZSyMmV2\nMwi6\r\n=KH83\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"09c2aa757fe107613f3601a2a9c23d05011f755d","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.2","@opentelemetry/tracing":"^0.18.3-alpha.30+09c2aa75","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.2","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.2"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.30_1618851702677_0.0744790490395899","host":"s3://npm-registry-packages"}},"0.18.3-alpha.31":{"name":"@opentelemetry/node","version":"0.18.3-alpha.31","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.18.3-alpha.31","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"09eaca242b0b7d2804a628ac4833e41cbf95f9e3","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.18.3-alpha.31.tgz","fileCount":15,"integrity":"sha512-O7AJ9d7pKAErJbXMQeH2/YocAT0fugW3ZsQ1iX26UtGFHEw72cs4wR8QP1RD+cAxkgEp3GE5ckSZhTcfdcV2GQ==","signatures":[{"sig":"MEYCIQCMr+NdLBkOy0qAAEtZ8cp/wFnAJHJYVOJKhBrzpic8bAIhANJC2igwT8DZg82RMje5Ddmfbolub/rv2f71LJfab8FK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfvfwCRA9TVsSAnZWagAAH5UP/jgybEyesxpe0mRlxF0M\n+ugypEobMDxIpFK2r2C37Y8uV6I9N4Y8Y1kXk/dLSjgqJYWrUsBs4xyn1bIy\nRjucH5zASxZ5Ey7DsNGKqd/31+3hRBUDverpoNdQMqjtb/k0SvAKTR5jqrWf\n0zxg9i8IaI8EUdzRwiyJbR7WSCQr+ZEoSfxiQqpkWSYAKVYtvHCvZ4cgQ/KS\nFsumx6Yyo8lefZ0EjdxJyyUczJCqNuynzmrrUPkQuZ9tLO9VKf5pTk0ql7KH\nGScWbuC8vSi9maFZ0m3X87XeDpPYiLzHwsiKtm3M2ZF1kSgSkENMeCpwpwNT\nHV2aye+yhcAJRyyTUBunA1Nz1pmzf8lc+suUpb3OjezyAwQ/kbSkZk4H+N45\nCSl7on8+ALemAL2ZiFhkDCfzxV9eN7lEw7GGz3VfoInLFYbRmiIua7i1knbR\n51dp/yBHepIiMWUZcRzMMhdtmmCTUwUidNYJTQOHt0WvkOEFV8lk4QSQok00\nrVYA3XKyDtuOLXisVbeCXHqoRjXIdcqDXrqgw9/9mdMHyvgiZYkXUduATV5V\nTauxdw+3egP3bOrwLpQcREvp0EHkHdLhl/zna7USXsZZMvZeeLdY9sR0tUe3\nPEcOs+j1Cv86Ds4/iD4TTly/pE91d1jIv1VeiHhJo3N5TLotI82WCSyG/2nw\nq7K1\r\n=W/9x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"d268bc6a8af633ed6803626096b124a269f7b24b","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.18.3-alpha.31+d268bc6a","@opentelemetry/tracing":"^0.18.3-alpha.31+d268bc6a","@opentelemetry/propagator-b3":"^0.18.2","@opentelemetry/propagator-jaeger":"^0.18.3-alpha.31+d268bc6a","@opentelemetry/context-async-hooks":"^0.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.18.3-alpha.31+d268bc6a"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.18.3-alpha.31_1618933744380_0.1921195003142675","host":"s3://npm-registry-packages"}},"0.19.1-alpha.36":{"name":"@opentelemetry/node","version":"0.19.1-alpha.36","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.36","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"f6fddfaf388ff6cddd7abfdd38121b2501dbb240","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.36.tgz","fileCount":15,"integrity":"sha512-wZKIT+ENm/QWXvKpvuzKPfL674C7/Xhx+0YNQweGpQ+yfyTe1FPrNHbi4l6nmrjxXA+5lbudRwJqmHTxj/OVNw==","signatures":[{"sig":"MEUCIQDZ+leXEaMxHpUYmp6xHdkwZPv0CfdaEA1OGxdZZl5PQAIgRatjcw4JgFpXkvRAc4AB0zmQ43ZqQEgf9gN78ZxBMMM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggWn7CRA9TVsSAnZWagAAt+sP/i+INqrEq0WBHb6ZAUnJ\nEr/QbOqjfK3a6STniU+dz1/mov4XR2ov4EJvWkk8Oxuqok4GYbqmeAMm00kh\nFKsx+cH5/K6YbLhju74/B99WSJVQ0PwuKeQAWxKIqZwgbsYUQX1jcGoKN+a1\nmmdbECNVsi34J2S7Hx97MB3nK+X0rVKn3qxaqXjNeJACP0U/qOpicMp2pPAJ\nCXyHTuLjMqsGZ2XwTHlsqdkp4jlMbFoiTcLvlMPVcld+GwhHWy3cax9G1h9G\npjLTZFtAd/wBDKaplVWCt7P4XFX7PeQTljhLWVFYPY1jDO46UnI41C+t+GiQ\n7/nBcQRqjyZODSafffuoJguaWy/IgqbMS9LZcWpHvQCx9K3WKzEVXu3kqQp0\n8+ES8Sa+s482pZNA/feiBfCWUPxlTMweVIJw9q2ucOs5hu2f+AK0I28V4iKc\nYZxyyMHLlKEpgJjOUqtePrgbEtYatSwI+jAuh6iL5elwqnkyMdWVBhG1j5aN\nAJKJttxpudb8PV7beGH0GcYInlbysgjrFkEvuE+M4GZffhcq6xBFzF/Bevex\nWNLHhc4j9qDCafy/TIV7DpCMC3ZKdcy3Gcm3jLL5ZWqQYERnh/Yz68FZo508\n3v+283+F1iCL6lNl8pkEVXmkDMoRYZ9tRP5wf9mg2fU9iQu2Hcq0hD6v+fLU\nyWeq\r\n=EC/8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"0c15999dccd377294a03cf7d36085216d6e8c5c1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.36+0c15999d","@opentelemetry/tracing":"^0.19.1-alpha.36+0c15999d","@opentelemetry/propagator-b3":"^0.19.1-alpha.36+0c15999d","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.36+0c15999d","@opentelemetry/context-async-hooks":"^0.19.1-alpha.36+0c15999d"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.36+0c15999d"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.36_1619094010688_0.019104940629582234","host":"s3://npm-registry-packages"}},"0.19.0":{"name":"@opentelemetry/node","version":"0.19.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"5181b0eac9ad3d470528832a9516914a27426e95","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.0.tgz","fileCount":15,"integrity":"sha512-mfUw4pEHoF6RLfO36yY3gv8BxNX1sItb16HwY27ipRO92BUKRZyclWI5XgpgPkBjZ07bbPwmru+mBOBVyadtOQ==","signatures":[{"sig":"MEYCIQDWkv18OA8jmFi2znOeV8odIY8yECKdvtr3u5fWUvLbiwIhAPU4BJqVpsRgZEU73J5xnUNhZOUeIsxsTADwFbvMUY22","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26748,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggWwMCRA9TVsSAnZWagAA6okP+wdXN//8GHr2nAXoWs5T\nd+qKuS8ii6TLmY/zFH/YXZa9TWspGdbev4oZRd5fMzjiPLY9Tp4wpNcwPNAj\nRSfeQGY+ZaKJ9HP0QxBPuNp5NSx/vkKG18D8jTJMjH/nflN6IiIbXA6E0ka2\n1l533GdCEukzznju1wJzBxnx+MeMTQY5L5OOXNDnSa0Jkok3f3Q3LuRiIYtq\n1v3f3kVUK92BMmIFw4KPYgv4gdxT+bsOdK97ZFdS8SxJqhzq/j8qGWHWG4yf\nlJ5EnkoPCqOoNQbuP0vfLHu1NK40F2TPgYOTZAVWgbvFmK+d5xpHcgZ5V9Ag\n1AUUIX1GONyBpEZ1DMM6FappefoTxmSf2H+3efVT5f/f4lkafOTFYOMYH4pH\nDu0bgJZfiQwwxlKZVKwhLYATYMY6y7KOSj9YtD5cwusOo0lIy6RyJe/MBtLy\n9ollptNcDhhzyq4HFeo5YmI9TUwcc0Ybrc3p9Tv8J4cegKYrz7qhOJsRiCry\nLqNtsE5pp7Um/7C3qaQre9Pp62q2+JwCYRHadDTwJcs8wUpyvvw1gyDBAAVl\n1nhA1b2Bh8ohRc/aBrpA31b7JAOg8ch2QhdczGo/wbqlqL2QKCORy8GzUMKq\n+PoF8F7bynS5HMGI+4WePwmcINWHhSsb7DIw3a3z6Mw3bdOAVkTzaq4M8Zvi\nKQ1C\r\n=Ljg5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"0c15999dccd377294a03cf7d36085216d6e8c5c1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"0.19.0","@opentelemetry/tracing":"0.19.0","@opentelemetry/propagator-b3":"0.19.0","@opentelemetry/propagator-jaeger":"0.19.0","@opentelemetry/context-async-hooks":"0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.37","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.0_1619094540519_0.7660948048335527","host":"s3://npm-registry-packages"}},"0.19.1-alpha.37":{"name":"@opentelemetry/node","version":"0.19.1-alpha.37","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.37","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"dea6dae475e23c14bb4826eabc769de6d8fb6ab9","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.37.tgz","fileCount":15,"integrity":"sha512-9D0yqAOg4l8eHolc5zV26cybucp63P6ssiD2oXAUeDshaNHLIqS2AIvM58xGISl9jsXc++Hw2g3gYr3J8HMHqg==","signatures":[{"sig":"MEUCIBObfuPZyukh2Ba7Q5wje0F7eVsaSxZkMvVOntZRJ3n7AiEAwA4+fgec78iIAOHlpDCKMfTeazRoG9vbucI/V/OUpis=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggb11CRA9TVsSAnZWagAAe+AP/A1JD8WFMc5DoRyCIi07\nMWGm73WtkOX/wkYJiSs6zDmVy7hrRgYh3Ns59wyiYeQ+F+3vU94ncJyNqDcy\ncx0bmZeyWuMgQOJkDxvQgwf1kmbP7rMmEk2RZ+EJP2EH5iEW427fjjffG9QX\nLVXFiEoQCj66DTwCgW7PinQ3Yj/LQHoRbbLXYvtE5/amQAgknx8A6WVu4Lma\nv7Gi7F0I6I9y9WbHodmm4Pr3byar/6EOJAgPCnb3Wj09K0g6ceQeVgdbwa5r\nKseYVjTL1GJ4zjU8BKaaAzdu8SS6lXn05SvUklRqyu4qngi39030HQ7Tj2B/\neVXRTfTpWOIruQ9WgRLVfx7QX97BOlYstAvHPREIWbSZ0TBvIrAXxOwKpcGl\nlA7iMJp7BGa1tW43gn2dv3Nk6SBVt+vpTYRTaDxh8EvOtM7dALuReE8NOZ1Y\nFr2ZmXdYvSBeMtW1Bd69eSQ4uVXhg4fMApUAWHUJ6aiCl1EIDZevfYkzchBl\nrydgQWgNenqdwTdTKrkQdilALjaASB/pF2UDxLsO12/w3KdbQnuFaGIvf8Kh\nOgOu3yLSxy0L1I1JgIg4J1gyjevx2JPgZf7FleCx4hz6PmprC0Qfm8I7S221\nK8+F5eHADUfzPU9cdsMGdcV+SgAEuiRFNR09OhAfnsr4vPL2Sw+Xaw1wCEx2\ntGHr\r\n=wAMK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"a0385c45376a86d396cb364feda2b4afebd836d1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.37+a0385c45","@opentelemetry/tracing":"^0.19.1-alpha.37+a0385c45","@opentelemetry/propagator-b3":"^0.19.1-alpha.37+a0385c45","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.37+a0385c45","@opentelemetry/context-async-hooks":"^0.19.1-alpha.37+a0385c45"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.41","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.37+a0385c45"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.37_1619115381190_0.5974829559453598","host":"s3://npm-registry-packages"}},"0.19.1-alpha.39":{"name":"@opentelemetry/node","version":"0.19.1-alpha.39","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.39","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"9337f98dc80c816cd5761f336467482a84568bf1","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.39.tgz","fileCount":15,"integrity":"sha512-x6GWrWLPPpY0/4gdxZqI9Wfp3pvbaoSHqpLqOXtEvsUHkwmysTgjOa43TkOUBc7ZSMDnzDPv2g7O1sBRXCiqow==","signatures":[{"sig":"MEUCIQDxMEJXmXvHUnMdlxK4CBm5k470HfaQf8fiQ1xRVSly1AIgH5RQXSLrvT1/JfkRso1xa/H9d7+SoVF65DDyPPmQWtk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggcRKCRA9TVsSAnZWagAA9BwP/1wJ6haoWyMkkFcg6H/g\n6LuKK5117B2QC5IIztFFgozAaTGo41Ei4wE+3cjOSbqFUJbx8a2nkBlSqhma\ngzvWS+csZSdTfDVIDFQzIuRGX4bB5jCvzRDskv6yc14ZqBMh9Vf6CNu6Vg/9\ncIU9Fqs48QBkQXxl9KGC+OCUMkBiZTWm0XGScMCoIawtN9GHTH/dSeyGWUJf\nnBSb82JKo8cRAY2RvsjwVlB8YX9BVQGVr/ZEf3I8zR5cM7FbnsoW2Ae7JE9Z\n5hR58HwryBAy7bLoHB2gCjcTvVqzxBGjnj1OQSl11cGoMgtcsBVmJPQdosgk\n6sJpaWdCAJGCYZVDO1ypXmf6dhmmUEpC+v3Qft7ggwiPObyF8RKZVqTx1QJF\njMcTwqBJxn378ViXAbSGGuGicxOAcI7fqLi4XxgAdOj7Ey0IrdE16N87BwAG\n//LRctUVWFlxSr5oejSxscP2ejqkWjGSbopsbvzidZVFTNlh7k5BJtBimoCU\nEWZ5tcTejJCJ3ZA6yWyOYouEtedZbcpVBk8ZAJIs/Ddkhv1Upp/wcEci0zP9\nJ8R0C21L4NlJz2ow+Ib5nJvq6raIxssp1kpKPqAhkI8ZP3jlbJLiysQ3ONta\nXU+NrSdsuC60bfKItYcbCPit12vXeOcRnKb2yolOwtVX/LGbd20K/pzgNsPI\n00lY\r\n=yWrJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  tracerProvider: provider,\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"23ba4bfdc77c8bf594bf0c817320a31f59ca0bd4","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.39+23ba4bfd","@opentelemetry/tracing":"^0.19.1-alpha.39+23ba4bfd","@opentelemetry/propagator-b3":"^0.19.1-alpha.39+23ba4bfd","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.39+23ba4bfd","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.41","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.39+23ba4bfd"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.39_1619117130484_0.893120461343412","host":"s3://npm-registry-packages"}},"0.19.1-alpha.40":{"name":"@opentelemetry/node","version":"0.19.1-alpha.40","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.40","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"238772684bf06cd8be50901d27085193510a2ddf","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.40.tgz","fileCount":15,"integrity":"sha512-z+uf6SXtb59L1wvcEFoB7+YS12s5s9cizO8Dn1xQwjSRcr1XzoJaLvbJMWefZUMWKLbFr5D4PyjDL4Kp76NAmA==","signatures":[{"sig":"MEYCIQDTFHHvCZ5eilzpp7DykNnVMEi57u2YPBX6Gykd/983zwIhAJPb4JKJ4gqNS/60i6i54ydvMZ3rwExGjtEmxgDHpaf8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26817,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggsWKCRA9TVsSAnZWagAAC+EQAKIKJcRGLVlStfK3q0YR\nQS52vi/uVN24vQj4olq/Afz/vygacaN/dlVJTYrrPKEzje0lSsN8Z9+Huoee\nUJF6t0Xvjy206AhSQyEUndYVSucGJZPG79uMU0voIBFsJ28w4R/8Oo/cqRhc\nzdTXgRRhg/NlmuoC5YXXuPAjO8/KsGFU+bYUgWvDS7BN2i4Fuh/YJqf2j0g3\nMm61/cjYbe9Yvd1Fm5yR2VgX8lCCGQtD4pRqtyA/2oeSqxgvbgOrnoYXnX/P\ngJa3SdtolwbOY5gd+g3LXFL609/oAri9Qs9wR+UkOk+AbwtuerOvc1/+YKQ4\nity8s87R8xbHuInqfEzvrDTgNWtxWT9YOzklzEWm1pzvnkDLO7EcNUuhNvK7\nlH/RJShdwLBkQWAjauDvFyY1xDXGIHmdI8Doph6qQdeH4DIhv32l/J7YsV19\nIIMPeP/ZvcneNs16DcvQVR52EsomZcB0tvdZcjiPqwfKnC+Fq6lGyp4JW9k4\np6NMmr3BMcCPBZk7dSjh3js0OXSroRt5NLWskJ1oVGSLjk63SvO0+3sMQKGi\nuKbwKxiMyuZtw4ydwFI+2fGIDe+FJtCAEb2RWhbxdTE0R5RSExVnnHF+0xJO\n/wS/N00DiXfLgnD9nChVNsk1SyDBd2G1+y8ksGWYHDImRBlq1BaARyOkOEae\nF9t3\r\n=bVtP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"f077df3f14414f8587282bdf54dff703d137d4b1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.41","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.40_1619182985659_0.8871448751046638","host":"s3://npm-registry-packages"}},"0.19.1-alpha.7":{"name":"@opentelemetry/node","version":"0.19.1-alpha.7","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.7","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"37f02e6d8fad0bd47f3a5077902a2ad693176d16","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.7.tgz","fileCount":15,"integrity":"sha512-ZG/NpSylAmcqmr/Ql9Rs9IcVAJ93Ob971zOaY7rufeyLPMZHuANd5HFwn3/XKYJb9O9RqRsSq0mLJM0UfsqXJA==","signatures":[{"sig":"MEYCIQCb/UN7DEWWCwcX3QFhPOZxzNrAK+2dwlHbiVG1f/LbJAIhAMGacTudCprK/dhUxRQGN7E1ayyqfI/czNWTi1anBJ9V","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26884,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiYnSCRA9TVsSAnZWagAACZYP/32qgbdxEPehB1oj82xZ\nmK4HFQnsbcv2kCmGChTzal+SeCGU8f/oW+CouCXl41ZZe0TdCDlxFhdP3y/i\n07EarHe83+Gt3AiVuVxV18P8zeAGHdzzNebgdaPBmr+Boze9aieGYJAv3+sX\n080AeU3CYnc0BWj3v0X70WChLeeTNeFdIYI+Icpa/BKfP4ntAIaEYawGr9aU\nZnfxmTPQj9p/oNxNoyPbI9ofzlKO0keevn8340vkVuhir9r5sWqVhi2fmj8i\nZMI3tVa46f4rQD8Xwqr592DWYTTMqPyCU+y9sLmC00YONzFpNzy93Og7LAcH\neYvOD5ZMs6iScFvl6KQ1qJx+JAmiFcKtPl2X0N5tgeZE0XhLD97jm9q9UrFQ\n2bf6lZAB8paIzP5r1PKB5mpQBPIM+hKFG15RrDJtXx+B3INyE8rycMdTii55\nAeFFlaFct2N9uCCoZ7vEh+EUisM7BWmY2VGg9MdOhzbwxOKTZWiugxOOE3ME\nWjtYzNhnL4VaiGNfa0x8nCRkHTcJ6WpLWc9kORzPnd4SZ0qtGw1FMHRo05S+\nlR69ADHi0doOD3zp4EYZJ4pBwljNHMvLpHVCXfy9+Xjza0A7d2ox4dEoQqgw\n8XurGMREe8LiSuIhXeArs04/O2MV82m2DJh7q6cTwAImP3P3bftCxYfCHXIe\nRZQR\r\n=yMTy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"c4341c39dfcdaaa65a5d6ad8eb745b656d865177","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.7+c4341c39","@opentelemetry/tracing":"^0.19.1-alpha.7+c4341c39","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.7+c4341c39","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.41","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.7+c4341c39"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.7_1619626449841_0.646998892838182","host":"s3://npm-registry-packages"}},"0.19.1-alpha.9":{"name":"@opentelemetry/node","version":"0.19.1-alpha.9","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.9","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"8435de193e19b0543ee78f809029d7abd57d84ff","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.9.tgz","fileCount":15,"integrity":"sha512-u0gYoVt+78mPJF/rquOEn+er7W0RiWJROS8Q9IJv5l47YdnBFGRt3Nbaj8kHe73CTn3D7XIHyO08xAAUebE04Q==","signatures":[{"sig":"MEYCIQDjD/LAgANSzNEvE52jocHdrP8OEYw9BzB3NoXfom7KPQIhAP6bPr56V0sEe+vmAQMyUNQxzlJish0rkdgZ7LJHUqFP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26884,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgimutCRA9TVsSAnZWagAAOJkP/3jDj3J/1bwXVfP7KxwR\nY1x8ntj3APrVsE1sHuL072HAYueSt6+B9IfTZq4zUntzfvN8w8i0f11iHbt5\nyEOpYbce1VM4AJPh1lsQGyv9QOykPqK30NQzMPazwlQAdxz5X2zK6hzfMHhh\nkESRFbdOqVw7ejOSjv0osSYsCzLrXgFJk4uZejfm1MDlHNDyZsZd//aeP6QF\n1WUOCEim/G99N3lhn+ZjOcZdc46BmwDJ8cdmSwQK3wPNKljcM+THF8R+sjEn\nnqhJI1A/yJV+XbruoNVPzI06NwoqzeHGZLVBbnwxTe1JeteQPRaaiK6yqGha\nHmJcjdi5WhyeDdZOUSh3EVsV1VUM4eBGbsyeRAmbbVTwWyYtMq/RX3QBC8Q/\nHlQF7/jbBezkwx9mqM93lcOQXBBz0q9CmcA1tDZZ7xQOWcFWcS+zj95FbTvJ\nkAzZkGIWKnInwm7rTM3qHV0op7QyctvDCdYw76xBeK5v8myO6hP7pM/+sR/W\nrH2BMbM9E4tIv33zVaIi8R8+UV8QEgCq5SXdWDBVDjdUKS5Q+m9hLsyXTKZF\nPM95KPcMvBW6JN1mz7A4Dp2QXza5KmYjSNR04t5u2RHkniNhPFdbgFEUhxWz\nu8JKuY0wfel5T1bxey9WVqsM/jeVoPyUjk6KxjDBJVz1Mr6KwnmRWCYqxX0H\nAw4V\r\n=4/FR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"677727b2da55ad1decf399f3584ef92dd5fea239","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.9+677727b2","@opentelemetry/tracing":"^0.19.1-alpha.9+677727b2","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.9+677727b2","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.41","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.4","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.9+677727b2"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.9_1619684269091_0.4848882818539437","host":"s3://npm-registry-packages"}},"0.19.1-alpha.11":{"name":"@opentelemetry/node","version":"0.19.1-alpha.11","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.11","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"4d6d93f13e41b5678503fdff4324e0b04cfce0ae","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.11.tgz","fileCount":15,"integrity":"sha512-qqYPgGP/gB89CVqaYaP2w8BVQWa+frkDTeAFWB/U/cgusRIzatLcTuAR9kiHBfWaPNb7/2hBhgiVnTS4xBWMWQ==","signatures":[{"sig":"MEUCIFgznSrYk0aVpxxy0090pwG3XheCqxz00j6y9AFzD5mIAiEAzjv3zHlsA4SwbxYMDxXAd9wETxzoN6/TLZ8bD4AYgIk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiyAXCRA9TVsSAnZWagAAtqQP/Ak2wS5M6r78ohAUpuhW\nPjBOv/bhf/w5ReQdjD1hGmdCamOc44smOPGgu0ugQzjkP0CSarZyjQbl88oL\nQ425Ho6e9tb/8CtZSynExRK1TGmHWAo1TF9vu6H1X97A/N9b71upyyCDfqns\n1mu5OsPi2bhtUb39+EJDIL7UDFCRSc3SqM1KQ9dMASzoL45nF3+VV2+bqL/u\neW8GIs6bUUKlU7yjfO541IMBix+20rNw2lSwzvporhLpL627KUNu72ScH6GX\nHKUQHavk/VkHMDQhHKiR4oOk09EFLuMVMMm6AcJjfyYtX1wXYBSKEc29lcM1\nu+2Ilf8QPRpYUJoBqnpBmxDmLR6RgaBsoTTbtxgLtzZ7YTEAKEd9YXZww+3L\nXkh6bBTJ+YNqhk5mb7UdJQbg+5fzWo6qA/qk0cu4EjWWY7/npSDkWo6irmdK\nOBzuBACYkGNcAaiKQaVfo4LWwV84NumlwGeUqDSqLSMnftmDlF3jAHLPNW4A\nVUHF3yLclB7h0wJgJTFjtqre2sdUUtsfEZMQwLjJIQQ52zTRYGC0EvYWRTm5\nyWLeNLAXRYbPd/4qvI0MFsS+G8iF4CEdUnGVjDf06WJQliTw1urMQajanlyV\nzhCeDRtkp73QBlLMs4GJJad1dvsxvE6WlkRpbS4Fq1Ys/cLH5lRReP1lHLAL\ns2pg\r\n=4G0q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"2afcc7c90d93bac4fa9180f4fd312ed01370b2b5","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.11+2afcc7c9","@opentelemetry/tracing":"^0.19.1-alpha.11+2afcc7c9","@opentelemetry/propagator-b3":"^0.19.1-alpha.11+2afcc7c9","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.11+2afcc7c9","@opentelemetry/context-async-hooks":"^0.19.1-alpha.11+2afcc7c9"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.11+2afcc7c9"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.11_1619730454660_0.4524497816728348","host":"s3://npm-registry-packages"}},"0.19.1-alpha.12":{"name":"@opentelemetry/node","version":"0.19.1-alpha.12","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.12","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"3fcb98abe24938c5d3f1d3adc3262babe39bef42","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.12.tgz","fileCount":15,"integrity":"sha512-4SxMd1dXqTgKOouUgVsUJGznVKGEi2CdVX+NT4NHlo9w6b+urHW2CIwd64irAHIsgKozd7MXPUAygq84VuUwcg==","signatures":[{"sig":"MEUCIQCqF3GP+tVN9MsY+zH4aEkYzO2wMKIyBhl2DXBk9GZLhwIgcFrBazq1XQgUp8jEMLhLmGR2S3e53Chx4gq7VXqAuSo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26889,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjG19CRA9TVsSAnZWagAAFOkP/RYd3kD4iX/NzsN7Jw7O\nGOjNqDb7C2DbbAByYyYd6qojqMdNdKdHxQvJ4P07H0QrsORLS2HM+BlsNpWd\n8p7ju2eslI1zQ8zqTKRKgTeJq7pL/BZc7SzxN1IRnozwv2evJhNRdSMH9bjw\nAlz1AiGiEfmb7pTkvdqzdrGoAhXfX4ajPLUaYCajdII7NeXcG5f6T5+LWmqV\nbsB4RVXEP2T8A21H04pqEdFKUeEyYSGCRsLS2hxSsPEkFIeIQ+FD/8vEyy7G\nOxapgTLX2WRpXRjeDSqJGlUqBx8FFMIMkNdZY1d8T+v/5xSG3vFs4rjYyqG6\nvtBaa95XfC8tSqJe8KycC1oHMEOXGdH7O+XQ8YHU9dNT/bsKWXz78YILgbhR\nKKbnGftl7GclKTc5j6l6m8u9Zq6Yn6ICZIV7a7ulAi4puEIqKI3HJTmvLUpd\ngjcrIcOG9IC8/uwleqQSQYG8cFeXC2vhO+CObmDiN1y4ZgaIiWgpiPmG5dLb\nCQPpmjjkuJ2RPAQb/uUfAMtRxCICWSIZqOgDTDjCPQEYT9n7rFkaJ5YzdulQ\ntKUYV6Hqg6roPy6JkW8I7X3lqr0GvYVbvHmt9xH4dOUUL8mPCtEMdy95LKri\ngjhbpPTmsrnnyAXkXef5hU6FZ5EM0dQ4mhodvmwkT42R7xbjxC1iu6lgq/KJ\nCBNh\r\n=o/bg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"25c205aaffb6707d4275be6bade3e078e50e2df3","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.12+25c205aa","@opentelemetry/tracing":"^0.19.1-alpha.12+25c205aa","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.12+25c205aa","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.12+25c205aa"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.12_1619815804726_0.7331430716572009","host":"s3://npm-registry-packages"}},"0.19.1-alpha.13":{"name":"@opentelemetry/node","version":"0.19.1-alpha.13","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.13","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"98a673d899b0c41915f01306873d164fd5c4d98d","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.13.tgz","fileCount":15,"integrity":"sha512-qflDworU18zMlmf0mq8n/JqzWQO8x6R6TCFVgWOg6NG8Br5ixgdW5CFWTBUdlH0LSJKz0S+ah1U4FCi/u8Q4Zg==","signatures":[{"sig":"MEUCIGO+8tqWK96iZ30cZ/02tDSvMn2lAVZxMWagZuI6Y2g8AiEA9G2o1FIDvf6w+Gcx+4NYLnDS1gzbGp00bHc6v6wSR0g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjP3YCRA9TVsSAnZWagAAoC8P/imJJedKDK4pyWW0BSBO\nAMFnVqk/doa/OHOVqCJzKJyk8QzitzpvXwLuQIpGlHWmL2B/OoQk3k6JqCge\npjl3tNR2CcRLjTaNfWY7uMp2AvXIHa1Hr8pDVSsQeV3YFZrkidJnh9i0l3Cg\nDWQ/nsPEngZEv9ii1hcWQSzwoxr2hb9z0mFaZpLHLu3RgB8HmZMDZ7H/xe6I\nTQIpLY1tciYPQTNiSW2ZOTJaXg1WCGFXYDxK7HQqqn2HplDK6QkW1Iji9Xye\n1+N63L1lZ6frV11kI6PNGp8OYf/a44cN/qQ0ZjSeKYF3oJlTQlaps/5MmDXC\nBMohc6JFQnKl27jGHjNC93VHJA4f2ksIYfe4ExYkZM/m2j2px1ZHF0Wyhc90\ncTEYVPHPRwmaOKJlDVGICY9XFqyKU58xLs92xFcwcnJGO8Bnx+2oCXcBrKse\nyppjv4ikEvB0l80RHS6oDlIalO7FizonJReLdDDWaBkYNNK3oeJT0ZeHDHh2\nAB9uUxptJJzgPLgX/ZOo9hVlIll6F3isWvFjtZV3ZDioFjz/gDdLrq2FTzyf\nN/TZLLRwXevFkI0DrkCpJseNgB8l828fHiK7eqBHimtfkO8aJtsTaX/5EloH\nxdfSRAjE0cPVnF0rLiTlmhbujRh2MObyMt/R30spOVBR9rOZi1oOcCtnhYmw\nmgEr\r\n=PsDX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"329cf927c6c2c9977996cc2a18a3979af2e4474e","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.13+329cf927","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.13_1619852760169_0.15087686195001915","host":"s3://npm-registry-packages"}},"0.19.1-alpha.14":{"name":"@opentelemetry/node","version":"0.19.1-alpha.14","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.14","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"bf7fc4edb61fe0e5b29bfb3056964e082715e859","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.14.tgz","fileCount":15,"integrity":"sha512-L3I68GfCF2hf0aoBuXLX0jZp4QWlAmUPXbU4RcIRm9tATZZpEKPR/YoIneuB5JrZPNTxSEKAhoQARMGvq3pbBg==","signatures":[{"sig":"MEUCIEaidJRzsH/XO0m6drelzdI/vA/INwVBwizYAEb5qG6pAiEA0/pPAQYN7485ivjUDxnqxpxBt/My20ekVRN9YBhq18k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjQVlCRA9TVsSAnZWagAAZbkP/RdHkOLt1P3xKKFyWoey\n2zZ/oQzqIMMxMdMqm5oMkRJAewSJGt29EUJwgPsRCh+JIuwStiWyKJ42CBBs\nLV6buji0xQF1svBAuLdWGH9TjWCh+A2oRm1hkLIWvwRepZQau569wlV4ltAN\nfQvJk60tbKRS1cV++7vbqvnnEE9xK0NCNbPWpHQrR0NZjfQOquap/BMbdbOl\ngkBqRWTA5wbQA+gOe0kse+9293v/klpcc/LRHiOOX80yta8kSgfYpAMmwUAI\nLGykBh5MFiLiQnOnOw637HOmUGvUmEOBVrek/MhzWsMfahOosxCfePejgICc\n3fUEmJjnmrdYdAKbP/2mJR4KElOCk0+vWrsFq9NyvRZ8WT3+MBlfetN7NKme\nsh1M9kOgXE8GgVEzqq1TvbUyXNiIuMbP4wf7FHTbGtx14MSAXyax+ASHYS5B\nvFmYm626ufz4gvtGKWC6SsVCdQCxMADBZesQPdEDjT2LFIRsgK9/3Us4VJBL\nb732cMAy92BoEhX3pR6XFPp/+KBSU2wzhSoXsri7dtQliDTz+fTr+tuULYrt\nASFocC4BMZ7iMO+I7+XS27syps3WZ0R2ONG222Oi1WIDA1JrFQ8+vX4KT+2I\nYIQxMHcvguPHA3jMKVIGLN0hMjljJ7NN1yESeQpq+6Q34iKUjFAoaSlOq+M+\nNYcw\r\n=BCTD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well know modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"e1e79ef11c3cc190805c3d870cd82060903d6e15","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.14+e1e79ef1","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.14_1619854692847_0.3101862788266305","host":"s3://npm-registry-packages"}},"0.19.1-alpha.15":{"name":"@opentelemetry/node","version":"0.19.1-alpha.15","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.15","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"db4631ed7792dc66df89b892e263e70d3596eadb","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.15.tgz","fileCount":15,"integrity":"sha512-P0fI8lWKtZvMz0HRyqt7XSxxmOqwKMJn9AO3SwU3dionRJsTMtnksj7PVeiq8x6heGvZJmhSENA9V2CbDnRyZQ==","signatures":[{"sig":"MEUCIQDHR1FKmPu5/VgcyfvzIYDCAx0u6f7B8hemf5Ytr1ugYQIgfqFX+J1PK++F0nBPuQb4HPbXIpI9UQurwx6aFlKfw8o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj+vsCRA9TVsSAnZWagAAauQP/2kzzVzpFUVJuTQkzj8t\nP5n6abKZfanbIP8S+9cZP6fIce2y491jV8jk15CGPOwOMQUxenKd/cSJWHLI\nXzjxGP0Z1D/59mjKoElfAzCyVkwAOFD3LPjTL2CKetuqtRno2S0XU1G8yZSP\nPf15wNoR1xriXQtqFHFmVODYf8/1mbjBwARkvWQU7MA/nH6fUiqoaEzYk/KU\nIxEofCQzdgt9COARvM170G3iJvnNSZtRgHGUUrq7oZx6zjsQ95Luge0S0BDZ\n6FVDOfiJFZcvLOyMe4pCiNPkrWYJ946QVfz9gzNNJsUzc1yi30GW6rLdMNxv\nE+rwo+BTU2EGUuvIJp9WSYApKoBpL3ZO3Uu/F3ZTPOC3Y5iG5youaIf0cgNU\nVMPkV9vPsv4WzECYlh0ljIA/4BbikSWSAnW1zimtTb1T/OYtuVYHndB8Yljq\n8nKoGCmMNqf8CgyRiLWQu70euiBM91VFNMOq0fMsctg0jZvpJSFmzt0pkyhZ\nUginfVn0GNgxbwLVGiW4Wmw07xLPrYxHSJ6HmuPfsEFmYr+JxU4cBxziAEe7\nAiZW04gYVjiYvg4rDKyfS9vYS1r9DNKGZmo12iAbWLwbbfbcE4badKQSznGb\nBPgXg4MW0F/yJuBVq8lEDOY70RKKZfQOqjUh+73XPjuz8FF4dyOLGnIRccYd\nh7PT\r\n=9SEe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"082abf9736aa58c45379cc5541118c4bcb9969a0","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.15_1620044780131_0.3444649928578607","host":"s3://npm-registry-packages"}},"0.19.1-alpha.18":{"name":"@opentelemetry/node","version":"0.19.1-alpha.18","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.18","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"6e727d3b2bac8495a359b06f68802f5693b953cc","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.18.tgz","fileCount":15,"integrity":"sha512-K2MKJWHpTuzTGv2OfgHFWh1/3Tz+USyz5Bj9WpYX7oM24k22/kkNzZ6T7MHsHQIRxkxe6bRaXYYqPwoJpCnrDQ==","signatures":[{"sig":"MEUCIBEHzkVufoN8xMEVZiuVFkVDQuIuiOUIS8y5hK3SCJavAiEAh8lk8OYIwHlIvSFyMGl1LQND/yJvR7EzzCRevL8Nvl8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26827,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkX9kCRA9TVsSAnZWagAAj40P/3DTbEzBvyV2QBgRnPpb\naLtf+iNzhzsYTlHD5QdvFr24OTlyHynJ3xwSz9vfd0DQyj9dI2iESlyryC7h\nfa5G0Jzc4lnTmsjB2bK6XynHU7/vv68p9Zc75dPQE30sYONsfey99h+tV7Dz\nAUUZtBi6AXd1LMcJ7VnVNHE3/fVOp4+70zVkvwBHXTl6IcfyVlrMbS7SyDEg\nxW96L53QMeuMjeLg1Foe1dWgkxxe48Cr8kCng5d7SG/ykC+91ty4/3Of31Il\npNMpO9DH6BkF2jWBRmRWYx1srm1aq0Z81S02fWLcxjyb9odZMddjyeb3FIfU\nen48VRFsPbPvV445v7bQlc/DnfoH78GPurq4CZ3/Q0Cj6MGAL3srAQuLL24u\nMAlZmnta6JaCG7pMhmMXOBLHDQXB5ueUAsSN8Y5nK5tPl9FDMlrk0xEB8LPe\n97+HqETktBho5MnfarQEx83Lv1iyr6ka+RmErPVcow1AkbzeVjnapMZMVgPi\nSTG4wJq54/7sjt3dYOHO45f7N6PuDfX83/cM8VEE10defrh7QulQMGhKKS02\n43O32bCbvV1kwSbBKKGVQHxvzJrXCUeQWmVJu6uRlRUlTOhQznISd6Gp6XQH\n/Zu0Ni8LDeDEym3y9WsuR7gSuBj2j5fgQyelXEeeTGRpyyjCVDTHcMRruZ6i\nA9L3\r\n=QS+z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"dfb77372d311587c3462a43497c2ec4b3867e9fa","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.18+dfb77372","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.18_1620148067852_0.42545603864626425","host":"s3://npm-registry-packages"}},"0.19.1-alpha.19":{"name":"@opentelemetry/node","version":"0.19.1-alpha.19","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.19","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"4262b9bc33d1f1d63f927355e28365e1e36a975e","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.19.tgz","fileCount":15,"integrity":"sha512-3ZCJxGBfAmG4agLAIk7xPctJXXDO6Idb42DOgYhVEa0FFQRQfBokVrtTuPDcTJsgGeRmRHBmoZMwssYoLYg3kQ==","signatures":[{"sig":"MEUCIEypTP3EybDL8jWSDC/Xuu6Ud/Gi0OMQZq7DKin7WSAXAiEA/Em9JMr/6Ls2qi4ANGHZxDYBDmCXwFQ3+52zUpx6XD8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglkOqCRA9TVsSAnZWagAAhn0QAIkQ37CKBcTE3H8+rOZl\nHIDZU/TEcAqLa/AtzymJziGgbFhof1dBXIi4OO/MzWhEC9UmlZgVazyI7bcy\nJs14MejgXQjh0OE5020UlT7uyZOyxnodMQ7AhPBl0qiOGwdjgjAKkQhuhpNN\nc8zGE6s2VAFTbTlEUStoX4JmnL/tG0XAlej0rKZ3QsegnYxORIsXR8YhX45e\n6wE8sxnwOySm+dCrN8494RGr+m25N0/kmZ2zDQX106uCoUwfAXJK3J7/dQGX\nM0xV5uovvd/0ggsW+knWppTJHwQG6mZirtEPnulWIMuwsAXd4fwfOfBRveI3\nnOxgwi93C57S5WOOAJ7R/EBna1/sKX+lLHBEM5dM5y1ypM61tROq1MOaffJa\nsl3gfxliCjcK4wBx4+gtZXICROX4TOn/ptDZ+DJjl/Coo9gVDfAnLLzECJfq\nFi0Fu3SZBmTslMR9iGFcHVO4aXfbNieJWyob6J7URycaTXcY3h7IwsgGYFli\nbW6i1JHYi4s+95sJPiDscGLoM0G66dHyVe8N8mbRohfC8XaghlQpaxW1r21D\noWbRgHevrq73B9QsByt99SnuGXlNda9co6kSbfOv0wvB6PvPjd3vEQuLHYjQ\ntI23HOauD4aPTcWgPvjlpQcaX+SdRWtSDottjWlpxUAnHs0vQnF4HN8imuJY\ncgXN\r\n=WrKy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"9ce9eea7cad32cbc57bd80830f21e4f366ecf929","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.19+9ce9eea7","@opentelemetry/tracing":"^0.19.1-alpha.19+9ce9eea7","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.19+9ce9eea7","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.19+9ce9eea7","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.19_1620460457737_0.6712954809358618","host":"s3://npm-registry-packages"}},"0.19.1-alpha.21":{"name":"@opentelemetry/node","version":"0.19.1-alpha.21","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.21","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"ed20b9c3caff39ea27445563ee2ff055d4259930","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.21.tgz","fileCount":15,"integrity":"sha512-45SpUSQ+/wUY84VI76Ph8RB2tbr5Ykn09NpWlGjB5SPyYWaTfmzM4wHXuHuy33UYJ1tDirdgxHBMLVaFqbsETA==","signatures":[{"sig":"MEUCIQCRK14pWlsHgL7v1aJd/PJAxLZ79ls2CxPAlIMz/s56iwIgPfQNE8g7fl0hivfxGEJI2mOQjPL/GJASit4ALZ2FYFo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmtHtCRA9TVsSAnZWagAA9IsP/jkJG2nzngbhT9EnxxDj\n282SJCqzgRlciYOzszbPisUPxuixB6IZ0gQ0eVb5Dv9wYsTwEjaml6tsmFw/\nzg6Bj5OXG8MP02jQ3oWta6KeNqlZM0VqlyFo0aemQg+IOayYYCCEVm8XTJHA\no2sB46idXqpUs9xYjBqfr0HW3cI3LtciJw0Z9qz662ODggOGd3rgex+B1ISR\nsDHnZVyVeu8Yjw0K6Ydo9P/yCPaVNk0kPMHTR6ogQA1h0MYnSXBdBi01h64n\nRADMkkTsd/sxQcMzX2vtSLHBYc+qaP71qiP+KY4HcbqDmvq1SS3/ovGuKBf8\nJg7MedkZilRgFE8iJWC8IDD81FZ46H9H6nKLqYhlxYaBDxJvcLfTcuxyMEji\n1KNOQptlAqtoLZGFgPJlW0PfobnkHerTIk49GTqi1jkudxt3713qVnyxAn8Q\npcoOQtUxtkgEFV2FI/o/Pk8sF0mNQfiLAOJ5u1LvEm8BHSCplKsKD0iEGTrI\nSEhOEGXsmOr/oBIbsQHQOn92hCoXr0CMTR2RJ+3lu/xWkFuejRP+ijKqF72J\nWv39BvWmuaoSL/EMVNwEihAcNjxCTYjCNfLXDOUp7VxUopsrDHAlR/F+c/Mr\njXcqta8l2GFlg2k9SyTBt2V1fGZD8Gm27ihH9nxzlfpLbFRyU1dkrwD14xnd\nRPs0\r\n=t6Y/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"5cd02aa12e0bf08a9736f11f09ebaaad582eed27","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.21+5cd02aa1","@opentelemetry/tracing":"^0.19.1-alpha.21+5cd02aa1","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.21+5cd02aa1","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.21+5cd02aa1","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.21_1620759020817_0.43096702623449046","host":"s3://npm-registry-packages"}},"0.19.1-alpha.22":{"name":"@opentelemetry/node","version":"0.19.1-alpha.22","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.22","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b33ced1fa26febd9bbf152e5248d2d048b3d834f","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.22.tgz","fileCount":15,"integrity":"sha512-dBxlCsJ1Cix0sKea/L7utvpl0Ugjbql7RFxExI0TbDClDVs2UHEQ/A1GOrgKjG/M7nYCgwjHQxvkhZv8rUTNDA==","signatures":[{"sig":"MEYCIQCdTquu876uBEQiCJW9vi+Okog/xlDoCxqMuO4BqdO7NAIhAJ6TfnkJ/T9vlNXetcrqyzlxAYJMLcFDsBOxEbjGg3VI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmtYxCRA9TVsSAnZWagAAyc0P/29S2BvgAX9iGD6eM8xf\nTvdPR967Q9ZEEXBBdqhogFFhBoiK+IHie1T8Y8P+mWhVar+1SUp/4m3jfCfG\nEIRZCCrdW+ioGlMLdWMGyj1gXHX3jZHLPULcG3xYBnBdOYYbb3DTfOLxQuJo\nbSSmPumM2iy6eUMHJd22fN2JuXJEeC3eBAfXD47V3Z4CNhj3xJdE5aPHtVPi\nMw6BzXvcYWCnbVLEXrATj2u91WJ7wd3fwK96G55zWUAeIzPd6KkZP36xKyYw\nVMJSNr9rzqs8Qoz9w8A+2hhDu+NivyXE8NCPhTUa8hQL9raPMjIOIaoVtP7w\ni0OOvEpxd9wQkuBfWtrutGjpXim48os3vuRBqper5rL3kLrTmRaJYcgbQo6v\ntcVL1Zs5GGuUnJIctKSLcRPfjD0vpPbywU6yLl3SjirYmYNbJpyYSn9v4jUV\nGk9qqDXMF/8rjBH622xdpg8X1UbhKX60RvKel8m4HJc7y8Kh0KG3Xq+VYGNc\n3GT1wnberoqLgY2X7+xd8WNiLkuPx0d/ymms6AWuXGS9Kt5eogcHsiAHyru9\nDpQelv/77n7irOt057my5i9ONFD8eh70x0h4ZkC8KUKdbmfLIJ4vLXg3n8im\nIdqHzZVhyyXHaJUooel+lXwlOseqTRVm2I8UBLwh2mFKWzVB0HMeViUgcKDR\nSBI6\r\n=lHbB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"5f7ec008e407b554ee69480eb740435add0c1134","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.22+5f7ec008","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.22_1620760113417_0.4796929704150159","host":"s3://npm-registry-packages"}},"0.19.1-alpha.23":{"name":"@opentelemetry/node","version":"0.19.1-alpha.23","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.23","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"138996742536081dda09836eb67d98aff9bf2106","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.23.tgz","fileCount":15,"integrity":"sha512-P6knlXoZ0/0VVMJAhB0DcDYryyHttt2jIPayGMIZJnVo5V6VOQoRBJX40/9ClW9UVA75wFozjkaoa04I4a8/XQ==","signatures":[{"sig":"MEQCIHJf/MSB976392/kB2vZKUTEo/TVZ6aAPvFFxXsCu+FuAiAfdscRqEA36LxNnfmlNjU5V0jc1WFS9aj8Zx4b2CPvww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmuVlCRA9TVsSAnZWagAA6cYP+wa620y99aqkjS/QKY2w\ngIxJSRVZqWlwq2ODwj0oAKhWkOU+m8kgZ0ri4G+aMGLuxCdmVxSWteffVKou\nt8kYDQANJnPVEqpprVChxnSd5IW41uRrtrp3mUO5O+qhNUW7Fh0dkW24mDEi\nRYC/z55+Vmq713nZYY3GLACMa16lvmU7NfFpkdvQ6DfNHvMoZJrywP5Q0qkk\nsR7j+0n8KhR23/1g2OKUzq3Wugulw+ClBEHE/oJwfiBOqnMi+0DbYJrRHuIQ\nGSrRVYuVw5/C8yP2cbHxA2ULd+PbIBl89u/lC0k+MHCrc0Pv3vCk9a+gbzO0\ntEa3VrCY2gk6oACDVYZq7c8hwIMpopY/rVaDfoCkbsQE5rJk+xOF4tAI+WFc\n0orMjN6to6AXkfZG9VBXLCKrpbwggpu21Mr/SEP9nZHP//mR1g31JNo6jftA\nhROYhR2dbwuP7rQcPs6vhGYQ8rhtGHyB6d692GpD2NR/pR3mddCLqs46UoFv\n8F9O4h01sLsC5VSeNwC0KqVKoFdh/GYDY2CdN2TsGbOqBGhvzSdym6eXdApu\nRXvUm7NthJwqfwxcgtLVqWngVvOpri9Q+Lv6qL2RyRzFAV6IZZOxNPpF1REX\nvz9bYyNqfocL7kAygq+Bo7SU8CGwpRMCoRv8SIaI7jbDBQOcycxafUVq1hfM\nt0LK\r\n=Cz4L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"805c2e87283690142d3b1970130f1fc1da2b2a4d","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.23+805c2e87","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.23_1620764005153_0.49293501134559103","host":"s3://npm-registry-packages"}},"0.19.1-alpha.25":{"name":"@opentelemetry/node","version":"0.19.1-alpha.25","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.25","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"7708c43db995f54669238a96e69f8770097e2139","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.25.tgz","fileCount":15,"integrity":"sha512-n4uanJFAMc+0gtYWbk6MRwzD1xpqx3Smglb+R0grTG65JxPIF5in9MQRtn5I3xUs6xwCT9AbeD+/hi+riIMMIw==","signatures":[{"sig":"MEUCID3l9blP0fiKjQU84lrMlrk3Ky/5hgsfeLv8AFX/CjtoAiEA/fBNCkM9rsWp5rIPxJlm4hWLTvneoGjf2Ih3n5trfpI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm/ojCRA9TVsSAnZWagAAjqgP/3NF/ARR20219tGk2uUU\naqh0VpRqXa+jDFtSph3g7rZB1QG0rEGPduMqGgeMIGXfdgODAFA5bC+kuWRC\nppUOdH82post3wHycGeq657RgtRLRJ4Sm+xT0aBeQhbT2lhgqAqXH2sLw1/P\niklYTzT7Tkdx7bYi8Odrjw2DCOB2H7ZqBHqv/43TUImOe+J4T5sHxDvt/76W\nzAlx9peOK/OMRWdHNHdD6T+EfIanTBzcbFZ8KhtlFNcBf0p+Q9id6tGyWKS/\nKLt63rczIkCSriqDfk7AijF4OjS6A3mn6KEFJRXqCOEIUAzECJZdvSc+4s4M\nHr88AaCkcX6kcwhO/4/bPGHp4ORHlcbzoKmU3FF3o3+aB5RqL8WSuWj3M6NP\nyHWHgyvK4rQtZCVeRXETw4gRmRaLvDVuBx4eK1zuxL8oUbh7ie9asOA1fAYz\nzhRG4D7N+FMzYlScNrpAIw5AhcGmwoRBde3ODrVYXBao1bRbfSgo3/YvMzXc\nQJYJ7zsaniiR4Yd3FNdBwp9b2NvDn2sfmfImflc6lIo8EkLC4hqmeY2FNvgN\nawlqHEX3zJl3GmvM6JRelqQOADPgFfpNj9DWmOOHrYmOSAAAOnyfUmm8tA5u\nAcsyK+Z8sKEEh7pbo+v4LSKNwKWfgf4/uBBDcF6P4KtSb593mRpUAE5zy2HJ\nY0p5\r\n=RIpZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"02239b52557fe5b4c5ae6eba742340428b856492","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.25+02239b52","@opentelemetry/tracing":"^0.19.1-alpha.25+02239b52","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.25+02239b52","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.25+02239b52","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.25_1620834850975_0.6833181302326357","host":"s3://npm-registry-packages"}},"0.19.1-alpha.26":{"name":"@opentelemetry/node","version":"0.19.1-alpha.26","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.26","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"3e352e91c6ba135a694ef5a18697943213249fa5","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.26.tgz","fileCount":15,"integrity":"sha512-sWhx8qnCRUw9EZW87FJ5DZVQ+OmUyUKVwNR4TaJG13sXUCe197HsUuwfLLQA9JybxLlLu8gb7fpiDWnyM5Wn2g==","signatures":[{"sig":"MEUCICqFuPMqLS6mY1EFJcmqhFsOzXYvcaZdx23lfageDCrPAiEArmxFvBDSzUeMLXih1G4k6PwVq1PGHVhaaB1EIJmwp+Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm/0sCRA9TVsSAnZWagAAv5kP/14UQwtV7oeLnt78Duug\ncMFdOGBnRcaK5p9AnAwjC6w3SaVWU5WGID6LiiimFm6FHBL2EyP82SxJgDUA\n8AqBeW0wo/HIRHh/3X/qpMzuQlnTNAXQK/azEZjEF7pThf2ncy8BDGf8LIIF\nMMGWnXylzgGa2XAf6chhkSqjGDbOvAvwh96QCrlVk5xFLBenslWgFiSMtsaj\nDTXrq+CZxQ4VdmPo4EIHaUIqLw1Jpu07Ajj8/RcNGm/9AJT4XW7H6bCGZ9H8\nwqu9tmaAjsOBUyIWnw5g7hLf5vbv4TT1m0VmZLJ9hKbKmUU1IUvq6xtRTG5m\n+Rs7X+vf+oOXa1v2bWuxlO0cRtRBjkeVRoHBY/MkeSde6nXAOF3Ekmk63wfW\noR8pdlqjIcbl5CAOaZmpn58MGRGSMD4akcT4HUEJNLBWydXqHI5kG5LESqqB\nN/ZHBTeDWw/xOnonnVaEXzCLSO3ec/glaIwdVmu0QJMq9FCDa8A3jPdDEfmL\nvrFNd82vloUeyCaW4C1VR6HEsd9iZfKiBna8QmROgEUUKW3sFY04xMGrdwHW\nE8k3J6nQWWuB8MBDTpZ6sGG9KunWMJVdNnq3u2Tft9qOTfTbpKDSXwOCfoOP\no/Ts1mWtOXxrLkSq3nlWHufh7l8+rN2lQHWSlIHVqC49tTDfO3NDdep4yCF5\ni2wz\r\n=JViv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"1758fa6e84333c9c43cc468c5e99dd3646f7e3c7","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.26+1758fa6e","@opentelemetry/tracing":"^0.19.1-alpha.26+1758fa6e","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.26+1758fa6e","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.26+1758fa6e","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.26_1620835627794_0.13995915749566112","host":"s3://npm-registry-packages"}},"0.19.1-alpha.27":{"name":"@opentelemetry/node","version":"0.19.1-alpha.27","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.27","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"6d5e262a8ddf0933b9ae5d11c66f758134ba01d9","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.27.tgz","fileCount":15,"integrity":"sha512-6ssUIMa6+VXKdtYpuy2y0PSjUrEpgDG1/+2lT9ZoQofEJstvR+8T3MnnSsh+m361fhGctjIV0gQoF7MIsV9ZzQ==","signatures":[{"sig":"MEUCICtTFrPmJKsIHULMc7fgEgmAPwe/kkrgd4CDy9E1RvWbAiEA2PAhHRh91tBv/LA+gLoJuoNZ13hNMlEt25C8avwHHMU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnPj2CRA9TVsSAnZWagAAnckP/1QHYLWduw2EIAEDNH1n\na07oWlXM4JdpCtEsHyZN6W9FblXAgHvjMZ4L6GW0Wx+BN5zUISMua/X8xlbn\nbee78lsHfFGHhLhmm8RQyea9OBilCITG190SeIwbSUvaLZEfFCAKsgGMHRbv\ncj5BUI5vyB3gYouXpBF5FAGCzI894Ib4XyaiT4sMtbDn5h3A0uXiVywS0rqj\nK9H1hAeHp8iTfS8sD97qzyN+P93QKpitCp4J4SvWRICIigoJ0uMWtvCq4dqu\n3anhCULWkJ8BjlWS42wIV6rX0mu++uaqp6WFzwkbCgSI7bloZAlKphCMfAv8\nAB2hMzDtlKwVqAyCkDuAxqyKgAODk9rwxVijebqfaS5jxsltTOMjT2tnf1YY\nQao5Y7XdkdxU8YnHGB6W/Oi7rUvFS50R9huJdOY3pBjSfwy/fC6qaaZa4E/U\ndwH0IZMwDLK+K3+qJicVcTVkW74Ub/1J8vH6To3QZDg0KIPlKYF0PTgEf1tK\npeyWvt7y8SB6b/Yn80spqp9gfhj5MP8zTuSM+mvkDugeZoHDIHJb44ABY2nq\nHv//uce2Z8cZWIdGDUBJzARF/zdWdgqIAj3y1bdbDkaTDJAmKenOm1gU6CRz\np1k9lI7y/NwZzNV/S+e/ZYa04G+im2/fHu/2X+QAYgWe4jW1v+dzlfaJW/99\ncG0O\r\n=sBAo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"68852780eb2b65cc4bf492f020ad48a9af96a4e9","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.27+68852780","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.27_1620900086446_0.204114912408619","host":"s3://npm-registry-packages"}},"0.19.1-alpha.28":{"name":"@opentelemetry/node","version":"0.19.1-alpha.28","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.28","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"a83963646d3c8c92a4b95c53aa8706b15db60aba","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.28.tgz","fileCount":15,"integrity":"sha512-uxVPtQInYkm+kBAEokQSSxwU403ujX2cS5uz+9l/Y9vI2nZLXYtXB/fl8ql44Z7HTNRbYLQ/1+3dSBI4U7PpTg==","signatures":[{"sig":"MEYCIQCX0bQCdFS702i8ZwK4LCWRH6bFNCxkXNn7tioNrW9b8AIhAKc4eX4I8YMtx/6dmm3lHPVOthbES7wRR7gNnl3ZptgZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnPxBCRA9TVsSAnZWagAAjN4P/1TGMr7kasqgIpPMvjhz\nzLBZ2cgC6W6mhmVjZkfbwT2modo/BYzdpAPkWNxcYzfZuLY0/o18WzG9iGrH\nRqM3tgHufZg+tkApe/HlluyXMvguOQQSuRleZ76gxhJmvpte5F39tSjoiGbZ\nwN0I1jupk7YCDvU3oRxLoq4JTnniUV2ogQRGZpt/2oFF6MrfvBvoSbH20KZL\nTAEV/os+CxhXxIcbMwW7KPbmH/JsIrwUt9yg9AYmW09Tu6tXCTveWZNEoHio\nGQRsQq2FioitSKQxLbeCJDLbQLqVkMBFTeko+A4z8mmJrD7AN6xXsL/TRDi4\nWHyQSpSwsF+5+Z4wldkwrcMgPUzKlMAM9NqUo4G6Ecy0kEBwrJBGYhbV0h4o\nunpii1SxuQumEZ/4A7kssTauQ9Hr1L92U2/CRYo8ZAzNW79JnLsuuenPm4Cj\nel5lmaj59NKKAworPJN56zeCjbZJ4Vs2hpWAdE72vmD2FsdETHJzRc+plEUD\nPFS2MS3E1eE1o+r9Zt8vk5pkCOpqLTtSnAKz/XEbLG3qbrx3CvjMoZLhZ8V5\n5RV8Lmv5pYV1l4HSwYOZ6bj9mxZYkaAJk+7n20Ham0aytV8pByI4/HQjbZqm\ndJZbDr/mXoeE3oxKuCIx4kzdVeN009onoqnznjgP7VrmCiAhsL49HlbYFKIZ\n7Vf0\r\n=H9o/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"3f82ff411c6cb26a5aa40ef30a788e6b03255242","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.28+3f82ff41","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.28_1620900928690_0.20087253936124094","host":"s3://npm-registry-packages"}},"0.19.1-alpha.29":{"name":"@opentelemetry/node","version":"0.19.1-alpha.29","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.29","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c2b1d943e4598c3948eeaae7ac752aaf0a734e05","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.29.tgz","fileCount":15,"integrity":"sha512-t3FNCNmwm9A7KJTwjRFt4xBiCqE4/Mp+t5TqeTfkxunaxaL53u4Yf8+kZkmFvf0JrFaRKQZN2ks76SLui5u4EA==","signatures":[{"sig":"MEUCIBU4uRh+qujyMokAP8lJk5my3fGC6DevG3DYLpbbHmGpAiEA0F/BnR6PRg9SLO6FoJjFMsv1c5idMTk1dNVWtyXeumk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnP5hCRA9TVsSAnZWagAA0cEP/1PXNQDTdC6PgRPMR2oJ\nVf/QB9e6xntDdFS2rOwiI8jr2EZ0dleIvq/7f9Y4dk6wCEB/vbJ0CaccCYo+\nP7lTWC03Hi7HRsl1rFnsPRK88C/3AeVWsiZVzYj5+IDYLfIeKXDlhQIdTNOL\nUvhGDSFnPRWpqWPFVUl8nx7M//iadF4MuDRbBxY7RQyPeRGNz03g3476fJ7u\nWNfJqSUbCJSWLpK3tcg83mSbyxxMqmBy/1rHgX+dmN8DNuPFVfv3zzQBUv15\nEQguel9PNemv9Of56ZeYrzBS0cqSHLGF+o5frUgbwTeUXIPxYx9l8+g+jWgN\ntLwV6hQAlOqpDsX8txXg2OY7nVJd2Ip8+PZymvkaud9movSB6pIhLgR9QOSu\naEIQKhGIGJbiGUjX/lW1Szf5OPZXHP9ja7DcPopR+g6/jroblHHRNWQyMgiC\nDiewDMy/1hs5gwxPDY7E6ti7a7APkI9CrRIWwrVNSGbdqbYzVyPFm/nIMSry\n/tIwXfBAsyyPqJN2wrRUi5eoHk4lsrgfs+FjcRZqwTmozG2yBTnJI1PoauYm\nNi9DSt6iVI0VftHFB46HYDJB3CfLWyMDK5/HTGZHbiGDnCRJsRmCMHuJBrOo\n5VKGUIy2/aSt5Gg59GZe+10iU/oO7tTm+cvR1RhLwlpDlmtdSfmAirY64sER\nX7YY\r\n=9slR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"e379e59c1a2490053be16d0ca8aeb1c99d786a4c","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.29+e379e59c","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"gts":"3.1.0","nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.29_1620901472832_0.14696953560490034","host":"s3://npm-registry-packages"}},"0.19.1-alpha.31":{"name":"@opentelemetry/node","version":"0.19.1-alpha.31","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.31","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"b114135c83414c5de6c168317b5d80fc581c60e9","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.31.tgz","fileCount":15,"integrity":"sha512-r8IJrWx+kARkwOKlaZirRgluFxw3MfrAEwNm26pZDdowNU6/hx04UNksnxlkYnc488TBQS5s065FX/+EOKULiw==","signatures":[{"sig":"MEYCIQDFlB70DW92CtYmnZAU9taQEhr/+1f0cCWALmBHkZyuvgIhAOUykuAwg+w8gOc+UCIf7JnBxZ1s+WhisQGu2rt5Kd1/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26969,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpVPWCRA9TVsSAnZWagAApo0QAJ5S6VnWckhY5zwwZiRE\nlzAKKhHfwp+42ZcG/E7R2kIkiPgkW1fuecTuA2WGM8J5BWI9lvSvCdv2NjFY\nXoiJTt2RHslTmuoeV4gHIWTgFYirtyRy7wVdTAqGx/UkCesKLeZNodNR0Sv5\nhjwtYPpt1MVSKcLFwZZ1h0w3uA24j0uj2PPNUSaKGundkbRqqaNrBgJihKYl\nWxLV/EYFkE0OG/sVt2DfWbKg5KAZsEp2vlKuXvWzEf1Gw75tjwISbVuJJaq9\nfH/1aOTurDnPJaIcpueQjuYf0mIB1XiyGZe7oaDZsSug46/n8Xm+X4roUcqj\nnmesW82/2FOmk1vH1D+a9s5N1rn26BkpQjzlUoL/opGcdNpf2isewzUBJuPo\nC+iEMfuXREdui/KbD4TjUzm9bb9zW84qexvOnBVvSkT4QYUv3chzFWjLGOiE\n1LcUzLBfJ0PqkV5zp2hYOt8K1K3fwyC/J8yQAsay/4+jLnzC8GZ8OavHTRSR\npLw4a1EpqZvFYSig8excCvjn3CTbvjH+6emRVPVMPT5MpcJ1E3TvOCkSYdV7\n3yTs6PYdF5XvGSPlpXc1xtVTKDgO/Rg8I1rrliLpIQkwRHJ1DyT8JYrZQuJL\nciyp6Fe4n99bdNSbb7MfQXKAPjUiTAlO8z6pkNbknz/R756ja9ekoCsexQzT\nXyXk\r\n=F6GN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"24adbd61062759f9d9d57420fd97e50f4d8c3b16","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.16.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.31+24adbd61","@opentelemetry/tracing":"^0.19.1-alpha.31+24adbd61","@opentelemetry/propagator-b3":"^0.19.1-alpha.31+24adbd61","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.31+24adbd61","@opentelemetry/context-async-hooks":"^0.19.1-alpha.31+24adbd61"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.31+24adbd61","@opentelemetry/semantic-conventions":"^0.19.1-alpha.31+24adbd61"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.31_1621447637868_0.7674944099702603","host":"s3://npm-registry-packages"}},"0.19.1-alpha.33":{"name":"@opentelemetry/node","version":"0.19.1-alpha.33","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.33","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c731d52ed8f7ff7fda9eeb20f383e58016ab49cd","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.33.tgz","fileCount":15,"integrity":"sha512-LXn63WxEbAoNp1zgrnilqU5FBJh2eT//Oq6gCAhRM2AB9OITjhYvO/A0cgGsrUFUiRnW6BUvabalguB58R/zyQ==","signatures":[{"sig":"MEUCIDeTY1yulrHuIJEM1hhxbMyRj/uP3lyT2qzqsqv9L7pWAiEAqbhfQnx336HbgZsV7GT5F+/kDjG2KNkGhmnZd5qOucU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgplIvCRA9TVsSAnZWagAAfgcP/ioUGvZdMotrr1GQq/ol\nNVuFZmqU/rHKUrAVHap1AxNn1krWatbCS9MOGZtClWqLvxb5K+vNYuEQfSiV\n/Ze0RfHjvO9FtU4BKMCx/5uVQpJx4hSR2RwXtz88MKp1uSV/HctdIJm251TU\nr9+DAEskUKcc3FbiIt77r0qXajenSLRkzNEYGl+8mW1+kmuM95NRKYgHlJdn\ncnRvxI/6wFYwPfYLtL8gYDU+QCdvMaQh/4QrhxWjQ1ZJRmIWc8pngMiEpUdi\nMMXN48xeF0jbvP67Hgnj7oDfjb7GymdzCGbvUfS7I3Po+F6FUAx0kygUp7Lg\nTK0M0ZzJMXair/V1b4NyH9uMGpwZfPfpbU2xusNUunchkfekvxDxpZkwGWLJ\nNIx7FLP4AIrQVV5AMBFjBVRjctcHThTwTKS2h4ovfIcbh6nzC8Y8/sJzgAqz\nwQOw2FTSF6dB/9Dt8Z0M67zBb535clZ3RLgUnvIp+Nc/WT2jbG6c8c0iXtRY\nEngfDCmOgvB1Y2isq0Mn6/mlDZYvulA3hjky29QO/92I+nwkL8FWULyECp10\nmYH/HBdoBAn/lCRpau8OCYaKossntJAXD0CS+SrqhSwC2uA8qmXpKNvaeMGM\ntclRQKZtedPDcTcF4vs2R6+qr55Na/7MRCASUz5UT8GznI7wY/Nwu7tse+p+\nZfMN\r\n=bS0Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"c85fbe6682b9a8fd52e4b99bdbb079833b04e845","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.33+c85fbe66","@opentelemetry/tracing":"^0.19.1-alpha.33+c85fbe66","@opentelemetry/propagator-b3":"^0.19.1-alpha.33+c85fbe66","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.33+c85fbe66","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/resources":"^0.19.1-alpha.33+c85fbe66","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.33_1621512750522_0.39672577654312713","host":"s3://npm-registry-packages"}},"0.19.1-alpha.41":{"name":"@opentelemetry/node","version":"0.19.1-alpha.41","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.41","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"72165ebe15f0e997402c076b3b9dbdb8dcc6174b","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.41.tgz","fileCount":15,"integrity":"sha512-unkhi7Sbik4m8OuBytGiiJKLpZwycRVGPq5SmcVFHp1oMY9GUkPnM6Crcy05JvYNaJ+9XxgWc8m0PIZ8L0lsHA==","signatures":[{"sig":"MEQCIDMCE4ykX99BH8EQ55fNIYNrR304imbgWHb1vidKPYq8AiAew1CmJXQTLx1+ZohmUg7qgTip09YYBBdXs+n9+YcANg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26853,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr90vCRA9TVsSAnZWagAAZf8QAIZmc/TWOXgth79syzbR\nSudQKcwso+5mYzzBINgVtmPQE4A/llsJT7S0sLETUSOP3cy3sGZbyCq5ui+o\nac778eItIOmDGwwP53t+3LHwLabkrmMlompeqs7jxgNUlSNTLt/Nx/VO6UoP\n5ctlar6TKWgD9WJF9PPxDt0cRNdnC0hZKVTUC3C1By64VMr1wD7UrBlXJkVr\nHf9q2rEDB37x+UeREAuuROTFYu1v3Raiu838A4/5VdNgdkg7YCoBLYCoK6eo\n8sJkrbK7P0EMpuuHAfYQqwKZQNdYdjADZMDuNHsxtDBxktP+Flj3lX120QBi\nla1MzNXSKBfAWs36y6Z4pX1mu/8RmP+FvYRAeqH/oznVxIoyZemiSlhLuICx\nb7rozaNGetlEBO7NU4/sJK1BJ02CY/2UFuNGm/76yjF1EPQ8+WSe6z4ABQNU\n6Dco8SwqiUv2U2wkXeDjzi6SUk87En0gsebvmRr6K6OeumYVfZu+82iGpAfu\nRNSdjpHfCn6XDUGsFtqlSxQ0SCHwWtb40gra+9sohav4SSIz8wpAM5jY0VLW\noof/6kWFv7UavO0DtK7rIo88sSsRFGQ1IKvymsQjxQKZMN/9iGorYXnYh14P\n0DopKcnWQILALvHzqUi3QIyk/GcPTRYWJ65aAWk3po3BNmDfOjzusjuEWreC\nuXEu\r\n=ye4b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"7fa4ff70d1aad5875cb14c6bff99c838228447bb","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.41+7fa4ff70","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.2.4","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.20.0","@opentelemetry/resources":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^0.20.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.41_1622138159039_0.4725318840297974","host":"s3://npm-registry-packages"}},"0.19.1-alpha.43":{"name":"@opentelemetry/node","version":"0.19.1-alpha.43","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.43","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"244af994d753c68a3d41adc77588eddc1a8189a6","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.43.tgz","fileCount":15,"integrity":"sha512-7srCs1HhLUd4P5W/sV9Sb53tVtX6zyNdbVreWR/62nw3li9ROWakawUlEbqZW8+Xt0IsySlVWv1Vg68ogn6nLw==","signatures":[{"sig":"MEYCIQDOba/1BakqlZGBbj/4uph1wxZbqI0dnRtewnvjWbAWpQIhAJBo0kmhTpuXH34Rwvj5qJMCs8ek5KWvodP7LYO67ZUG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26962,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgto6JCRA9TVsSAnZWagAAa58P/3YPLc5t2I4bwKHtzBEp\n0Y+GnNyUHlmsYX4VVWWANzuqVRTq29/TiDWUsQcETVQzBNSCe6rvDma1eMQ6\nIuXnlOkdU0pKsLAVrWaDqCxNYj/zMd5IY5Pjq665SmDfsNC8xyGkyBeIMLZ7\nir1eD7nmH2wEWTqjsDsJxg3Ft4Ii6f7jROyckRSppLSQo1E6qYVNnOfSMGwF\nHYa1oJ/uwusb3YeuIxymtyJklh+q+XHb7YVxPg2Ibbbwb3+ybnf/1K61FGFU\nGIbaQFjXt4HCpF67BX32jJgK26BYcpGH83Te2TBuH55y9l/yGcW84CBjCJHr\nNzaA9tvKisHw6t2NGDe6NlxqRxt0j1b2XWYzXLQrlpk2qnEc4q3Q/bDzVuly\n2y0uiqKN4j5Tz80liqOoAFQ/pPh6ilP5z/2ym14Hovptj78ljZEOzpD0xcIg\nH31c4sv+Oqy5vX4/mO46H4ZjrCDSGpexJ3wodx005cz2q37qGASMJJt+L4LW\nHltJNYds+ZGt0fgiy8ggjxL1jfiaYdo3R3KSK5e/KFermtieGnQ+e8wPU+LA\nR0Vw29Vz+RcSn/e85ZgoQPBbCjvuddTNJqBAJpubN/2KPqrDnggvvtZCCn4t\nITJyZXH4KUGPOkx0qn628BRsAGGQYrkPZytQDEI+ZO17b+BnV+ogrJvPAj++\ns64d\r\n=Sp/Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"d5517812b31d9206131bf1df4f8a3b5183ab07fb","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.1-alpha.43+d5517812","@opentelemetry/tracing":"^0.19.1-alpha.43+d5517812","@opentelemetry/propagator-b3":"^0.19.1-alpha.43+d5517812","@opentelemetry/propagator-jaeger":"^0.19.1-alpha.43+d5517812","@opentelemetry/context-async-hooks":"^0.19.1-alpha.43+d5517812"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.20.0","@opentelemetry/resources":"^0.19.1-alpha.43+d5517812","@opentelemetry/semantic-conventions":"^0.19.1-alpha.43+d5517812"},"peerDependencies":{"@opentelemetry/api":"^0.20.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.43_1622576777344_0.984667318857106","host":"s3://npm-registry-packages"}},"0.19.1-alpha.44":{"name":"@opentelemetry/node","version":"0.19.1-alpha.44","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.19.1-alpha.44","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"3ece3b2e9ce463dc5636f2dd740ab9b27a131bc1","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.19.1-alpha.44.tgz","fileCount":15,"integrity":"sha512-LuLXhvefRkTErBvmLleM9JWW2Ow8DsdlD1u7S9qlmD9V1vyAjK4Mczr4mg7GCetZY7XZ4QO9PUV2oTXgtTXc4Q==","signatures":[{"sig":"MEQCIAxcyw3xcdsgVtRp8gY+4Lh1hH7m/mM9WdBkqilWN2zzAiA97ghTiKg4ZpDMKG1W5fIOgDlIN2M4xdA9Qvc+OUQ2Tw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtpbBCRA9TVsSAnZWagAA368QAJhLkHdDUz2ugTSl6XDx\nMuxfI8GweGwhmMGTxETCMFtccc8kRk8s3JURE+MFhfJs/SxKCTL9ib+4VP6I\nJCGsIbf94DxcyiK3CToEVpJjf7vSfMdkBe+kZdkDjk5umGyj6H6AZ7eb/ChH\nkyLyG6/Qg4lFW4Xe7FMoIVevs94OWvTkwV6iBPUW0ZN9o6IjAfEtAUR9ff4y\n60Y/JXhT4XpKxTuLRN2FV6MJBAQbqhuRd/xGVlBI8Wp/E10lZ5xFT27q2j/i\nL7qWHL5KoJZtyjFybEqLIoWHdkBTFLAIS7mJmYa0lAMmeys7EHLmO5sH7dT7\nOsgwEBZRDBtO1z1PapqTtkE6B9HyitrDlVIiiSC4FG3OZ9gLyWTXDhtRf1xb\nwCB/RGX7omPGBi3zFJpKSlR+SYxvBxoy/ifNYvfeo86lmgc2zi5wd8F4gQsr\niuSWa2gMOw9aoxop8/0dtzpweKZx+i5S1NCGlcjwsWhBUtyOxAlXdmuwdCus\nizCSQkbiJiw6F9FKD6ABgn6H1lQFZnaygNMjD8PB2OBeGp9+0scS0bX1BV+K\nrc1OglOIHDII9lnRkjhjAAr9901IWE3L1Wbm+nT6Rm+ZevAXNWd0vxIxgYN+\nJoIo4nPb7PWsZJfRJCZEpv4vYyEoaKwB8H1jDtXMpZ+4jztqbVFT8V+iSXhF\nHMke\r\n=12EQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"aea89cf7a48395f3d403e1158122bc559b09e899","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.19.0","@opentelemetry/tracing":"^0.19.1-alpha.44+aea89cf7","@opentelemetry/propagator-b3":"^0.19.0","@opentelemetry/propagator-jaeger":"^0.19.0","@opentelemetry/context-async-hooks":"^0.19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.20.0","@opentelemetry/resources":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"peerDependencies":{"@opentelemetry/api":"^0.20.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.19.1-alpha.44_1622578880862_0.040503766892536985","host":"s3://npm-registry-packages"}},"0.20.1-alpha.49":{"name":"@opentelemetry/node","version":"0.20.1-alpha.49","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.20.1-alpha.49","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"71aad59708e34ee1d259eeaee1df06fda49416f3","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.20.1-alpha.49.tgz","fileCount":15,"integrity":"sha512-JLd8968njgu+iXpUbaINVjKmy5LJRlBaiTqSlGeAGQqgso2pnkQE0ScagXK4+wS+W1S3nCeYvzhqeQLYVMXs4w==","signatures":[{"sig":"MEUCIBNEN7iZ6KHaXuny45IpYAX6c8vuWd/wPybmRjMIqt8KAiEAvCV4h6adrBQGHcaMdEFDW4iDw69Pd99G71yZzYAeu3g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26962,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguQzyCRA9TVsSAnZWagAAuHAP+wSohp12Oo4QpxiFGWdQ\nDrti3tovyx3YZKjioOntcCOQ4dXMo3MUm3IwYoOYNOlvIw+0e26UYwAyone+\n3Shx/rrdekmUTOQFZNPgmULW/Ob82NzWgnqsXWHxoGg0t0abjzRmYWgyK3Vw\nII2tYeRgH58TCglYmfofoI5BG0ggToTyDxpxa0eDZZvOzasngwpQUQGe/Pfn\ns7y9uOjOizmwZ95umOZZrlRdOkUBlXuSM/oaLQJQ0jUFtnk3n65qRfavNSiJ\nID8hHyknkvGV5mxgc1RU2Fa9lh30BKM+PqjQd/lSJu5sX1IjNIxA3Xfl0bJQ\nnKMI5WrVrmT+bL4L8atp+8FEJ+9W1hoUF8bRw5ycwxBkWjPPE4oKaDron4L4\nIOjGPnkZbQaqYHsMGDoMoVlOX/vI5q8sj54kYSRI5hiLPmG4RaYC/+X/nXrL\nGoSC3VtogqOfqnT4+pOhkKDJQPsYSqq3+TtMxiqeSFp3VXSmzRhdpMwbO7cE\nR58mEHl0QKGj4YKPpq+QHqL5FGrPsZtaxwwNknjKAl1iyxw54KhYjMgxAp/w\nt0fX5P6uhbWoGu9qiVPk1mdvvSlYNRZe1f6SQdnRPBz/M6Q7ZU2398ikQsN4\nVXitXN8TEtU47X7le5kb7s7MO8vd/qdXW8MKFsYONPnm997vD5daeFt86teS\nShat\r\n=/dC2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"f79aef422b53f1314cb0b031651875658fc17008","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.20.1-alpha.49+f79aef42","@opentelemetry/tracing":"^0.20.1-alpha.49+f79aef42","@opentelemetry/propagator-b3":"^0.20.1-alpha.49+f79aef42","@opentelemetry/propagator-jaeger":"^0.20.1-alpha.49+f79aef42","@opentelemetry/context-async-hooks":"^0.20.1-alpha.49+f79aef42"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.20.0","@opentelemetry/resources":"^0.20.1-alpha.49+f79aef42","@opentelemetry/semantic-conventions":"^0.20.1-alpha.49+f79aef42"},"peerDependencies":{"@opentelemetry/api":"^0.20.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.20.1-alpha.49_1622740210721_0.9738864409093317","host":"s3://npm-registry-packages"}},"0.20.0":{"name":"@opentelemetry/node","version":"0.20.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.20.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"7d4594deb87f0c0133d4b97b78a5678a6f8554cf","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.20.0.tgz","fileCount":15,"integrity":"sha512-MVwnH/AoHQTz1jOhJTYXoAoQD4CA/3L7QQkiiA93f6QGaWKIHjI/+3fUtA/GCfPR9Kf0sItQ/aag8KtCJClPCw==","signatures":[{"sig":"MEUCIFQ+1sbc1unAj4Ze03fG+z4TIZWA5pMk927FeJaxN5q3AiEA/XUEEjPSDmY/tWAML4AaojckmyL+Pnr0YWsj3zRJng4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguR9cCRA9TVsSAnZWagAAu9IP/j7auwPJGX5flMPVoQTZ\nw3HajxiPlSm9kRfTqIrNJLB1VycJmoYgC+e0k2Yc/OAnsYMu1nDl/B9B5I+u\noehE/Y6XTBGcixxEXveiPbu3afji/yoRzIUO/lakvIWj4Jht/D2d0RIgtfD6\n7WXAXDqdfeiiVnjqNg1LHGDACJky/k1pxEYUIwInRccReJrtvg4abCGtkF62\nA/UocaMoGeLJ9J9RXUUwTmCSMtrdvhyoi6hT6ZgcBUwZpsA2xNnuBprbGsEu\n8/Ms2QoHggLWP8F3RnDjzsRjaxxbl2x8rAzPPGyD0fubAPoIXqlekZyn9jlL\ntbA+dHN2xT/vaoNZIjynYerZ2zV23LmgLpuH6qNtLbr0ZiKFa4/t3hCEilL/\nNSMTgSgZbqRfjATMvOSVp/IUswqWjkIu0PIeu+t9Gnj10jN/lsVGiYqZECnm\nBqkoo2Bab9DbhS214vcVhpaTx1sj7ffn8HhGhOTW5vLi8O1ke4aEGZ7i5gxS\nBBIJt0aCzHoElN7tYlSp56ed8h9mf0iAKjoiaF6X0JdXdnZwDICpqVa9FndP\n9eyFwd6mfZVjR7lCzhJZhOEN5pVcjfJwTBVPzx0LB6AuVeb1wsIxaLcxFeli\neiqOKTF7IRqkEzRXBqZC+B+b1sNmg4lQ3rS6bCniWU/5QJvTqNC0RCLRdTy4\nHHi7\r\n=jblN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"f79aef422b53f1314cb0b031651875658fc17008","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"0.20.0","@opentelemetry/tracing":"0.20.0","@opentelemetry/propagator-b3":"0.20.0","@opentelemetry/propagator-jaeger":"0.20.0","@opentelemetry/context-async-hooks":"0.20.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.20.0","@opentelemetry/resources":"0.20.0","@opentelemetry/semantic-conventions":"0.20.0"},"peerDependencies":{"@opentelemetry/api":"^0.20.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.20.0_1622744924092_0.7256763812769298","host":"s3://npm-registry-packages"}},"0.20.1-alpha.3":{"name":"@opentelemetry/node","version":"0.20.1-alpha.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.20.1-alpha.3","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"434df2e1b8eea848503313ddf9db1014d35cdf76","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.20.1-alpha.3.tgz","fileCount":15,"integrity":"sha512-oKU62CpczAyoyV7lqFsuH18z6j/gMk9DmdyiCWZaIiVR9xS9aF0oJ3tiUra3n0Wf224T/XG+shO2IbwtfuuTNQ==","signatures":[{"sig":"MEUCIQDGZC49A2k28G7ehswEM5o/Agf+ac9yMH5dYkHGNGriYQIgP9JtGPIFgNCU0ySZbGy91Aqk7KOVRIxuqGBdj3o+hWY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26937,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguzXhCRA9TVsSAnZWagAAIRYP/RF/YO2T0fk9ecF8vmhn\ndzy04oqujYKK/8DGLLeZlx6stY/hMd8UYGGF6uhmVJV49d50unCgqOoYfUVO\nWe8F7C23eDnvt1WIERnFVj69BBf+eaG0qW4kLhcNJ9ZjDwS5GIm72WtEwpQe\niSdhPIHZ16fd8Mj+Y56fbWrrwedEpYT/MT14GXApDW0dTJ2dODZByQ2suMvg\nYn/Q7WkEYzOHv/vQdEH5qTjM+ah/vTQCAh/yLVPTOytCDCZ3jX0tp1ZHp57R\n/3yvGi9EZ55Jm1C+fM3zsl026KCHng7lYhXDXPBDW/BElfRz+8Jyfk8P/9Jx\n9u6ysCFJBoNk5hk/YtIBj8VNS+QS9cJsUT4atIW6Q1RmHnWb6ef2QV7dd6yV\nXmy7scw6XbuRWXvAm/jtkYOeKv3JuBNaFbKnHqdavkPB5uWJ7Ax7k4PbwNvB\nq/WJ3s5EZ8hhuHGbSXSqgesF+ZPddb9aYrgT9hXE8eL1BZt2cLQomVBNZnSG\n9LJkJWdWrdxAzgM5xkiCx5DBpEh8EGWz98hmpoj955bDC43Mg464Fm2BG9+u\nqkI8ri5a+UwJwj9HZGbLJT1v9M0DfT9LcfoOKYixK1ZqPEa8S24qs+Axq5yf\nRmBQNoShDiWrj3J9KbnEKL2AaaLqUVKSy+Xq+cJ7ZKyz/mhNPKnTA/k/nS+f\noqK9\r\n=VeWg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"d4df2f7ebaaaf433bd84b568c482e2788103ab71","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.20.1-alpha.3+d4df2f7e","@opentelemetry/tracing":"^0.20.1-alpha.3+d4df2f7e","@opentelemetry/propagator-b3":"^0.20.1-alpha.3+d4df2f7e","@opentelemetry/propagator-jaeger":"^0.20.1-alpha.3+d4df2f7e","@opentelemetry/context-async-hooks":"^0.20.1-alpha.3+d4df2f7e"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.1","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.21.0","@opentelemetry/resources":"^0.20.1-alpha.3+d4df2f7e","@opentelemetry/semantic-conventions":"^0.20.0"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.20.1-alpha.3_1622881761637_0.9922053578208976","host":"s3://npm-registry-packages"}},"0.20.1-alpha.4":{"name":"@opentelemetry/node","version":"0.20.1-alpha.4","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.20.1-alpha.4","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"0e1c37bd348f42e8cf1ca41de604929093dab8c2","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.20.1-alpha.4.tgz","fileCount":15,"integrity":"sha512-OiBMgVl54eo9Kv21Bfwvk4Cp1wV3CCneEVL4zuxMeLdSKIjjQK/yeCAKoVwvxk9zow4m68k0sa8i6sHI63VyLw==","signatures":[{"sig":"MEYCIQCB/Pt4T+UYj0nu6XrPor1mwBRIX/8SCfajPsWxToj2PQIhAJnkxxlxEen6KEHjCIQoWyG502OBJll1LU/acCEpn5qo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26954,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgv3BtCRA9TVsSAnZWagAAMvMQAI8voq0S2PtoKNat15+o\nB0ydfHHGp9KwRDGT4jGCEbq9gWiUGB91kFBVwnk0FPk10Ysv61cJq010sra3\nFgdSYWwohCMB5M7LgYAD1KIiRKQZC5tQWP9vrYG9FyfnM+gMRbX8wZD005rM\ntkq2Tw811OFEvbBIyryZXaz+8GawvG1wF/PmKJyP2+Om6BeswQrXr2fk9URl\nY32kYD2jPgBLzMsOAh/TvUprIeHXgpLzmGxj0Um1aNOQQ7NpK7z4V0tnS728\nMMMrTIjD5tANGvUmfPwnTVTBlJxFIvU1X7CNLdI97mxEW8H9VZaTdjg8T/8I\nghwHzRAzuieciQOduFLZhALb/Kx3/T3KprcKip8LHOOJYmQiPHF2+6myxQ4L\nRJG9ded8qTNfqcKsXNopW48GQKn7h0tqvgCSdY6DT81jeiO8c+aiQb7c8u+O\nf7pF1OrD7qjPsDlmOMepfNWam/YHdA4MfR8WUbuO8oSoUoshdtK3i/OdZZDe\n3Uru16FCq3X3sczysW5H9xe0y/nwCqFhxCJp5VdokFV+K97IZ4JFmpO5VS+h\n6jStpgYfDN2b172VfNVX4y1iL1UCcCXgM1TEPg6Vo7Z2ghUpYMaXwAHE2AmY\napSJyaC3PiCPQ+sNY8Wswc5TrNyRuYuv2WwKeWetM4mzmDDuuK0BVjx8WgUz\nfGpv\r\n=YvRo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"3d98420cf530968e6a85bc4b9c2b1bb78b730b3c","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.20.1-alpha.4+3d98420c","@opentelemetry/tracing":"^0.20.1-alpha.4+3d98420c","@opentelemetry/propagator-b3":"^0.20.1-alpha.4+3d98420c","@opentelemetry/propagator-jaeger":"^0.20.1-alpha.4+3d98420c","@opentelemetry/context-async-hooks":"^0.20.1-alpha.4+3d98420c"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.21.0","@opentelemetry/resources":"^0.20.1-alpha.4+3d98420c","@opentelemetry/semantic-conventions":"^0.20.1-alpha.4+3d98420c"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.20.1-alpha.4_1623158893443_0.8820615721319152","host":"s3://npm-registry-packages"}},"0.21.1-alpha.7":{"name":"@opentelemetry/node","version":"0.21.1-alpha.7","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.21.1-alpha.7","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"d2e7d9fec4dc212edfb430983034692bbb624664","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.21.1-alpha.7.tgz","fileCount":15,"integrity":"sha512-chSC4p7t7kuKYWeIu5uy6P8xzD+L7UuZkt7LcMLR54swV1+fVXNhnSeTPucpd0FFnM71OtnhygXFJrC4J0EJeg==","signatures":[{"sig":"MEYCIQD3Bxkx9IRFRxp7nBWg1M+cpS/jg0fMCZ4PDsJm9Ws8ogIhAIo8h05zdMUi/elI3dw8AVXK9lCE/VSf4pwFFaZSOEZB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26954,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwktCCRA9TVsSAnZWagAA5X4P/iRCmyWG6GAUD2/Sl2Iw\nUXxeGrlYwObaSheoQWPbUVKZzaiwVe6AE5vMOhtrxH52TiBq26H5Yjb1pxRJ\ndMqvQhkYcFH3EzwVckyAyZxDVG9waXik1xdJppQtXkXj8zmw2Ss2+cTPV7tn\n8NiMisGqGlEPMT8jcvHFrmNqpZhYEUEnDDU4XLQ9ONl2PbMTBJUWR8IHtdTg\nVBqfxjQ2AlRXzB8qCp2bCQLPrvF3W8UoIporNye17g4KfGcwJunDq7ERJ/Mu\nsuNxCI5mzFzdwrPZPr44C2dUpJddGcZuyyGD+WC4Wu5/Y4CNoZ0OAr8ja9Nq\nUWXssfuP3ynUsWwFNBdd2WZBM8h9mDvhPGhr5019JEgyOiC1zC7oe3DV6Z23\nbBsjaUdV64kTtfnJJjFbR6C2AXFlBys30mta3G+ZOJ3hFPrr4xffshgxPp0b\nJg9dJTTKVhsEjckLr79CbJTt+K7eeAcPGkYXpEPEi6iZMGsEYizXltjvq0z+\nLwhFG3WfJ8pEV6uKr70jG4t12B/EuoE5+uYzNqRR01AqcF0ddbAqE90pan46\nPNlLCsbHo+avOQ59Jpq1QIEj2jCWn4MoeYKx9pR0VOmRRAnKRvy0HZbtEUhS\nZLRxsQWzdc/kvaVwNUQj7T/bRmlh9c8MbIkCwJ+owkB+EPtuCiSf2MVwWTGi\ngcFZ\r\n=3um9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"7750282034ee58bdd257446c2970f01307d7522a","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.21.1-alpha.7+77502820","@opentelemetry/tracing":"^0.21.1-alpha.7+77502820","@opentelemetry/propagator-b3":"^0.21.1-alpha.7+77502820","@opentelemetry/propagator-jaeger":"^0.21.1-alpha.7+77502820","@opentelemetry/context-async-hooks":"^0.21.1-alpha.7+77502820"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.21.0","@opentelemetry/resources":"^0.21.1-alpha.7+77502820","@opentelemetry/semantic-conventions":"^0.21.1-alpha.7+77502820"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.21.1-alpha.7_1623345985974_0.6482886998436783","host":"s3://npm-registry-packages"}},"0.21.0":{"name":"@opentelemetry/node","version":"0.21.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.21.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"29dfc4e908aa4216f90d1bfa96aeea67da7e4f79","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.21.0.tgz","fileCount":15,"integrity":"sha512-PCA3pFmzTMN3iIlZ6Bz2BgPe8jEIdKRK7WyjfT9qqrLrHZ/dXNmX4MIz2IKTyQtS6tGt2jayD0IpWsVFctPOIA==","signatures":[{"sig":"MEYCIQDEv1Y8jN2V3jUbi0Dd4AErDdvUs/9mENCYLCEa36JVaAIhAJ11Hctu21zobHptD1MGlM2L2QKsxFWXsFv2WRwhZI7a","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwlolCRA9TVsSAnZWagAA7rMQAKGcZ3WjkaX+Z+Ep/JXj\neYPPa0FcC6hx0c7nv1etipJypLZIWmBBLejJUc4+XvyUXnExc4gJ0hpJioAf\noTRlHn6MiAMVGHaF6YOuGHKZuOFFAyUYVSSoUkKpZx9fPyX0c3lJexX+lFsk\naX+lYQjz1hAht1io57+cl6U+kRKhCZ+dPbWrmsUvL5duxVE8vTpJYzvLA7ck\nnljP1fgVfQm95YVNa37nbZmIZDQX0A6Ug09Kh12LAjhYk9a7mldu+BIP/cfT\nWcT6KmClQLlGzbPTIul2xKYy/1lnu3b9J7gcax1MaZtVx8fGqdP6NelKIFdE\npe7ezR70TEdzrpGV4GQMZnmtIVD0MZ0tUfwb9a+wZeGRJ7invrb51OJ5U5tK\naB+lUP1Wloc02Mni/E2JBkAmKNyiYlk5XRk1MxZGV7mG/YAVPOq+OQAj32pc\n1zsZSZdpABfYFpukD78L8XQQFLOZfCe1Hy9HEy+UOGdKapmSdyrF1RkM9jwR\nqbIlyWMdo6g3g9eeRDFELS4d26vqdp+kBWSlRvfPeeaQbooP23UiP11gSl8U\nY5HajETeJbWKcI+Ei8WUdajqrsDKEI9MZeMPKqis/wqUwVKEO97Vu09clSB3\nVw6yLRbZTGUeX8fnw+wIAHw5fU7InsaA3mvw/LKr8ScKQzhi+9gc0ASE8w8d\nojFu\r\n=KLZ8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"7750282034ee58bdd257446c2970f01307d7522a","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"0.21.0","@opentelemetry/tracing":"0.21.0","@opentelemetry/propagator-b3":"0.21.0","@opentelemetry/propagator-jaeger":"0.21.0","@opentelemetry/context-async-hooks":"0.21.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^0.21.0","@opentelemetry/resources":"0.21.0","@opentelemetry/semantic-conventions":"0.21.0"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.21.0_1623349797562_0.8508464082565068","host":"s3://npm-registry-packages"}},"0.21.1-alpha.1":{"name":"@opentelemetry/node","version":"0.21.1-alpha.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.21.1-alpha.1","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"141d8aafd7fbe995530276722bfc04c84e696c87","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.21.1-alpha.1.tgz","fileCount":15,"integrity":"sha512-to5CQFExcVg+gpbVjjJ9b6BUg5Uy43fIAf9/pbzKMQhyerRWrNYs9AtgeO7PYomqETQktUGh1W9iltG1/3R2xg==","signatures":[{"sig":"MEUCIQDpPHD0mGd6Y9jD5sqtNyCWWFqVXaqB7ExA6jQ/LfBclgIgFBE5gLeohrIC5eM0WhPX1SGyX2fho5eXHmqbVszgAgk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxG9VCRA9TVsSAnZWagAA9W0P/jo0qxKTGF16u+h8CoRp\nXzAfq/4WcVoBpKX1rCvtaS1tfaLA8a2rT6hHTeR6WsB9U0uhsdnD4cxtpxvI\n3KZk434bIRM69EYX5kYRDMc+exMbocGF0D0olwD5y1Plc2WjuGGSo8igb1Jo\ncCizaQE1xA5unvGNt2130eQV6Yar1ZSzKJufd5jM1G32oTaloF4iSWNDyNwR\n3rDKPC6r8eE0iKpYGVoksNZuU4hUgoiYm4RqgfTTm1JJsNo7kgELsJwNsH1b\nxxHNc0c9SqtiuUePhyeP1sybplRW7HcOu3ljLj+MKFqnpQGoLJoKmSmMHkPx\n390hUS+AZaPMCB5igDMYMfJTe5WjPqgQNZb+MXfWbM5INL7wFbXyrJhkqHpK\njzV+G0jnvgiTQ3iANmtpdSaHxL3AxC49V9IpJ5EGVUEExBbjbTQiPW7u1n93\nNpxhrC+N4dGohDw9ymbs15bHlHeQS05ZHU8fl4hf5IdKLopkHX5d9tZNYrKY\nDyjse1g7SgrSgvDkgOlyZuONwaXKow9Wh4nPdj4RxngTf9UDOH+xnbXLL6CK\noe0ZtE3f//k+UCQWZUBOY85vEY/HWme+4mMEz45v+l9dnF1CVWFtyhpKEz4L\nM9e59/LP9XkZzCjLvwQ68CrKZEbDLd2dJmZgeaJunkQl5z91m/mtC0Qfaf8t\nuwOr\r\n=8KPM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"5b6573eeff537ab49d8d8d42217e5cc794f9ad70","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.21.1-alpha.1+5b6573ee","@opentelemetry/tracing":"^0.21.1-alpha.1+5b6573ee","@opentelemetry/propagator-b3":"^0.21.1-alpha.1+5b6573ee","@opentelemetry/propagator-jaeger":"^0.21.1-alpha.1+5b6573ee","@opentelemetry/context-async-hooks":"^0.21.1-alpha.1+5b6573ee"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.21.1-alpha.1+5b6573ee","@opentelemetry/semantic-conventions":"^0.21.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.21.1-alpha.1_1623486293616_0.6721493588640888","host":"s3://npm-registry-packages"}},"0.21.1-alpha.2":{"name":"@opentelemetry/node","version":"0.21.1-alpha.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.21.1-alpha.2","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"354cb5df59b196c37abab697660a55e918c17545","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.21.1-alpha.2.tgz","fileCount":15,"integrity":"sha512-NLrSa0GZgeVZMyN3sJNemJRrdD4Aznhy8nLPBUM2jUMR7zb6SdGwr+Zb9RiEjgTZFkGI4bRXTtVyUXpQdwD8Dw==","signatures":[{"sig":"MEUCIQCMW9NsBuZWvoUhEGqttTGkueWZNMog203IqZ1ZsVkMtAIgUvBe9F922MbfYDAGUnS1vVLWRuySOEXr617S+UpLsZ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxHHWCRA9TVsSAnZWagAAGCwQAIca3YmYmEi8ibiGZEUo\nnm5ogZ7b0lebwysTDi/8U/cPWzd5L9vG6EK225BdmfYKfrQzBdiIEz9YasiJ\nBmkQOVDAZUG+7IASl7wyO26fxjgyc5Y/2Nhs3hR5HgEiwwgb65j8B3zyPQEU\nBO/OCFFbhCpZpb2GgoG+YtD4eNQKl+1fsMnrH0jbzbEqblc5gPySOJQGdHFJ\nYRYGLZPEQkMqgGjhQUvvqy7Is48ft0cLYVFc4dymmTON9dXSP2ZbTA4oAZWa\n6tnRhSgjlnR3yNfgHvA9OXjJjPrY2NzMTapKyRskryGyX3bmdKf48vYuV/J0\nWhjUAoPvraJ+oUU77suUAwvFvgSOOCNL5ALyJWX4Au0dm1J5KkEocwBVakX+\nKLXck95hjmz1tCFB+YV5GXHgMu59I19yOSGdBhHkYI75qzJSvnjMtxOSmVzR\nAEDlvRJt4bcrHG0srQWvmjkMNk7SGDqjhye6GsiGxnE4b+BcKY5aBBEohvMu\nCxI3Jvz9AfsUDbZjL61CCmAgvztcTr+hR871jRzuvt05skzweQXvKJNEeIyr\ndFUcr0UChsQKuZVPMEAhn4mEw3VlUJ7krcSCU1yBs1Go81EKxlo9fXkrZ67S\nY0vo0xhFLetjztUXmryd6hp+n5Rsfj7KieBtla0X73xQ0em/ChVHWGsWjhwQ\ndG8i\r\n=p0Vl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"a3b77387012a5f53c193efdefcbf5f6272876e4d","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.21.1-alpha.2+a3b77387","@opentelemetry/tracing":"^0.21.1-alpha.2+a3b77387","@opentelemetry/propagator-b3":"^0.21.1-alpha.2+a3b77387","@opentelemetry/propagator-jaeger":"^0.21.1-alpha.2+a3b77387","@opentelemetry/context-async-hooks":"^0.21.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.21.1-alpha.2+a3b77387","@opentelemetry/semantic-conventions":"^0.21.1-alpha.2+a3b77387"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.21.1-alpha.2_1623486934610_0.8210151976343003","host":"s3://npm-registry-packages"}},"0.21.1-alpha.3":{"name":"@opentelemetry/node","version":"0.21.1-alpha.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.21.1-alpha.3","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"1d81a1f5cfcaad3f5274f7361ee31b066ea9ff57","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.21.1-alpha.3.tgz","fileCount":15,"integrity":"sha512-LfGAJ3madYWC60SSDjiRixzpq+oQuTK82U0ttBPSV7D0eZCS0rHNWlAaUMNsFw7mEdkfj7Zima6fIL4laYbrpg==","signatures":[{"sig":"MEUCIQDnT/HlUAQ4qS6FLAWic6BRnHojk3IzV+6O7wFXYSA1LgIgORnlqnGlVcSU3wrTRekYBJP6jliitUY+QB22ll7HRX8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26850,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyfWeCRA9TVsSAnZWagAA+GAP/1MEIMzLDPXbVFu6+TaH\nuUTjUXuWNTYttMKnQEdmZs6EGH6lMJr+dS39OSyK0cw5dM0k4rnCMtBAewEF\nj+F9uOuX3l9dLhPjzskSF4lFaSY7AfaObGOJj9G/KL5BIAZF4iRAJ/IBdzxP\nkvQ37/jVzBIwMwPN/xwKJXa8dQbg7BlRi2XWOr6q0ZzJZ0N9xHU7MJRjX5i7\nvdqSCN89884KE0rXOxHZA6vWzq/BVSNrsqFXw9PCiKInlNd6nqvm/kYPNr1m\nGYV1jRSEH0TD0fInIKxkFodLkl3oJjlmrROj1k03N9hCOPSItCz8VYAL7sz1\nxW06BBxBLoNIJFCHVVoJrOMEKXwihtYVI8S23z/HmsM7DiG7Q4kiJhBeDg1l\n1ZKk6bWs+qJ+B1HkHhOp6YCl9mH3YLf22Qu40GvlUvTsEIWURlMaxwL4h2YR\nGV2qhaUqmSZqJJPNxibh/viu0f+BKYLF1Z9xNBKxcczfpS0En9XX1QrB/kOv\nGnypBd81f/rj9zTcV3H9+wvtjown+BgEVxxAmp5TEgn1jXSo1AgN4M16RmcL\nNLUrQoLqL3y+9OgXu5+4TzVtr1O8H32RE2LYGtcjbLlIWApFZfwciXZomqbv\nmffq54rDVldGulCbUb8oku+gpXJq912hWOxm7slWZ/Q/ZpROIp0NmKKUj+7f\njifh\r\n=IEEv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"23db7f0ba383a3043964eb03be11c09df3f7453a","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.21.0","@opentelemetry/tracing":"^0.21.1-alpha.3+23db7f0b","@opentelemetry/propagator-b3":"^0.21.0","@opentelemetry/propagator-jaeger":"^0.21.0","@opentelemetry/context-async-hooks":"^0.21.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.21.0","@opentelemetry/semantic-conventions":"^0.21.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.21.1-alpha.3_1623848350022_0.7963112751242538","host":"s3://npm-registry-packages"}},"0.22.1-alpha.5":{"name":"@opentelemetry/node","version":"0.22.1-alpha.5","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.5","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"538289eaa48fde88ef99c9faf62fc00b5b22537d","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.5.tgz","fileCount":15,"integrity":"sha512-O3tCp3eN43fQkcg046JVyy13swyCcFOoxTOldyPGmPDeS36SnM0OKN8u3gWhhpn43BSpWYHbhS+CJKZj7qHFhQ==","signatures":[{"sig":"MEQCICc4mxLlWVOuM2T+d66969jHmqEmmVs5jLJlAoZbMphsAiB/VLzJLNyFBjvOqExWMvf8H9/VoG2vnq8N/ccIwmkwFA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26952,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgy4DdCRA9TVsSAnZWagAAt7sP/i576nxY3NUo/VXZwfRs\n1avBCor2PlgZhsiaF25HPCZcwodDK9pMbtuOHz2vXvepVlkWOKEPG10uQNmR\nkqZa4sJTzCHyIYQhPGXBGFZtenNDQBQtveuPU8das9d86OZWQiePn+B3Dybe\nUuizFjmongd8eZSxkMP+Oi57A25WSvhryQi2IopXrf97jZehyy5YM+QO0B2z\n2R33+gKosbHgFTo3jp80S8jxCvdwFgFsmeAFQZRGn82ZeAj6th+3eTLQW5zp\nXTtHJP/U0oPqe2ik88KgYcklAKwabJDeidXioH4JGkVmPQmTSn9fc/zFPMFl\nXnbWnhnTCJL8U8MWLBoWiSzDpIW4EXvG2NFfYs3t8lH/8BrOOqWBn/vDBF8M\ndU71PW8Lhohwyg2x7Xb5DoUC+RXuMAwmmLpTlcEnVibIE2VWMKObTNcFPKVR\nPpfjzj1ZOiuDBn5yvFUgbVGhj6pZvPLe9fq2MyxQkM+7WujC5NLME+A5DdmH\ndT0mnanhEtDC/Z8DOLgCB51mfltZ8/EuBkaFAzUvK2HzdUQJWpXePDx4azEC\nlLUT8IVoIc7K3uUapd2PzevhCp4XjvXChK26tqHLJRFa/EyB14U8Mu9cwN9T\nZaDwDJ51T/NYJbCDM/4qOe9M4o/h58Rm42MFg03jbrAYezm6bcvV9gu/8f2S\nscvs\r\n=G9FM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"7860344eca83449170bafd03fd288e1a3deebacf","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.1-alpha.5+7860344e","@opentelemetry/tracing":"^0.22.1-alpha.5+7860344e","@opentelemetry/propagator-b3":"^0.22.1-alpha.5+7860344e","@opentelemetry/propagator-jaeger":"^0.22.1-alpha.5+7860344e","@opentelemetry/context-async-hooks":"^0.22.1-alpha.5+7860344e"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.22.1-alpha.5+7860344e","@opentelemetry/semantic-conventions":"^0.22.1-alpha.5+7860344e"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.5_1623949533379_0.26518455809534003","host":"s3://npm-registry-packages"}},"0.22.0":{"name":"@opentelemetry/node","version":"0.22.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"94c4713762c99ef16f5b612e2eddf97ea0adfb3c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.0.tgz","fileCount":15,"integrity":"sha512-+HhGbDruQ7cwejVOIYyxRa28uosnG8W95NiQZ6qE8PXXPsDSyGeftAPbtYpGit0H2f5hrVcMlwmWHeAo9xkSLA==","signatures":[{"sig":"MEYCIQDgxLjuTfJ6lWC/Ssk1/PGSCE9tLA9Nhlv3iWdRK3ToRgIhAK9cNeM9VNZIS06tNulsgCSDr6i12gNHdcdGjNjGDi0C","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgy41WCRA9TVsSAnZWagAA/LAP/A/hg6vW+QBdmT5CH0Jk\nmGLn/aGIYLIA5gCmFQ+DJWLaG7An6NRn1P4I0/p6ScYZuStPcUOewrzokrBv\nLuOrInRQaNRxFCru9+qXwxuEkuj4KuC+Wj7gah9joAhhTii5aE68b553uS5u\nPHeBcP1oXCQoR6sF8EZxNsn4mPSJWnVuHcm5t3B5SYXF+jZxSruZh2NZT/vX\nMv43Q8OnXW2vT3ljHann1zKzt0qkeqYfZXrdLHYphUuixV+jk5uvocMvNrFv\nSGlKXZdekv3ipGUeygas2NflJHfr/Nh6CsbW82PEpvz8Iilwg+wXWxkj6CqH\nDSF7i1YskFGWFFQW8RYzzwwjalKu1Bc3jDgMV3W6Z1W5UnV3/DI6fGPqHkxq\nB/uFocRW66Lrw4bSp1ZaY7DbTJejE/n+S2ZCE3u+IdTQLIOGX6P9tBz2tFpO\nVpjpT4/sDtqQUkxHmgN3EuU6iZjtnCY4Pb+lvK8KZ+SJpZayougzaIWD2Y8Q\ndz9WfKI13ZdLRHiC3OtczWnl1HK6qlx9gkSka0zM6nS6uxef4fxMXG50UJe6\nZozpb8iUOcVn2hRnn8jBT21GLgwdE5yJTcQbVhat04jYGtaculcwGmQniKg3\nxQzcUe/YBiKOfRASRhfq4PZi2OSldsqkssgD1nDuxK2919CyyGiLp43Yg//h\ngCzD\r\n=nxxe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"7860344eca83449170bafd03fd288e1a3deebacf","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"0.22.0","@opentelemetry/tracing":"0.22.0","@opentelemetry/propagator-b3":"0.22.0","@opentelemetry/propagator-jaeger":"0.22.0","@opentelemetry/context-async-hooks":"0.22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"0.22.0","@opentelemetry/semantic-conventions":"0.22.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.0_1623952726067_0.4886024651512293","host":"s3://npm-registry-packages"}},"0.22.1-alpha.2":{"name":"@opentelemetry/node","version":"0.22.1-alpha.2","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.2","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"909aaf8019dcff105fbe122ef5eb3148bb9648f8","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.2.tgz","fileCount":15,"integrity":"sha512-xOUJB1g6lSVo5+9ei0nW7H1BPYml3gA5CJGMHLsnxTS+924NziPFjph/LgpqeP9c0+u9IU+4GsaXdWZKP4ZrqA==","signatures":[{"sig":"MEYCIQCQ6sGDKAyNUv3zAOv5SB1rmxt8Pgc376nGN252znUfsQIhAKgt6xfEgN9s51nxoJusH/y7YLWCtQ3oxI9xHWCxJqpM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26867,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg01gACRA9TVsSAnZWagAA05QP/jdF6KBWSgFh+el1alWq\ngKKlUmm99y/MpGK8EcGCIsRRKT/Giabwz3LAYeGHihe38M5GE/frBAyFyXVN\ne4TQuBqtieZH6dtFKSN6oFQF9qDJg0CDBphPsn79FgcvkY+SUtBkl0z7FFm1\nJaTPweImZUfVvc8SodKen4Xhf/q/9q9W8gysb7T+WBWNV6elsdQF6aFqphZg\nR9sUvld4TA20N6aewOwQ0picpVH1Zz7UqJ0Hc0SKXGR71po//tgMmGtoFdFn\n7Rt1csphyl873AYSLAV9bQDaKEh3PFj/KHfcQ2jtSb3J0DRZKHwklGdIjYEc\nvxlDf8F2zzDuydLT3XOWdgT6jM8fOT81nzy50k2AwGimwsvaqMTBQWf3OX0S\nxfS5ZIa25sfvWd0J9xpH7S8vaUtMA8EsCy2FdYNtkLMAJnZJ7SUpB8eu+pob\ng51SZDHqZACWHDdH/MOJUo/PmjBC/zTAhpGlKCYZek5Q7XHHqMTi6dmnjQx0\nvZpynezOcKWIKwYlKVxiwFLcGq81+D4YsRa44UaoP+oD3l/Q4TICnPIx6wFZ\n+T6lZJETX/Ec6jWPikntK70aTX7y4c2qwJBRM0anbJ2XWJrKMj7WTT7w0p+v\nXHqjNrs+wcuemEzm+CvQBVdPJ6gsJnZE+7FFr6U8OTmdtxDhrIpbj1AkrwdP\ntCxL\r\n=Y1vo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"bd2a005229ea7a0a64ca0ac7c2206ee40d19bfce","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.0","@opentelemetry/tracing":"^0.22.1-alpha.2+bd2a0052","@opentelemetry/propagator-b3":"^0.22.0","@opentelemetry/propagator-jaeger":"^0.22.0","@opentelemetry/context-async-hooks":"^0.22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.22.1-alpha.2+bd2a0052","@opentelemetry/semantic-conventions":"^0.22.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.2_1624463360257_0.6374370924554276","host":"s3://npm-registry-packages"}},"0.22.1-alpha.3":{"name":"@opentelemetry/node","version":"0.22.1-alpha.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.3","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c057a3c6cf5daa7bde42b28ee6f764c3269df50c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.3.tgz","fileCount":15,"integrity":"sha512-VU3hUkfXrTT1gR5fWoxRUAmo+dkmtPtN0/VyYo0s4naWaVSMfDA90EuhFcsqQEVEpCXvrCaKFtmc7zHBx/RKJg==","signatures":[{"sig":"MEQCIEf0rEjp2P6zNIS5xrADh15QQGp+wjd1V5B+vKkXFwzmAiAwSlpQtHd42TP2ZDcESny4Iab3gVsyfhQsMe+bz/EOQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg01u+CRA9TVsSAnZWagAAxC0P/1EgbDU8zgvmQn8csUF6\nHnoawHgUu6E4CI1XdIB9/WzA62JUtFMq8mEwn8ZvZbEYDvgoieakq8kVx4Y7\nhnxS3KGSxshR+QrU06dRkz/S4hurpPBPq8KA4xxe8jKiBlD6HHoig0PDDK6k\nOZGKwCXUDaDTbcPaR9HD9M9+9Ru48L+wVDJU0Z3W65Kl8w30ute4yp/xBmD4\n3b4F2u/CLaAZHwgJjw92HZFpp4dtEKNHnL5N4tmc6MrIts7pGinH76eFIwSR\nfJtpcU1axFy2Ez91zvyzSVKZQHKOXefyRO48eQsxuUZLU1WzjUejFlChp+nw\nkiou4v/hTLUwXZ6ZsJaR0r6+l4eeCEVCDoLASWcODxxDpTvBd2enKyrwc0u2\n0TIl2QofdyWMgSYAin+3BiWqkCBvqM8e1QJIrXNQFHHTu6n3JRzuPrEMwVMH\n5hRPCDp9rKL0zcwaMnSjwA7PKLFLJ+002Pg3k8ae/gQN55eHFBEptyEyMHwh\nv78ZzBo4Chq55J9KzWCfNrppmSPfCJCjj30qaKcwCyNqG8ifRbb2XZSN4G9c\nsWxMVAG4x/2ddKq+p7vwPwCDX6I/KACFZNoncl8vN5/WzoWDAYGN/xh1/TCd\ncTPUi4PASlBaU1xTFpnt/Kf4JaQTJUcxafgcSNbxb2VbHb6wRbYrGy1QWPNg\ng0SU\r\n=5s1p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"6fb4fd1712babdbb5de216c26e1283a94f7159ea","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.1-alpha.3+6fb4fd17","@opentelemetry/tracing":"^0.22.1-alpha.3+6fb4fd17","@opentelemetry/propagator-b3":"^0.22.1-alpha.3+6fb4fd17","@opentelemetry/propagator-jaeger":"^0.22.1-alpha.3+6fb4fd17","@opentelemetry/context-async-hooks":"^0.22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.22.1-alpha.3+6fb4fd17","@opentelemetry/semantic-conventions":"^0.22.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.3_1624464318385_0.5795358979129492","host":"s3://npm-registry-packages"}},"0.22.1-alpha.8":{"name":"@opentelemetry/node","version":"0.22.1-alpha.8","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.8","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"c171ebc2557ce15cdbff3da53e62779bd9bbc28c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.8.tgz","fileCount":15,"integrity":"sha512-PvB9AV6I7J8qINFHoJJQ7dZs20EtmiNFQSAyrXaxKBxfCaHqgXwPOK9IoPVe6fXxlPJOU1hdXvHN4I84Ej9V2w==","signatures":[{"sig":"MEUCIB/UuI6N4cdGFAPI9Bbt0jQtM31phGa/O2GNn0/WeyPiAiEAw+hOZY4fR+vLT9lM/jJPlBeycMNVcDCsrgnCMjUtqco=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26850,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3GgSCRA9TVsSAnZWagAAIfYP/Ao8nFX3oeocHdPzRjGC\naYR0TUA/yV3pmntQsRCyd0frS/YJ83xC4mzcMqdq8JGN+CVFoaVPpUzSmsj4\nhTaogBB5tTEAXLBx+bytePK3WLb0q/EqIpyhz2Lrq1L82qvtA20AR5pcTLDx\nDf28H0oef8KuK2rTA0boAkqQma+4kCUR5K6hbg6jfh5lTcGtsNKwBcgsUmOL\niesqr4rCf3iOgIvU31yO2Lu8qSvlGntixbDxHLUbV+sJo94fSWMq2oDO/9Wb\nJC3zW5O9vi7bCLvk++fKvb4ZEtbkqLcxRXft3gf0aG/Y3/HpVfyHm1fwL8u2\n/vKT1Ft69sh0O6tt9F2FHX6Uv9MUvzsH+5ieSd5F69XrJHd3oMlDgGGr7hyA\np6udyKYPez3Z/gMIppkfHrugdSb0xvNRNlf5sCheSFsxwKsidiJb/SxdAl+1\niF51cvY3caqFs0Lk2/4xQByrbO5jRJv596L2Giqse8W1bMz9c3ik2ItFHzIY\n5sbrcdNCe0DlM6qSR27a0lzGGRiZJBg7CjE5pFN3JcO8mB1ZcmfDY7zWxzEr\nuYuIDs8U5Isuj6a9MMZclFqAsAFnf7O2qSrFXhzk+gZE0t/jgAwVs1ElPd3r\n7NSxsk4SXWjvc6Kl3eNsy/cQNpHAu/XzYAuL/mdrUczXSjuRcKqN1NMc9ekI\n4Gmx\r\n=NvVl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"b442048818a67da3a59960cc4d28051c4da44155","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.0","@opentelemetry/tracing":"^0.22.0","@opentelemetry/propagator-b3":"^0.22.0","@opentelemetry/propagator-jaeger":"^0.22.0","@opentelemetry/context-async-hooks":"^0.22.1-alpha.8+b4420488"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.22.0","@opentelemetry/semantic-conventions":"^0.22.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.8_1625057297799_0.1678204592656194","host":"s3://npm-registry-packages"}},"0.22.1-alpha.9":{"name":"@opentelemetry/node","version":"0.22.1-alpha.9","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.9","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"62a38234a6fe8002c226da7f4eedd1f1ffd3b126","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.9.tgz","fileCount":15,"integrity":"sha512-xTTR2CAgtfDOCBPZ+DnjILnEGswkQbCJkxOI1aBjPhVdCIZK9OmmvCPO4sTHp8M37xHQprV6NyzE2T8dA++gKg==","signatures":[{"sig":"MEUCIQC7HALRpcoCUGMCGwOdUALxdiWqZyFZdIBHMTNxwnmf/wIgLG9UQkU/YEHGoluiP9pLwIYaszsANXLBI9bVDfvDmZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26850,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3GvVCRA9TVsSAnZWagAAX6EQAJX1mfhno1YTu6OEBMkF\npfAg6dRpAsvJx8lCEA1727YWw9SCx5Q0HeteUMNdufLJL7x+l+6HZUmK5oIP\nI6Wra0LTD16YqxPRQKlGHw3TDy4fLmrZsTCMYmWkDJTRiZCVSs8oSNVGXM2L\n+unMHMpggA1PFviDzGTdzUr1ymro8l1LDp7658k48bddxZs3OpfV9jmxPz/2\nlm9QikD8J0OKnrDAzw7ARBevdRcUKZ+VTjV/ijt/iBb/Njqn0WwfBUqszbcR\nS8DNssSjwFFVxtsxIqTz7/c9MPQejznjZlPGlSN0KzRTUkipAtjfpB/4xd7P\nOvUDDD5x14vy34/c61jCs8nQFV5ayKNYc4vbLgDjLLbSh0bCMYZBxrVaNYvJ\npFCN+q7EB6p1lklk4Q4XI7x1pjBt5ee13/fLYsuIT/YQe68SA3kZBeltqi8g\nlnWMpDhvLQ4yO8nSj6xituMWlZAS5U7PLS9A3cd30pFJFk/gXoxwFcC7bXnL\n2n70w3rkMpf3gq+cl8gzy4LvclzlMlzUcISLTICgG3AQg4Amux9hOhWvWVEw\nFT6aa7tlOrs7byYy/9fORaJndxj3mgLqbE6+v+vZl0t4QDRTPDagKzjFVZzU\nGqT5wvTvOn83AUT84WVhh9D9LcN1JVRIA2SZTQy7roUIbrHH6UInwaZ/y743\ne8Fj\r\n=e+am\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"8f2209f8931538de105ed72e4ab7ee6935c98387","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.0","@opentelemetry/tracing":"^0.22.0","@opentelemetry/propagator-b3":"^0.22.1-alpha.9+8f2209f8","@opentelemetry/propagator-jaeger":"^0.22.0","@opentelemetry/context-async-hooks":"^0.22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.2","@types/node":"14.14.43","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.5","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.0","@opentelemetry/resources":"^0.22.0","@opentelemetry/semantic-conventions":"^0.22.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.9_1625058261133_0.2005736500059998","host":"s3://npm-registry-packages"}},"0.22.1-alpha.13":{"name":"@opentelemetry/node","version":"0.22.1-alpha.13","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.13","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"68a7774e07dcaaa12a677deb37d305ed6fa8f5d7","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.13.tgz","fileCount":15,"integrity":"sha512-B3sgdAVbkKmEbCfct2aR9Qz1YEBQDxdhCDTP5QnaPzYQtD26HPXLtC056RCjLeqMvzXb3C81HYCdEFqCIPocNg==","signatures":[{"sig":"MEYCIQC982bM6QfNOvdj/+Ypue8Iu8U3E4+Obb2lnaaSVX7uSwIhAOShXMXPHuO4k7o1/kGyOuFVk12pp82Db7T4z63uvpt5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3Lq5CRA9TVsSAnZWagAAgzMP+wXjl8EOvM6Qqb3ihth3\naNqYWKH1q9POv3pWsSVo2x+VDutz7oSYtCDj27ZObtBBkJfyJSzTcXiceebs\ntqVzewbGnY7Sk4rBMNmzag9w1HsDYEB+bNq7JJEpNzZsJFM1mH/E9fFdnP+u\nQgohxQC9TI13VmV9VTYEUmsIpLgnpVcpoaqzk6/Ej/6BK+1qNx4AzCJ3O5fc\ncyAT/m9NyFnS0YOIYc0OGLKnl5Ybbe8ChtxX+bqS4KuRRo/oWYd56P77dAGN\nfJRMpMLHyHJLlaxkx5+7e2K5/KxjfC6GDsbj0BzOLjnwgBKbXRyJE3fmFYz2\nGn1gLYeCvk2wybLV/i8jnViJ2tLJivdGxfvESaaemaRioYcze3gTUQfPEZnn\ncmr14ZseCR3ED++pvPP6IzrcLA9O0Sd4mzbdBAHvrGoAzCFzpHnXjcNz6WdT\nxz+Md61zJW3Kkd759qtxMBt8CzjQDe2CV/muBCa5bBPufd52J1kGHH+pgmD7\nbM9eF0JecSMeMRDaNOuIo+IVySxPy5trrDkerJ5shVs7EUWcU0kILK+CdXAf\n9HlEreccJfrntdpVYWW3EEx/ehi1nCfgCXkoA46+vQTH4Us8j/R1m2jvNsxK\n5O55Zda/kfx8UuItVyinxbm1QV+TtHqpuyvLnM4S9FY7RJMdmwQYHartX68Q\nxIax\r\n=Tpuw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"01418978e5cc15b5ec4d5283ec48910799fe2f06","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.1-alpha.13+01418978","@opentelemetry/tracing":"^0.22.1-alpha.13+01418978","@opentelemetry/propagator-b3":"^0.22.1-alpha.13+01418978","@opentelemetry/propagator-jaeger":"^0.22.1-alpha.13+01418978","@opentelemetry/context-async-hooks":"^0.22.1-alpha.13+01418978"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.4","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.22.1-alpha.13+01418978","@opentelemetry/semantic-conventions":"^0.22.1-alpha.13+01418978"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.13_1625078457540_0.42854085688238674","host":"s3://npm-registry-packages"}},"0.22.1-alpha.14":{"name":"@opentelemetry/node","version":"0.22.1-alpha.14","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.14","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"1044fb4b59552d93c9925a783539ad06926e52fd","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.14.tgz","fileCount":15,"integrity":"sha512-2YTb/txbmuSvOdUxuhjWSfxIrTVmN0tAo+Cxy2w2puJIi9TA5ZMW+pMigYOrF/4xIySJJVWhG81jPcI99PkISg==","signatures":[{"sig":"MEQCIGwBA6XGiy0ku4LShaGdtylBcVIc1J44FOC4HQKyawb8AiBdlRh6PUgyGchM5q0V+UkiwmWfPQKqWXwewBr9cTIP/w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3L3BCRA9TVsSAnZWagAAGz4P/A4dZASfa4plZQevfS9g\njUNwEmcljPMsnIwO9RJLQl27tQ57lo+D13BZ6HqsdBymme1JL8zZT1VVc+Xn\n5tJ5cJ/z9GOZarsm8yFALFuD5ig4Bod0X3jMcOq8NwdNBC8FRG0p6GDwVznV\nu+Yq55rPl9mSzNIQBK2Z4uoQG/Vk6MWcbHinj5LCjceYLxzBzG8Fl1ToTypx\nF6E+u8xVXRTnQcfwsIKdmL1kLR2djTYMel+w+DUue8f3tPfU3mbiGiAio5D/\n69lpSVl5v2iNAsWd/DJc+E/+P7XiFgTC+wmadYnV5U2f6t2KdH5Zsz5xO72j\nEBj3Zwarhizu3wS9FDoQoAwhAjKag5XgQGxBt/urkKGcpDoQfU9em8XENC7M\nAsWNFThJLiUZ51jl2w0zv/6vQZKTy9L9EpsPT8ayx7aol/5+JzYcmRQP7GuU\n40eTP3oFr9Xv2AGfjAz5W10JP4MWLNBoUVeTXGSTzQI0MqsA4aSRZt6TNCj4\nQYgDWbWF/nCSFT56Kic1YmQOdtrxC3lDWFbUIvHnbB42jw/1unaK1/ZKDvlS\niIwtZTELgzTiKOwc2QQF0nJqopaPRPyOEwxABM9Pn/gc/acp2jrFfP9UNBo7\nTi+Z4WGzGjN63AiZi08L8UyTYD802/xPsYkyAx84XPxQ1tEjytBfued/4dFy\nBffA\r\n=DcRJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"1998542d35a7e0d7f162a4c999ca4c223fa26420","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.0","@opentelemetry/tracing":"^0.22.0","@opentelemetry/propagator-b3":"^0.22.0","@opentelemetry/propagator-jaeger":"^0.22.0","@opentelemetry/context-async-hooks":"^0.22.1-alpha.14+1998542d"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.4","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"9.0.11","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.22.0","@opentelemetry/semantic-conventions":"^0.22.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.14_1625079233213_0.4260287559733269","host":"s3://npm-registry-packages"}},"0.22.1-alpha.15":{"name":"@opentelemetry/node","version":"0.22.1-alpha.15","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.15","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"76f2509772676773c34ead81ffe809a82a830edd","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.15.tgz","fileCount":15,"integrity":"sha512-myJpa/7Nd2tpwWAzZxC6ut6gKE+L8q+yi+1cq7WYKN6kI3ZO7z71hwWyABC62i9eYbtbRWLMpl99Ns1sGWsQ5g==","signatures":[{"sig":"MEQCIAJ3ACdAJaoFdmgjIyiNdpp9g2JwkGD+AKTG7cDqjXoRAiBy0FjFG3SSPrpOSF6Ti+h93QirFhk7g7rmxzmFnpbxzg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3MFUCRA9TVsSAnZWagAAyeIP/RaLU8tXVKzeuyxow3ss\nG+uU01DzMr2ACsrKJ+qlnV1DhEme3uEEfbQqo0AI8TrinK7Yh5U52/EyIXNV\nqclX1N/u/ZHeqpv8sJJlji5hkKGx6uDZu+jKPjhgjvVD5VaGmJ+FLs1NaPO4\nIzEvo4wMQ1nMZGQRY7Dy5ka49C6dzhG1liFJ1+1ZkKHlzlzN1vda4EmZOeW/\nKD8lzai8meXA9BLU/Ff96h5J3LHEWn7c6mm4T6oQz1KT1ByrHFZj9Gsx8sP+\n1M/RWL4r1VgcW6XJNHiHs1ust7PRNGWL9yx7GloJEZf6W9SntsrGJDxVnEP6\nlGF5mimcx7JZBfqDhReb1fENOE4sSUqs7oYtX/es+MplsXDN6CI+zgTBReGu\nDcnPgccichFXJQdCjWUVHvZroZcexviDUJr6PuAia/3TfjeNBiYA2+k+sq1f\ntf/LFiHjX0DEE6oB0rwH89G0NZ/O8FdC37u64qAHWQCrWNuohFqas58oiFB1\nfnH/vMq9eyzHwoiPBic8xFqD7c7HU0xrvXmcX8JtiNhR7mDp738sLzUtebF6\ngzOP1rQmvDo+kftaMN8vAWppNP0E9asHrDe4W+meQoZvNe+A7ybAUrnZ0IhL\nmDoz0ORjU2Xmk5+NNU3XA5Refzn0pJ9/vTcpWU3mjm/U3UmcyGIR2cZwMzgJ\nQTwK\r\n=a59L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"c3ff9d1a6b599f01634ed2479183aca2c6d57337","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.1-alpha.15+c3ff9d1a","@opentelemetry/tracing":"^0.22.1-alpha.15+c3ff9d1a","@opentelemetry/propagator-b3":"^0.22.1-alpha.15+c3ff9d1a","@opentelemetry/propagator-jaeger":"^0.22.1-alpha.15+c3ff9d1a","@opentelemetry/context-async-hooks":"^0.22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"9.1.1","ts-mocha":"8.0.0","typescript":"4.3.4","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"10.0.2","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.22.1-alpha.15+c3ff9d1a","@opentelemetry/semantic-conventions":"^0.22.1-alpha.15+c3ff9d1a"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.15_1625080147978_0.9128855934163276","host":"s3://npm-registry-packages"}},"0.22.1-alpha.16":{"name":"@opentelemetry/node","version":"0.22.1-alpha.16","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.22.1-alpha.16","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"dfdd47294db429afa0d3fcdf5a2da91cff3e6eae","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.22.1-alpha.16.tgz","fileCount":15,"integrity":"sha512-DjmyC4RVE6IjXi2M1VWFowZgPyZxCBiLyJGjbIhwJ2/gTk30RshO7BTD3OJfRTbhIVAhznP080guzyNpEDfbhg==","signatures":[{"sig":"MEUCIQCjKjhkM+947+28RJD5CSSrScCQE5odjlWo4uLc8uf21gIgTdbbg1obgzBi0pjBs4GDNlRgth7LwpU2MSz4leRUep4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3Mq1CRA9TVsSAnZWagAARfIP/ijRGhkXI5kAX2zXRuGu\nYvhxtQATdMr1taCcHUvtVkyciWkOxmWD8KAzWL7TgUCH0uGGvIyPU3XHQyDH\nF8oSHTdgyVDzyRd179HznD2JGO/cKQ/YNpZRbp8Pe5Y36tvBkDsfM2qt/kQK\nIVElh4WzlN3iWLauvmZgbpMKg3A7yTf347erYQI0nSPEURhT+khQSD2FeFrF\nPra/iQx63PzZCqDWtjbXx43r3kWG8OQjKclZEBn5mhHnAIhA1sIm/eckDCZK\nEiYGcgcflzoVta4iNO+9MiZ+HvlwYTB/ndQ+VWq12DiPHtJ+UDxvl1Xn3EKl\nbvtuz6qgyXCWqa/FvyQ8qs0zIv0wBkPH+JVsiOK9jNTgNKj1mEJSvqujFly3\nrQskwI0p/iXnPI0s3M34UC5twmkOUFm4/qPDOQwSJjDTvK21yhcNF2dMo+cc\nUCtmaR+sbZlvm2LiZ0V7UjmVamTNtCZYYxeC8cG7l8d8yrvYpUeVIJS8tSoR\nvDff3JO19IRQJmuQlETH/tzbsYj7Jk1xHQj3EI/A1rMTILf5AJLWGTIiTpCO\nPqOrNO6ZeAcuqGbZjKpNmHRZtOUI8paJEyyeePwob2nYzjQ6Y7vStNOMW5nm\nccw/u72l4SKZoaOw2sfIsnebHwz9DU+XNL3sS5GjvHdfOGcTcuQrBsOsoEpT\nAMlK\r\n=05Zh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"5af147b159c9dfad8d00a20a3b140d55736f1919","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.22.1-alpha.16+5af147b1","@opentelemetry/tracing":"^0.22.1-alpha.16+5af147b1","@opentelemetry/propagator-b3":"^0.22.1-alpha.16+5af147b1","@opentelemetry/propagator-jaeger":"^0.22.1-alpha.16+5af147b1","@opentelemetry/context-async-hooks":"^0.22.1-alpha.16+5af147b1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"10.0.0","ts-mocha":"8.0.0","typescript":"4.3.4","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"10.0.2","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.22.1-alpha.16+5af147b1","@opentelemetry/semantic-conventions":"^0.22.1-alpha.16+5af147b1"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.22.1-alpha.16_1625082548886_0.7441635937558702","host":"s3://npm-registry-packages"}},"0.23.1-alpha.17":{"name":"@opentelemetry/node","version":"0.23.1-alpha.17","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.17","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"343442db1014ef3769c5fc3312b5e900e051ec1f","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.17.tgz","fileCount":15,"integrity":"sha512-UmWnLUorLfaEinXw6GcUVWGTjXqY5+IDXRQiHRdY63+U3wCmPcnmVWMCC3JafL2K5Y/h5lBl/jeNv3Sog13gKg==","signatures":[{"sig":"MEUCIQCJ3/dOoh8PxlN+O7/fXZtQalde7C5wZKYh98dKuGSf2wIgMrhuuxPsx/cwxsOAGwDVXUDeJXpILVkxMrhxiCMyTbI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3M8fCRA9TVsSAnZWagAAMWgP/iQfu793vKxDyj1b6obP\n/112MIfOuDSv+VnWp5oVy7Oiy0VuH3wN6mEX9FgaMycAYA6xnyVjRtGt9Ws8\nQApyzJJZadIKacMl+lN2OyFMgbqJ0is7pPTvJ/GH24BwjNtnCEuB1QY6snvf\ncXv4C8HmPZSV/P56JZxcGEojxCdyrnLpXFB9YFlnzIQjD3buBT1azEd6xkq7\n1Y/3nzgAkmEI3yn71NYeLQa9vfv5yBmkol+rpucxx8uSvE4lpYYa7H4Biw/K\nkyN19v0JfPzIR66XWtEnXc1HiMID/C1iEw/9TrMgm/qSxPrtlL+9TRCOEUp6\n/ItIucXtQXtJ7OyRxwHWSy9E5LC+DjbFGEhTvXcGNCMrPf65KdK/mlTvXPsi\nobkzA+WQexYyEU17lTtv8GWb8nJX9k85NYAQZXuZp6LD1A7k+sgd8k3um6vs\nEwoeuNizX5sXNkY2qMCiV0ni/JNt6JIwVwmzouckEeziJPOFY8dcZqGvcjr5\nv3oeH3OCfjX8PGNQi1A8A+7+C2StbGBKKIGbCjxw5Y37Nq12lGuIrHIKZyvL\nehQTGg/EQGIhyoqVCKhpob1QJUrajwYFyz+NqLGNo28SBUn/TrWiD2B9Fnjk\nsogEVQya+jZidJLWpU98EtthlR/lTtQSS2ot+J8aiE51Q3ybAiJ+X9xARUwf\nfbGu\r\n=G5gS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"f2a958dfeead4f6ae20901ab3fac04e4fc424a3f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.1-alpha.17+f2a958df","@opentelemetry/tracing":"^0.23.1-alpha.17+f2a958df","@opentelemetry/propagator-b3":"^0.23.1-alpha.17+f2a958df","@opentelemetry/propagator-jaeger":"^0.23.1-alpha.17+f2a958df","@opentelemetry/context-async-hooks":"^0.23.1-alpha.17+f2a958df"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"10.0.0","ts-mocha":"8.0.0","typescript":"4.3.4","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"10.0.2","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.1-alpha.17+f2a958df","@opentelemetry/semantic-conventions":"^0.23.1-alpha.17+f2a958df"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.17_1625083678813_0.44447761282389475","host":"s3://npm-registry-packages"}},"0.23.0":{"name":"@opentelemetry/node","version":"0.23.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"6bcc8ee685098cc369ff00859a7a654bc586d103","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.0.tgz","fileCount":15,"integrity":"sha512-StG3UQmcm/D6ZCoiAvNcFN1K9pm4zIf+uzS7L2HToOh83iwjvBYuMDwMPNTSH8eKM+2+OYOVtud4bn9wF5aLGA==","signatures":[{"sig":"MEUCIQDsqUKXLT4alPLRzTxBm7fumsa6ncbl5fawcWd2qY79GgIgHBW3hJ5JygBMA1LXx1s+bEPH/P4GcwnPyvX6crowGqo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3NDECRA9TVsSAnZWagAAQd4P/jDmZkSNGLSryBTXAC/A\n2ikWpf70d3QosA/bTvMlWvNUJk1I755bP00F1UPEs4SJ5kGjz+/c0eNdUCRH\n67wBO0D7g3zTGfjNsl+0uRGJSHgsa+bL/jAV4xbmZNtx0e3KOqxp/y0J/nl1\nPql5R9iLSp5jd+QG0OB/a6daM8pqtcNGzjlbkfSlE57bpWgXRsKiJZ7AhuRw\nKvOeLkQ61iA4R00YNebfbLxgzq1hCwNYrCYhemHYuEYbr8BYP6QpAlQoknXO\nvq6bFmnG2c4hdkEy/0wCAyBv2if5kEGJy20RHF956xedZOqHH24+i3+Ght6N\nTnPkg2EQQuaOsJSAzU7Kdvgk5CcJd87noFiXSPHTfJTwSkOBp7C6GVKCxc3Y\ng9ztpM1CSglhRteRUSq6gqnxcpQRwnIntWPd4KQAEFMmTNnrJfwyP8KseDpp\n1ynxzhHf6OhicUsaKf2npKnNKHHPMdN+FX4DNNMRkjoArxPDmA0UWTD0xwbC\n9ZeEtYC8+hKRb5ym8XbKXxFkBC3Ki+jt2sBFB9A3AE6ChJBKo0D9W6K8F2Ik\nrRXUzmjpd6C3XXbVYwp3urFUY7pvnXq3Csd3oFXbJHHyRe+kpyz6RcTetuw4\nvCDRwV3+K/TeP5V/Fn2nl4yGah31B8+xnDqW0qK8gDPvNY6agI3f32DzPcpy\novu4\r\n=fK1E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"f2a958dfeead4f6ae20901ab3fac04e4fc424a3f","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"0.23.0","@opentelemetry/tracing":"0.23.0","@opentelemetry/propagator-b3":"0.23.0","@opentelemetry/propagator-jaeger":"0.23.0","@opentelemetry/context-async-hooks":"0.23.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"10.0.0","ts-mocha":"8.0.0","typescript":"4.3.4","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"10.0.2","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"0.23.0","@opentelemetry/semantic-conventions":"0.23.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.0_1625084099744_0.737703513683948","host":"s3://npm-registry-packages"}},"0.23.1-alpha.18":{"name":"@opentelemetry/node","version":"0.23.1-alpha.18","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.18","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"86816a4d2b0ead2d8dfd7ff96c43facd375af84c","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.18.tgz","fileCount":15,"integrity":"sha512-WTryR6xoUunQU1FBFfFTpC23uCt9k17l4drbzPTUQo5sDNd3xGhNXnOqPVt6dFWQapKcCuFFgbgtLkv1HJ4aNA==","signatures":[{"sig":"MEUCIQDYIFpGsvYHQfw3urdZaOgrOn1ucUOPa7sQoY9slfkGrgIgbDq80fNbBZaR+HtiqpWNBkmra2jyRZLIgHfyPL7YdBU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3yTkCRA9TVsSAnZWagAA1coP/0pEsY5t/IX0d+YwKcfd\nVFwlO+gO7RIsyHbURsb4GySHPdrfmPMAuTnMfMHCp0wPlRV1BhFQEP/o4jdj\nQHfDlIUWMqC9fKXzlSkFvdpOacDCq6H28ocn7IuRi7n3/M5yNmsIcH11WRJg\n7eTSJjkcwrk6OmOpEal0rkUDt7wZqWoqwHwGO9ZIOVts5H54lk9DQYutuQft\nnCGDT6gYX62vMPHHBvtbsswkuWPks10ZvfUs/24uj7sjELdTpAge0V4f2Klq\n75q2u6HcrqZqCvXEbBjc+2pb2QIhZz4xZi+9ypi9GuotYTfr/mS3WEQECMCS\nAu5batox9SWM9ZvztZO4oDTnw3joYVjGyweqjY3MBHeANG1EANrpcBIcGWqc\nvGD0YkCe0HGy5sPcYhy/NokMVzmzXYIeYRiOiNOgIRZ4+bnfeycMzxmtJOLQ\noXR/u58nZA8NMzyCSI7h7DaSVGP597479h3aswg4Hkeg9+s+mzY/g6pMEmWR\npls07kI6do/eL0D067LfF18gdrqnulJ8lCics3EKL7TE9jpUbc+sic8ngu4z\nJVc6AuD65hhelo/wDhKiScENUkywg+PZXnjqicXs2NkzmeK8M4zc6G5mxlVv\nS3LNz8PcA0DAyhim5yuYlGrSMgX8Xf3nXPIwcPfNkEkuB7SNfCG9q/+PaW1g\ndSOD\r\n=XnCh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"4b3425dd09f0a7087c9d741d25c7a9a0be42770c","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.1-alpha.18+4b3425dd","@opentelemetry/tracing":"^0.23.1-alpha.18+4b3425dd","@opentelemetry/propagator-b3":"^0.23.1-alpha.18+4b3425dd","@opentelemetry/propagator-jaeger":"^0.23.1-alpha.18+4b3425dd","@opentelemetry/context-async-hooks":"^0.23.1-alpha.18+4b3425dd"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-node":"10.0.0","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"10.0.2","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.1-alpha.18+4b3425dd","@opentelemetry/semantic-conventions":"^0.23.1-alpha.18+4b3425dd"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.18_1625236707972_0.5557276585344395","host":"s3://npm-registry-packages"}},"0.23.1-alpha.3":{"name":"@opentelemetry/node","version":"0.23.1-alpha.3","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.3","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"76cc477d207da226e54a65f31539ad2d001803a9","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.3.tgz","fileCount":15,"integrity":"sha512-RUW297v6vpSUWChEa+QSNc4ewAXhiguGlK4MZZwSftY8bBx8NpcHVNSPdzHT4D7t0PoEAShveREBRZxhwfRBHQ==","signatures":[{"sig":"MEQCIC6UkdGTJFZZDQce6h82dZuijB1pA5rbhgpiLOV6ZNw8AiBOiFt0EIdet21rVGsW9Zo7SBUjOYcaXZsgUj5pG306jQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26927,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg44dnCRA9TVsSAnZWagAA9xkP/Ano2qbJPVo3rGskFLP5\nha5olhZjcvUS46m7XiEHHMmYuQZM8Xfe32QcIHDFA6f7LLO2SQ2Sgq0/fT4y\nlqVQVc9cdR2RK7eiXlofE1T8LY2yjrAGUZX436Ykle1ZTg5n/uc9vqjtoMW0\n8HwVUXNzMO4Kmv37TXhJ4/1Gnuw5pawWrn0cjp8nfH2YlI17GdcYKm6oozsh\nIldPrpKqTjMkwSaUmwjkjLKb/IASBocWUrxoAyhT751JeB4bsdfDPOB7s13K\nqokboawobnvgFOGxuU6QHYZSEgoJozruWAXmMdhAPDWwD6KLOYLsYyAzrM2k\nujLhpS9WeJ6S0RIveeVUdyRdyrfy2dSlsecy3uVAXdAJPmcO+lkRInXI9121\nqqWgMUBh1ckR6cu1F/WpyDJV1Tjx2tB8Zri7dlQWXdbVWIEyIP/hPH82b0V4\nv8GM34acNElgzBN1JrBUS2+JtVpIsHGDC1hfLp3hS9El167Dr/+b08rPCrMQ\n0KOf49+G8OCL5Yy+1WIWo3CJI6Gp8cWSxUpf1VIodD9hlVAD/nPbzzm0lN5H\nrGdSudZfi9P2hGPCXHfbi3YXUoxREXTYO1b+A8/WCz1V2dB9juskiXKIxlBi\nwtaPEGuJJa1PnnMzcpQpJB3YboiVB2mUjk1XEOwZGbGVTMmu0iRSIB8U1NMf\nFPiw\r\n=M5DL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"6ed8d92559df68ef1fd3273598a1860ee5197e53","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.1+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.1","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.1-alpha.3+6ed8d925","@opentelemetry/tracing":"^0.23.1-alpha.3+6ed8d925","@opentelemetry/propagator-b3":"^0.23.1-alpha.3+6ed8d925","@opentelemetry/propagator-jaeger":"^0.23.1-alpha.3+6ed8d925","@opentelemetry/context-async-hooks":"^0.23.1-alpha.3+6ed8d925"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.4","@types/mocha":"8.2.2","@types/sinon":"10.0.2","@types/semver":"7.3.6","@types/shimmer":"1.0.1","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.1-alpha.3+6ed8d925","@opentelemetry/semantic-conventions":"^0.23.1-alpha.3+6ed8d925"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.3_1625524070723_0.45084332468579524","host":"s3://npm-registry-packages"}},"0.23.1-alpha.15":{"name":"@opentelemetry/node","version":"0.23.1-alpha.15","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.15","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"2df4fcb07fe8d6af3c8cfc174f367bfaa4056767","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.15.tgz","fileCount":15,"integrity":"sha512-O+xRPhuoUXzQf2RNjNRslOvcvKd5BHQwYmnsSFwEtGIswCks9M92fz1m7IcAt4aDYuhee0rPELLaCgw11BOiQw==","signatures":[{"sig":"MEYCIQCg2Htp9GLNF0ptjmpSZ/iJIw4i84PmoMLX/+R4YQvpRwIhAJfG8dCBEGnE870Dxs18RjgEBBWgAB3I9nleSEyIUBDj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8qBkCRA9TVsSAnZWagAAnUoP/Rq3DyELhqMl7fYMqZLc\njWG4xd49A+ghNO8tb74Fu9MzXmNl1QEb4I9awlOJO0vfk+GEgf2g95VyGZgB\nRlnMEzeH1csta2/fh7vr6tknyRzxi4yA6G1sZYANDA6p9e3PIW3QPxg3qcCr\ntooUhirpiFsVi9JG8VqRR9N/PuasmewsCERZNFSSc6S+KXinoenFCGn8XXjy\nYcCKdBViX2zNY59m6y/pvTgAohuLBKnX81K+slyMqIP6Gpg7RplEcVz17wRc\nwcgRv/7/QDq3RhpQzdF5kQWFiL75a4bjViXsKX+4hpcweEFCHMEWqroIPXvX\nCUsW/y4lHGFKX/V/omkZI2kd8xZbkxdrKhKrzNuoSS+CEJpnLYJFmIJlb8Gg\n4ICL44OUhZiP/F3Mf9EQ82TFnvKyJ4MEuGwXdM+e7WR1POpYFjE+qsDXM9sB\nVQf2LK9FEhLeIyRLix8jwxboaI/D8Ifwr9ZFDd5cJSX8C9gE9hCCmtrPqjmh\ns2srz+UBg15ENDtyE1Q0q0TbMYax9skais/bmpCBAkjbhTwzCPJ3I++1nhv8\nRW8TasOvJjk0SKJroHMZqnlqX/zHhcLgfEFSI7C4QD2dmGqZntVwjk/MZwDT\naEa1TNotHSz267KMvTi4kffp1c6tnygdACZaIWGdBeFlpq0d3btCbDDDhP9/\ncaTI\r\n=MZ2r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"b67ca0568c333e5d841c9b614ed40b3e107682e9","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.3+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.3","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.1-alpha.15+b67ca056","@opentelemetry/tracing":"^0.23.1-alpha.15+b67ca056","@opentelemetry/propagator-b3":"^0.23.1-alpha.15+b67ca056","@opentelemetry/propagator-jaeger":"^0.23.1-alpha.15+b67ca056","@opentelemetry/context-async-hooks":"^0.23.1-alpha.15+b67ca056"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.5","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.7","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.1-alpha.15+b67ca056","@opentelemetry/semantic-conventions":"^0.23.1-alpha.15+b67ca056"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.15_1626513508143_0.9583210869750074","host":"s3://npm-registry-packages"}},"0.23.1-alpha.16":{"name":"@opentelemetry/node","version":"0.23.1-alpha.16","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.16","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"f495073d7af7082070a3e4f3ca41f7a2496efcb1","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.16.tgz","fileCount":15,"integrity":"sha512-CzmGbY3leTaayanNLMGlYLIa+VndhCqrI3Ha66ykiVb43pfPbOhEtK7TmV08mPqQMrdUXZPF4ZbEUxK7iT399w==","signatures":[{"sig":"MEUCIQCfqPNv3z1SmB5jk0VNIHwqkLqQWj/M+7lOrRRt4uSCRwIgYv1Glgtb5EAZNJr92hZSGhpAhUlGsQHwx/j8B/ljViA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26827,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8qIOCRA9TVsSAnZWagAAnc8P/jFotApxBb24UQAQxiTe\n11265RbSw3lkht8fTAT/aYQXLo3WojLlkukkZvQDjEdXfWyFrKu0skLRBji4\nvkaD9BrZmZwZcMK6UWYWw3SUXSPdR8l8ngp9XQMbV5HVNMgIbjLNZt8g82rY\nO90jpCBmu8k4SPm+aWYaV/F6p5lLJhQRk++jiKZ7i34Va5O6U3rd/7Ik/RMM\nUsUvUfGcyJFo+FBX3PjF8jck0se/r1hyJuG5Ekw+Mg+f4BVG7co+m64yRoUV\n5JkL4clgczI9X9ZNuPwItoeOkHM/Bh0ou0B7v7DI3e/PtWVDWRQBQCUCpg3R\nAEzsC14CyPayQ8D7NDl01C5V1DdNjb5bbiT5mjlscJ0YX+H/9diML6GqejNM\ny4byaJusk2bAwd648lcCV+rZuDQu8nihSZDyllAwMi9kMiVP8KHqiva+0HAo\nPkdDFQMNnlu8XhTfpLOQM/yn+92gNgsEC5fM0fN5zvJtTnAXzbBkuDzu+bp5\nzY1GQCz3Q8fZuS9UfyYJKKCqRGAz+7xJtJEZoP6SkytfkvM198si2GPwzW1U\nnFbS4+AI8VvwPnK1AAGIutAhr4BFtSV5tVKeNROYz3sQqSB3/TCko3NDQR72\nQSY2QRYyhNs/l2ab7yCyCkX9/X/2+1plmoO5pyeHDod3pUfqpKqhAeQ8rQbs\nGPUx\r\n=N2BV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"cef7ce903c84d944d6e7bd88b719aac8a0827d75","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.3+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.3","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.0","@opentelemetry/tracing":"^0.23.0","@opentelemetry/propagator-b3":"^0.23.1-alpha.16+cef7ce90","@opentelemetry/propagator-jaeger":"^0.23.0","@opentelemetry/context-async-hooks":"^0.23.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.2","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.5","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.7","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.0","@opentelemetry/semantic-conventions":"^0.23.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.16_1626513934183_0.8867420597442071","host":"s3://npm-registry-packages"}},"0.23.1-alpha.23":{"name":"@opentelemetry/node","version":"0.23.1-alpha.23","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.23","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"f32b33f2af667b4ce3a514a22269dc6340eb6fa2","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.23.tgz","fileCount":15,"integrity":"sha512-alAmDmN7TBCwpOpVwCScqoejBQKrEOOqqhIK7sRLh1AM+H3lbAe1iamS/jlw0oteuyR1drFVOMzC1pNyBd6yKg==","signatures":[{"sig":"MEYCIQD7HZmhYB7qYngl9fQOPlZPTFMo1143g1MkcrOANgHoEQIhAKomM4JrzGEaLH1ksCMJDaLSXExO/9aACmb6bO2zaa6c","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+wB8CRA9TVsSAnZWagAAMAQP+wUHbtxpUZ+oiH5fEh4D\nQpy8v3fg/Rz5/ijj2Ng9WNgB8ekw1VhJAUnn2fydn0v+gmeXUC8XK5/Y4/xn\ntX2J6BeFaFIMYIa88t+Z6ZXpCoknSP5uSzHZ+sqQbAy1DfywNcrNalEW4Pll\nh0q4QXyXAfGOsNYC5tST3tb08+V0HAw8tg6Y+/NU4063QvCvRA5KHoSpFBgV\nqlbPBsu3ImD0C94nvU6zSINepPuePRxYE312U04HzqJKpP3zNJvnrOLEDW/E\npHOnRw2L2TbTfj7aSDdg014kgmopg76UHa+Ad9+NNxPC2KuctFBEQufSGvpv\ntTNvpATHLWWT1Vfi9M1Q1UjBjgxm+GQGslgoPeSVApsrG9/f9hztH/XMuBu6\nZXDEIthPsLx85rqJoIFXKbhCDuy+LHHyKAPrNaM2f0kqbpZddEVD0tlRSKXu\nPihnLQ7i2hLQW8F5UROv7yGas6nrau+xsZkyvIawNK8Voxbb4zjhYWJShKE5\ntp09FwxB9KJE122sD2hB94rvL87HjHflGoPFmLDElBmjDOKVcmYBeoRqYmZH\nD/BDMaiQnC+qEKeO9Ik+MkFFFivY+R5QEScpCwXPUOBu6WSFo+uHvMggBsRT\nL7EkDzdUf3wXnMNqd/9TVvlTJoY+VCw1N1c0HiExsUzq3IbEdPw8skDn5jiO\n/ZZP\r\n=r3Ye\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"884d20ab417bf0283ec84a72b9a0fae8ebcb82a1","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.3+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.3","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.1-alpha.23+884d20ab","@opentelemetry/tracing":"^0.23.1-alpha.23+884d20ab","@opentelemetry/propagator-b3":"^0.23.1-alpha.23+884d20ab","@opentelemetry/propagator-jaeger":"^0.23.1-alpha.23+884d20ab","@opentelemetry/context-async-hooks":"^0.23.1-alpha.23+884d20ab"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.3","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.5","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.7","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.1-alpha.23+884d20ab","@opentelemetry/semantic-conventions":"^0.23.1-alpha.23+884d20ab"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.23_1627062395822_0.6299884194339056","host":"s3://npm-registry-packages"}},"0.23.1-alpha.24":{"name":"@opentelemetry/node","version":"0.23.1-alpha.24","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.24","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"f403790f8c824ff735363663cc6e9c89a72887f4","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.24.tgz","fileCount":15,"integrity":"sha512-rV9+hEvuVhFP5J3qSzbqg4XPt2G61aHoF/ZTTYoB3r6HHHkfGlcAndrfQdKa8HnilSaT4kY5shV2KUt2FMiHkA==","signatures":[{"sig":"MEUCIHP6oH4tHjaARsDQXH7b0iC26YF20SQOxqXLdSa5mgQoAiEA/7rJ7Vf4JYSpj84oqpBehF83+WrA6Xw1CMUOVNhqzP4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26917,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/QiQCRA9TVsSAnZWagAAm4MQAKNyMK2O7e3Kt8TEXeti\nwRnO3SSlhg8n802+8Lhq16r+QYGwlAJs5pMurOvZ6+zkGDFMuMTNFfyVNwW3\nhW0ObdY/iE9hu0lSUmBlpvAcCBtfeonCNd4ofFoAybXNpXUAcpdXBAm3nWws\nyGOiiCWUHaSSNdX0hJGXWSKiFBnf2c/SthyBGbNZnmZvYGlGmKHHFp6rHGJe\nkUzBR6CBBmb/CB//rtUp3GoGXXbH1OmXcirQ3OUUXMazlQmVE3SjHhWuPZeh\nSrr/ourUOV08JeV7B5vg0RzZrfMgAu257hQ0iV1Wu/BzBdC9c1LtemdXel4S\nqhJichBm1bxTlDC5HwaRf5TGpH5gWDk3aAPly0dNHNNjtW6aMZlAE6uXBvRb\nZ6F9GQFM8Z9gD8nGvuvg20qzsblsFzjMyvIFSylmMEmuGTKx/3Orc5PRzpgG\nyA3TRcni2cAABcxUmH8pH4TcAnzzTkeGn+TrzQUIlJpi7V6u/lDUu9IVIwUs\nvRcQ4kKmUK+7qQam4The73jUna3h4uAKtI0o9hH7rFi0sS4q97UM9uPCOogV\nYaLqttU2CQZ83ktGfoQaf3aK1bDJ2TnJmWVkqlbRtJ7ddxD77sFPBMl+2mrH\noql2myan9UQ89uZpix+tyhBN5j68f0PjtID0vf3s+pct1MILud6ullnEbS7O\n/PVu\r\n=QQ9w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"3bc3452814e30274d7eea1f3c9da968b88b1a197","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.3+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.3","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.1-alpha.24+3bc34528","@opentelemetry/tracing":"^0.23.1-alpha.24+3bc34528","@opentelemetry/propagator-b3":"^0.23.1-alpha.24+3bc34528","@opentelemetry/propagator-jaeger":"^0.23.1-alpha.24+3bc34528","@opentelemetry/context-async-hooks":"^0.23.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"10.0.0","rimraf":"3.0.2","codecov":"3.8.3","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.5","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.7","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.1-alpha.24+3bc34528","@opentelemetry/semantic-conventions":"^0.23.1-alpha.24+3bc34528"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.24_1627195536234_0.7566806443120275","host":"s3://npm-registry-packages"}},"0.23.1-alpha.28":{"name":"@opentelemetry/node","version":"0.23.1-alpha.28","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.23.1-alpha.28","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"af8e34fbe1ff567ecce1a203d6ba4aa3d79d59c0","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.23.1-alpha.28.tgz","fileCount":15,"integrity":"sha512-7APcASSmuGPGkClZ44/Fb52Ws1/82Jp2k/zOtVTMXRrqa5AGLyKxWWSFhz46/gv/B37sEFcAGLylIkshxbx0yQ==","signatures":[{"sig":"MEYCIQDUcRmVj2ciMyKO8AEXX6HcGVgO7F4L/+gQLU1VKYLbHwIhAJzx8wngW5JkUHwvFOhTy1GCDe8/svwNQ+ryMkEZJyCr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26917,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAGIhCRA9TVsSAnZWagAAy98QAIwukcUNAHL+MycV3mG9\ngZJkmGmaK11t66H0UuDr+mQoisQpdRljmX8NlBKb3hI9kIFtWxREHZhSp3Ja\ntiW4SsNnHsUVumZz91ZrGiB8GGo6C4mlDcqpFiMpY2dRpriTl3eqVGmaiMv2\n1X6Oo+WCpg5TkwvMboi0ImbscZQji85EcdYKRsVzayj4EPw+dIfJ507QbjGh\nxU4haEybajVjqxZ7luC855eCA9g8FXOkMy+D/Rr7tm5KgwjX5HSwBHK0ZP4Y\nrk9MgoraXYv1wuMDi48S/+PNiTEdpTSS6Iy87oGgDfOSd0ldkPGgPPhl7bEC\nYW3puRG+MJjHXDQqF3rND5r2LNq1Os+Amt+m40D8HXc5sQv99ho93lUtNSzN\nH+UWJacZxelP6190A8+oSHOmqBPrWmya85ytzzB1cXrEKrCfyXpCNXOMIrDd\nyQHEv6p24S7Tr7TRUXsZvNEvHBN6CEvAAVJfJJIg4m4zI7KI43GeIHoyn6aI\nGdOv+HxoJG/L6F696IZoUEF++bPzXRTmceVp6iqE8j9EU+ERvo7UpgR7oLQO\na7ZBpF03mjORXLnDCTSAEp9XEntYrFYp0tDF0w3ekGcrNcmrg4QI7AataCib\nVOCab4thKZRyh7FZa1SEVBK+wz0RXx1D0MrEsItLpZG0VQo084HQhnNRvH9y\nSu9e\r\n=ke1y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"d8fbeddacce3e27aab40b24c2ca3c271155e74ea","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.3+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.3","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.23.1-alpha.28+d8fbedda","@opentelemetry/tracing":"^0.23.1-alpha.28+d8fbedda","@opentelemetry/propagator-b3":"^0.23.1-alpha.28+d8fbedda","@opentelemetry/propagator-jaeger":"^0.23.1-alpha.28+d8fbedda","@opentelemetry/context-async-hooks":"^0.23.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"11.1.2","rimraf":"3.0.2","codecov":"3.8.3","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.5","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.7","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.23.1-alpha.28+d8fbedda","@opentelemetry/semantic-conventions":"^0.23.1-alpha.28+d8fbedda"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.23.1-alpha.28_1627415073738_0.7987662688933455","host":"s3://npm-registry-packages"}},"0.24.1-alpha.31":{"name":"@opentelemetry/node","version":"0.24.1-alpha.31","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.24.1-alpha.31","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"0742425e6c2978073869c3fafe9d04ce4a3510d9","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.24.1-alpha.31.tgz","fileCount":15,"integrity":"sha512-H7ZhqeBBzIw/hNkjG00gQYyxtxtLOQvo2HnUt1iaqqzLccdZrOkBCwdsZ70eHB8z8MVDSv6v10pc57kDgeT+IA==","signatures":[{"sig":"MEUCIGSQDSJVNR5fSOQrhmHad8QHLlYBGeFtQGVR/TCH3lTNAiEA2yjEaQrGj20So7Wc4ayhNFf9n22CmTUeOIfGSC5FH7w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAWSgCRA9TVsSAnZWagAACw0P/RL5Gb5HgYwFDmYmMRyX\nao/pGVMy4pkF5osR1Rl4KWhkq7FAJQ1oBqZKo8ZqpQSkWEO+RSzOrtb5IkPQ\nxJ+R47GUvaxyaS01zy8BrNqyX4TNan67w3Hj+BfXYmQLm2AQ4s2uSAJ/AosH\nXKQDVaTJoWGAUDTnMFrbsRZutZv2ezsorwTwJnX+7HlorDc2GTWrY7DCpcZr\nKPboSaIhzBftFZr3166hx+/yFz3+hR0HDPhCUjV7O/1V0hDQDTVMHvCaGiGR\npenovyHC8vqT6jQ0MM/rtYxeMBjWu/OImcbwhu83qrNVSv93VqlxKXsToNpb\nGRGmQE9IhaqF6i+JtjlV3IudGOt+weedfLkzLGiKxxRJAWNycnG5+QWVQS/9\nJBOYuenBVYe4jDtHh9ETIq5KCv/v/dQcXcoNMjDUv2d3KU1WpFOp9yg2hIIZ\nsqiGZp2+YoObzpjFjGmWibxUee3mktHCusRj+dQXo4//wTaGX7X0I2GFvOHg\n4LP0HOkstVtg90YQj42Ye/52c0AE0Y+JGCvIY3FLTja5J8VBh7khfFhAbsmR\naXVDBCruTmti4tXMAAMRpBLSePyGd7lSS3iRduHzL4QEW8P3YFWAC4g3GQTy\nlPwYTnldwZ+p2+XkkHM5Lrw2uUTPhzf6JTpWg6nqE3yj1gB7bb+OiCHwy18S\nRSgc\r\n=D2VL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"fd2410cc9e8d43210b6ea44b8193fa70ee900499","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.3+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.3","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.24.1-alpha.31+fd2410cc","@opentelemetry/tracing":"^0.24.1-alpha.31+fd2410cc","@opentelemetry/propagator-b3":"^0.24.1-alpha.31+fd2410cc","@opentelemetry/propagator-jaeger":"^0.24.1-alpha.31+fd2410cc","@opentelemetry/context-async-hooks":"^0.24.1-alpha.31+fd2410cc"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"11.1.2","rimraf":"3.0.2","codecov":"3.8.3","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.5","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.7","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"^0.24.1-alpha.31+fd2410cc","@opentelemetry/semantic-conventions":"^0.24.1-alpha.31+fd2410cc"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.24.1-alpha.31_1627481248773_0.5199305816609816","host":"s3://npm-registry-packages"}},"0.24.0":{"name":"@opentelemetry/node","version":"0.24.0","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.24.0","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"ef3f3ebc249e71eec2513f1372206f2eae089d85","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.24.0.tgz","fileCount":15,"integrity":"sha512-Sy8QooZFOeVUcJIKetw5xsq15/1ivZovWg0RnKWtzURMQrcOxmQ3bGrXPORklOJxOtf5snDHgT37Y7dBgr+c+g==","signatures":[{"sig":"MEUCIQCrHc6gh1pu8goxiLodXY9/63um3tV3NM+oxNRNHlVsHQIgLzcaqdXpI4l6+D3fgcAAUQx23FS219RC92R0+wQciEM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2Up9CRA9TVsSAnZWagAAuX4P/3T07UiHJhGD1ojzPXO/\ni2MXDfApbS4ExklYgNDiH3CihDVKoMhe2P9CPpk7lQu/24MN6V/9WPzXH9Tp\navURstC1ovu+ktweJvzBIIimJV65W4gg8QkOFGuaJliaTIfu7sI25keDYTj5\n+XpR+mM0W+cGTCZNMkAHuZVsAozDMyEqOz24kGJOOOhYCyNqJY5hrtHQ6BM+\n5ZjeFFKxwQZmm5y1CvLTNZVlWtVUIzLNoraFYQsj20Q5PXE1m5Vuxjz6D571\nP/qah//WDzBbOdlIuCObYQRAYcq6itMoaRACL+v+LrscknktpznFroce0NZ1\ndwR8eJlr/mE6ktAyg654na6De8EhllTTCWaN4nyoqVg8a4jb78qgRgom4KpV\nRE8RxlVEGAAoaAxrCSi2uH5n2IZN4H6FBOqAlhehtINtqNVpKbTCg06Q8r+4\nILhxVx7oh+WHkO9/6iJj+BtwP0cY4JtTGvgDNBJ8/MaZL9aFAIUj9T7p1mP4\nNhAX1O7Z+WNCgxDM7rJ3OGpqJ8jrR9Ii5nW2BE7G0DQK8SNl9U/rSIG8raoc\nXapg6UUW93NMgzB5ixS3vCk84NYeZXvdW9zmO+oqcKaRxswFcxC07kw+DRo3\nf5/lo9tE0MHZChjCPgRjDyBac44Vnp2nBYvzmYeTp/Bw1pj0N/HIB8zOmkQc\nlMoC\r\n=RMeJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","engines":{"node":">=8.0.0"},"gitHead":"fd2410cc9e8d43210b6ea44b8193fa70ee900499","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.8.0+x64 (darwin)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"0.24.0","@opentelemetry/tracing":"0.24.0","@opentelemetry/propagator-b3":"0.24.0","@opentelemetry/propagator-jaeger":"0.24.0","@opentelemetry/context-async-hooks":"0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"11.1.2","rimraf":"3.0.2","codecov":"3.8.3","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.5","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.7","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.1","@opentelemetry/resources":"0.24.0","@opentelemetry/semantic-conventions":"0.24.0"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/node_0.24.0_1627481648271_0.9908069915270825","host":"s3://npm-registry-packages"}},"0.24.1-alpha.1":{"name":"@opentelemetry/node","version":"0.24.1-alpha.1","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","_id":"@opentelemetry/node@0.24.1-alpha.1","maintainers":[{"name":"mayurkale22","email":"mayurkale22@gmail.com"},{"name":"bogdandrutu","email":"bogdandrutu@gmail.com"},{"name":"dyladan","email":"dyladan@gmail.com"},{"name":"obecny","email":"bobecny@gmail.com"}],"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"fb0e83e9f0a0bd0686f0dfc14044230e17c7bd58","tarball":"https://registry.npmjs.org/@opentelemetry/node/-/node-0.24.1-alpha.1.tgz","fileCount":15,"integrity":"sha512-H7GW9zGgqey0wBIpOfnMQHr+e/GD5Qd1Rxd2msa6PwZiJIE5ZpzEg23xs4foQutFK3gIg49WmRFs8Uy5vao5yA==","signatures":[{"sig":"MEUCIQCWXt7mKVdM3nUjbac8CYm7yZQg5/PbMCleI9q62OgvEAIgMl5ush1HMrZ7poBiWJwgxX+N7NYiBRYDC1IITcfNInM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26927,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBFY7CRA9TVsSAnZWagAA+tUP/1tscflw9tQ5PCiiyvkp\nsCJkBcP1JjBtfyC96063EkBtKNlWX+4uxT4u/zAsd3bWZbnejOVZymnJyHln\nOkGDlO4u63TjCNRObc5gdK0o9sLfXv8+qCNFoqsUwcEUTucvE54eoGVEmRef\nNpZNQdUlGfhvO6iELKkO10LoFCI/tTmFyvncCkOO/yd5FveDyHrMjndXtUM/\nSt33tnAf5e67m8aGhDpv08Ui+KU/UVoGiq2j3nB1TCm3rLNr+B8BEfv9zF+a\nMFgo7abovC7Vx0Cu7n/5d4sS0CaAyBJFm7zDPIIdKxv4/wN3U42MSiDQo844\nPgLAgYyeQ5ZLmUpPYEdOv9q1yoCCezIaQn3geCJ4FHwvvcy8KxXYunpqueTe\nVkAJ9IwlkQqmJ+85G7vpVwH50AWFyq6Set+2fL5Z9xYMIkpWO5uX1JM0QCBy\noq8voYWwWC37SMe9nyPW67PeiLD5qQ9Ywa29+ykXT/8I0+7qKoqJCszy1bYa\nr8fvzF1PkEgByXV21nJgJ39R6sxQfpQTzQRnMPHKDWOermGDImMGRc6UwhvQ\nmnVX2zZLZPEXmYGDSLmj7rt/pKLiTFLei2ohAfRf3n37WFb1IPpTb/8IroBe\nFVhvkJvi+sojlEoopUxheDLw6c5iW9160OSv9j2obSvmuOYAcA3CrQYYurH4\n1g3o\r\n=Nwnw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","types":"build/src/index.d.ts","readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","engines":{"node":">=8.0.0"},"gitHead":"3b9cd16a8eeed7a262bdfea4c93098861b4c1ba0","scripts":{"tdd":"npm run test -- --watch-extensions ts --watch","lint":"eslint . --ext .ts","test":"nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'","clean":"tsc --build --clean","watch":"tsc --build --watch","codecov":"nyc report --reporter=json && codecov -f coverage/*.json -p ../../","compile":"tsc --build","version":"node ../../scripts/version-update.js","lint:fix":"eslint . --ext .ts --fix"},"_npmUser":{"name":"dyladan","email":"dyladan@gmail.com"},"deprecated":"Package renamed to @opentelemetry/sdk-trace-node","repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v14.17.3+x64 (linux)","description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","directories":{},"_nodeVersion":"14.17.3","dependencies":{"semver":"^7.1.3","@opentelemetry/core":"^0.24.1-alpha.1+3b9cd16a","@opentelemetry/tracing":"^0.24.1-alpha.1+3b9cd16a","@opentelemetry/propagator-b3":"^0.24.1-alpha.1+3b9cd16a","@opentelemetry/propagator-jaeger":"^0.24.1-alpha.1+3b9cd16a","@opentelemetry/context-async-hooks":"^0.24.1-alpha.1+3b9cd16a"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"15.1.0","mocha":"7.2.0","sinon":"11.1.2","rimraf":"3.0.2","codecov":"3.8.3","shimmer":"1.2.1","ts-mocha":"8.0.0","typescript":"4.3.5","@types/node":"14.17.6","@types/mocha":"8.2.3","@types/sinon":"10.0.2","@types/semver":"7.3.8","@types/shimmer":"1.0.2","@opentelemetry/api":"^1.0.2","@opentelemetry/resources":"^0.24.1-alpha.1+3b9cd16a","@opentelemetry/semantic-conventions":"^0.24.1-alpha.1+3b9cd16a"},"peerDependencies":{"@opentelemetry/api":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/node_0.24.1-alpha.1_1627674170817_0.5358245495062584","host":"s3://npm-registry-packages"}}},"time":{"created":"2019-10-08T22:46:34.427Z","modified":"2026-05-01T17:15:40.494Z","0.1.0":"2019-10-08T22:46:34.754Z","0.1.1":"2019-10-15T23:49:26.713Z","0.2.0":"2019-11-04T20:18:54.443Z","0.3.0":"2019-12-13T19:37:38.389Z","0.3.1":"2019-12-21T00:01:09.720Z","0.3.2":"2020-01-03T21:57:31.843Z","0.3.3":"2020-01-22T22:48:52.893Z","0.4.0":"2020-02-05T23:03:49.578Z","0.5.0":"2020-03-16T22:04:20.462Z","0.5.1":"2020-03-20T00:46:42.060Z","0.5.2":"2020-03-27T18:04:22.999Z","0.6.0":"2020-04-02T17:30:07.315Z","0.6.1":"2020-04-08T18:37:54.167Z","0.7.0":"2020-04-24T18:15:27.957Z","0.8.0":"2020-05-12T16:37:43.761Z","0.8.1":"2020-05-18T19:37:56.054Z","0.8.2":"2020-05-21T19:30:20.241Z","0.8.3":"2020-05-28T20:19:52.340Z","0.9.0":"2020-06-18T21:24:24.549Z","0.10.0":"2020-07-27T20:59:35.680Z","0.10.1":"2020-07-28T15:12:55.215Z","0.10.2":"2020-08-03T23:25:49.488Z","0.10.3-canary.0":"2020-08-07T16:47:49.273Z","0.10.3-alpha.28":"2020-08-19T15:04:14.964Z","0.10.3-alpha.34":"2020-08-24T16:44:52.066Z","0.10.3-alpha.35":"2020-08-24T22:45:43.379Z","0.10.3-alpha.40":"2020-08-27T14:23:52.617Z","0.10.3-alpha.41":"2020-08-27T16:09:08.853Z","0.11.1-alpha.48":"2020-09-01T19:24:43.054Z","0.11.0":"2020-09-01T19:32:37.730Z","0.11.1-alpha.15":"2020-09-21T03:30:31.759Z","0.11.1-alpha.35":"2020-09-30T12:22:39.158Z","0.11.1-alpha.36":"2020-09-30T12:39:21.245Z","0.11.1-alpha.44":"2020-10-07T19:55:28.089Z","0.11.1-alpha.53":"2020-10-19T11:48:57.547Z","0.12.1-alpha.54":"2020-10-19T12:50:28.986Z","0.12.0":"2020-10-19T12:54:05.119Z","0.12.1-alpha.4":"2020-10-26T15:40:33.755Z","0.12.1-alpha.7":"2020-10-26T21:12:33.530Z","0.13.0":"2020-12-04T21:26:31.488Z","0.14.0":"2020-12-17T20:53:12.316Z","0.15.0":"2021-01-21T22:20:14.860Z","0.16.0":"2021-02-01T22:33:44.736Z","0.16.1-alpha.6":"2021-02-05T20:14:43.479Z","0.16.1-alpha.10":"2021-02-08T15:50:49.106Z","0.16.1-alpha.11":"2021-02-08T16:18:41.629Z","0.16.1-alpha.12":"2021-02-08T20:11:11.765Z","0.16.1-alpha.14":"2021-02-10T16:06:40.000Z","0.16.1-alpha.15":"2021-02-10T22:18:40.975Z","0.16.1-alpha.18":"2021-02-14T18:12:59.842Z","0.16.1-alpha.20":"2021-02-17T20:52:32.379Z","0.17.0":"2021-02-17T21:16:20.824Z","0.17.1-alpha.21":"2021-02-17T21:17:22.995Z","0.17.1-alpha.2":"2021-02-20T17:37:54.300Z","0.17.1-alpha.3":"2021-02-22T20:49:07.814Z","0.17.1-alpha.5":"2021-02-24T17:20:17.447Z","0.17.1-alpha.8":"2021-03-01T13:38:47.198Z","0.17.1-alpha.10":"2021-03-02T13:22:30.489Z","0.17.1-alpha.11":"2021-03-02T13:32:02.948Z","0.18.1-alpha.12":"2021-03-02T13:54:34.106Z","0.18.0":"2021-03-02T14:01:18.049Z","0.18.1-alpha.3":"2021-03-02T19:09:57.956Z","0.18.1-alpha.13":"2021-03-18T16:26:12.350Z","0.18.1-alpha.16":"2021-03-22T13:12:00.114Z","0.18.1-alpha.20":"2021-03-24T13:11:27.328Z","0.18.1-alpha.21":"2021-03-24T14:13:27.856Z","0.18.1-alpha.23":"2021-03-24T19:17:38.867Z","0.18.1-alpha.24":"2021-03-24T19:39:15.786Z","0.18.1-alpha.26":"2021-03-24T20:09:38.112Z","0.18.2-alpha.81":"2021-03-29T19:52:43.978Z","0.18.1":"2021-03-29T20:04:12.968Z","0.18.2-alpha.1":"2021-03-30T13:06:44.936Z","0.18.3-alpha.2":"2021-03-30T15:27:39.350Z","0.18.2":"2021-03-30T16:16:11.801Z","0.18.3-alpha.1":"2021-03-30T17:30:04.635Z","0.18.3-alpha.3":"2021-03-31T07:38:33.875Z","0.18.3-alpha.4":"2021-04-05T16:38:23.117Z","0.18.3-alpha.5":"2021-04-05T17:55:45.968Z","0.18.3-alpha.7":"2021-04-07T16:12:50.760Z","0.18.3-alpha.9":"2021-04-08T13:14:42.823Z","0.18.3-alpha.10":"2021-04-08T14:25:56.188Z","0.18.3-alpha.11":"2021-04-08T20:22:19.447Z","0.18.3-alpha.14":"2021-04-09T09:11:45.833Z","0.18.3-alpha.15":"2021-04-09T09:36:32.479Z","0.18.3-alpha.16":"2021-04-09T20:08:15.678Z","0.18.3-alpha.17":"2021-04-10T09:33:50.362Z","0.18.3-alpha.18":"2021-04-10T19:01:09.084Z","0.18.3-alpha.20":"2021-04-12T15:09:07.623Z","0.18.3-alpha.23":"2021-04-12T18:13:08.050Z","0.18.3-alpha.25":"2021-04-12T19:42:52.557Z","0.18.3-alpha.27":"2021-04-13T19:55:09.619Z","0.18.3-alpha.28":"2021-04-14T07:52:00.369Z","0.18.3-alpha.29":"2021-04-14T10:35:28.711Z","0.18.3-alpha.30":"2021-04-19T17:01:42.848Z","0.18.3-alpha.31":"2021-04-20T15:49:04.526Z","0.19.1-alpha.36":"2021-04-22T12:20:10.816Z","0.19.0":"2021-04-22T12:29:00.653Z","0.19.1-alpha.37":"2021-04-22T18:16:21.578Z","0.19.1-alpha.39":"2021-04-22T18:45:30.677Z","0.19.1-alpha.40":"2021-04-23T13:03:05.881Z","0.19.1-alpha.7":"2021-04-28T16:14:09.987Z","0.19.1-alpha.9":"2021-04-29T08:17:49.307Z","0.19.1-alpha.11":"2021-04-29T21:07:34.843Z","0.19.1-alpha.12":"2021-04-30T20:50:04.841Z","0.19.1-alpha.13":"2021-05-01T07:06:00.330Z","0.19.1-alpha.14":"2021-05-01T07:38:12.966Z","0.19.1-alpha.15":"2021-05-03T12:26:20.281Z","0.19.1-alpha.18":"2021-05-04T17:07:47.971Z","0.19.1-alpha.19":"2021-05-08T07:54:17.864Z","0.19.1-alpha.21":"2021-05-11T18:50:20.960Z","0.19.1-alpha.22":"2021-05-11T19:08:33.590Z","0.19.1-alpha.23":"2021-05-11T20:13:25.336Z","0.19.1-alpha.25":"2021-05-12T15:54:11.109Z","0.19.1-alpha.26":"2021-05-12T16:07:07.956Z","0.19.1-alpha.27":"2021-05-13T10:01:26.599Z","0.19.1-alpha.28":"2021-05-13T10:15:28.823Z","0.19.1-alpha.29":"2021-05-13T10:24:33.049Z","0.19.1-alpha.31":"2021-05-19T18:07:18.000Z","0.19.1-alpha.33":"2021-05-20T12:12:30.689Z","0.19.1-alpha.41":"2021-05-27T17:55:59.302Z","0.19.1-alpha.43":"2021-06-01T19:46:17.454Z","0.19.1-alpha.44":"2021-06-01T20:21:20.999Z","0.20.1-alpha.49":"2021-06-03T17:10:10.837Z","0.20.0":"2021-06-03T18:28:44.233Z","0.20.1-alpha.3":"2021-06-05T08:29:21.747Z","0.20.1-alpha.4":"2021-06-08T13:28:13.589Z","0.21.1-alpha.7":"2021-06-10T17:26:26.115Z","0.21.0":"2021-06-10T18:29:57.681Z","0.21.1-alpha.1":"2021-06-12T08:24:53.791Z","0.21.1-alpha.2":"2021-06-12T08:35:34.742Z","0.21.1-alpha.3":"2021-06-16T12:59:10.153Z","0.22.1-alpha.5":"2021-06-17T17:05:33.530Z","0.22.0":"2021-06-17T17:58:46.224Z","0.22.1-alpha.2":"2021-06-23T15:49:20.469Z","0.22.1-alpha.3":"2021-06-23T16:05:18.494Z","0.22.1-alpha.8":"2021-06-30T12:48:17.964Z","0.22.1-alpha.9":"2021-06-30T13:04:21.300Z","0.22.1-alpha.13":"2021-06-30T18:40:57.683Z","0.22.1-alpha.14":"2021-06-30T18:53:53.384Z","0.22.1-alpha.15":"2021-06-30T19:09:08.128Z","0.22.1-alpha.16":"2021-06-30T19:49:09.034Z","0.23.1-alpha.17":"2021-06-30T20:07:59.019Z","0.23.0":"2021-06-30T20:14:59.858Z","0.23.1-alpha.18":"2021-07-02T14:38:28.103Z","0.23.1-alpha.3":"2021-07-05T22:27:50.880Z","0.23.1-alpha.15":"2021-07-17T09:18:28.303Z","0.23.1-alpha.16":"2021-07-17T09:25:34.292Z","0.23.1-alpha.23":"2021-07-23T17:46:36.045Z","0.23.1-alpha.24":"2021-07-25T06:45:36.395Z","0.23.1-alpha.28":"2021-07-27T19:44:33.860Z","0.24.1-alpha.31":"2021-07-28T14:07:28.944Z","0.24.0":"2021-07-28T14:14:08.421Z","0.24.1-alpha.1":"2021-07-30T19:42:51.007Z"},"bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"author":{"name":"OpenTelemetry Authors"},"license":"Apache-2.0","homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","keywords":["opentelemetry","nodejs","tracing","profiling","metrics","stats"],"repository":{"url":"git+https://github.com/open-telemetry/opentelemetry-js.git","type":"git"},"description":"OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications","maintainers":[{"email":"dyladan@gmail.com","name":"dyladan"},{"email":"marc.pichler@dynatrace.com","name":"pichlermarc"},{"email":"overbalancedev@proton.me","name":"overbalance"},{"email":"npmjs-account@opentelemetry.io","name":"npmjs-account"},{"email":"trentm@gmail.com","name":"trentm"},{"email":"martin@martinkuba.com","name":"martinkuba"}],"readme":"# OpenTelemetry Node SDK\n\n[![NPM Published Version][npm-img]][npm-url]\n[![dependencies][dependencies-image]][dependencies-url]\n[![devDependencies][devDependencies-image]][devDependencies-url]\n[![Apache License][license-image]][license-image]\n\nThis module provides *automated instrumentation and tracing* for Node.js applications.\n\nFor manual instrumentation see the\n[@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing) package.\n\n## How auto instrumentation works\n\nThis package exposes a `NodeTracerProvider`.\nFor loading instrumentations please use `registerInstrumentations` function from [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-instrumentation)\n\nOpenTelemetry comes with a growing number of instrumentation plugins for well known modules (see [supported modules](https://github.com/open-telemetry/opentelemetry-js#instrumentations)) and an API to create custom instrumentation (see [the instrumentation developer guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/instrumentation-guide.md)).\n\n> **Please note:** This module does *not* bundle any plugins. They need to be installed separately.\n\nThis is done by wrapping all tracing-relevant functions.\n\nThis instrumentation code will automatically\n\n- extract a trace-context identifier from inbound requests to allow distributed tracing (if applicable)\n- make sure that this current trace-context is propagated while the transaction traverses an application (see [@opentelemetry/context-base](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-context-base/README.md) for an in-depth explanation)\n- add this trace-context identifier to outbound requests to allow continuing the distributed trace on the next hop (if applicable)\n- create and end spans\n\n## Creating custom spans on top of auto-instrumentation\n\nAdditionally to automated instrumentation, `NodeTracerProvider` exposes the same API as [@opentelemetry/tracing](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-tracing), allowing creating custom spans if needed.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/api\nnpm install --save @opentelemetry/node\n\n# Install instrumentation plugins\nnpm install --save @opentelemetry/instrumentation-http\n# and for example one additional\nnpm install --save instrumentation-graphql\n```\n\n## Usage\n\nThe following code will configure the `NodeTracerProvider` to instrument `http`\n(and any other installed [supported\nmodules](https://github.com/open-telemetry/opentelemetry-js#plugins))\nusing `@opentelemetry/plugin-http`.\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\n// Create and configure NodeTracerProvider\nconst provider = new NodeTracerProvider();\n\n// Initialize the provider\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n});\n\n// Your application code - http will automatically be instrumented if\n// @opentelemetry/plugin-http is present\nconst http = require('http');\n```\n\n## Instrumentation configuration\n\nIn the following example:\n\n- the express instrumentation is enabled\n- the http instrumentation has a custom config for a `requestHook`\n\n```javascript\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');\nconst { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');\n\nconst provider = new NodeTracerProvider();\nprovider.register();\n\n// register and load instrumentation and old plugins - old plugins will be loaded automatically as previously\n// but instrumentations needs to be added\nregisterInstrumentations({\n  instrumentations: [\n    new ExpressInstrumentation(),\n    new HttpInstrumentation({\n        requestHook: (span, request) => {\n          span.setAttribute(\"custom request hook attribute\", \"request\");\n        },\n    }),\n  ],\n});\n\n\n```\n\n## Examples\n\nSee how to automatically instrument [http](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http) and [gRPC](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) / [grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) using node-sdk.\n\n## Useful links\n\n- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>\n- For more about OpenTelemetry JavaScript: <https://github.com/open-telemetry/opentelemetry-js>\n- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]\n\n## License\n\nApache 2.0 - See [LICENSE][license-url] for more information.\n\n[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions\n[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE\n[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat\n[dependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node\n[devDependencies-image]: https://status.david-dm.org/gh/open-telemetry/opentelemetry-js.svg?path=packages%2Fopentelemetry-node&type=dev\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-node&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/node\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fnode.svg\n","readmeFilename":"README.md"}