{"bugs":{"url":"https://github.com/open-telemetry/opentelemetry-js/issues"},"dist":{"shasum":"5171fca556c4e2c68a968c263b31f870dc3741ab","tarball":"https://registry.npmjs.org/@opentelemetry/plugin-http/-/plugin-http-0.11.1-alpha.48.tgz","fileCount":18,"integrity":"sha512-77HUhPt8NTnp/RCQAl9KfqkO2Bg4Ys6krZXkdx2nuf4mDyNvjs3sBiYvd/zhWICczjzajnVqLqLEvrMY8qTqGw==","signatures":[{"sig":"MEQCIDFbaGI8AC/nrZoOuqubhr1nljDR3j159nEzXXSTk/kTAiBHD64QLc6WvFdWS2kerUfFWLxBhiRuTu+jbMdUsOievA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfTp/iCRA9TVsSAnZWagAAh8oQAJLvrU1NuvaPrbn9d0G2\nO42/pN1Ncg7sthFW4FiD0qXbSEuxaRVCqmn761yR5sh87dV8NTQFC3KJFqzX\n1VBSx6m++bnKlB1gK0uoEfGmGNV2uS4WgkgFA1vl91V5XwCbRlOsjkw07S5k\nUk58Tr71K5OQvxkb7VoZ29bIt2EsbFiw2Ba+WZUuXkgmc3FbxHaFGF23yApD\nrJP2gfJ9vj2PBaHEn+1S2P3A+06n5RlKU8/TDXw4wyzQP46ecqhabuGgg78F\n6eAg0Ix+E2ySso9uprBgHqfFrUSWLDbKSkuKnDzB6nW9naW1O49k2ITXAsVg\npu1DYD57grtsQv8vjfeLTk/qp1zLqLzE5gsfyz9/NC2oMaHgZFWiC6TWQYvs\n8PIqBQiRWMwzbC7dZwzke5VQN1TMZMDQXdNputgjnbJ0UBH4aPwB1Uujbkhl\nhmgb9CUwsh/GUVibXjgOuhCLTtn8adKZXgOAjdNIkXaHrqhsnlBNzE3rctlu\nX8I14zdQMHbDGZpL6nfRfl2vBTOHvVIcADslqcstAtP2KdY7FbQGIE82O4qY\n+qdn/0O4sQoVJuCMD5mZcB+4+IlnfjQrvYduv1GpMGVbz3UCx7/b9N4r/BhS\n1OjRCsNpTorFmjVAmdNwZI6lXqtvI+3B6qYBcMZJMjS8sjt+K53F3v397fnD\nXHsw\r\n=0GU9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/src/index.js","name":"@opentelemetry/plugin-http","types":"build/src/index.d.ts","author":{"name":"OpenTelemetry Authors"},"readme":"# OpenTelemetry HTTP Instrumentation for Node.js\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 automatic instrumentation for [`http`](https://nodejs.org/api/http.html).\n\nFor automatic instrumentation see the\n[@opentelemetry/node](https://github.com/open-telemetry/opentelemetry-js/tree/master/packages/opentelemetry-node) package.\n\n## Installation\n\n```bash\nnpm install --save @opentelemetry/plugin-http\n```\n\n## Usage\n\nOpenTelemetry HTTP Instrumentation allows the user to automatically collect trace data and export them to their backend of choice, to give observability to distributed systems.\n\nTo load a specific plugin (HTTP in this case), specify it in the Node Tracer's configuration.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\nconst provider = new NodeTracerProvider({\n  plugins: {\n    http: {\n      enabled: true,\n      // You may use a package name or absolute path to the file.\n      path: '@opentelemetry/plugin-http',\n      // http plugin options\n    }\n  }\n});\n```\n\nTo load all of the [supported plugins](https://github.com/open-telemetry/opentelemetry-js#plugins), use below approach. Each plugin is only loaded when the module that it patches is loaded; in other words, there is no computational overhead for listing plugins for unused modules.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\n\nconst provider = new NodeTracerProvider();\n```\n\nSee [examples/http](https://github.com/open-telemetry/opentelemetry-js/tree/master/examples/http) for a short example.\n\n### Http Plugin Options\n\nHttp plugin has few options available to choose from. You can set the following:\n\n| Options | Type | Description |\n| ------- | ---- | ----------- |\n| [`applyCustomAttributesOnSpan`](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-plugin-http/src/types.ts#L52) | `HttpCustomAttributeFunction` | Function for adding custom attributes |\n| [`requestHook`](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-plugin-http/src/types.ts#L60) | `HttpRequestCustomAttributeFunction` | Function for adding custom attributes before request is handled |\n| [`responseHook`](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-plugin-http/src/types.ts#L67) | `HttpResponseCustomAttributeFunction` | Function for adding custom attributes before response is handled |\n| [`ignoreIncomingPaths`](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-plugin-http/src/types.ts#L28) | `IgnoreMatcher[]` | Http plugin will not trace all incoming requests that match paths |\n| [`ignoreOutgoingUrls`](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-plugin-http/src/types.ts#L28) | `IgnoreMatcher[]` | Http plugin will not trace all outgoing requests that match urls |\n| [`serverName`](https://github.com/open-telemetry/opentelemetry-js/blob/master/packages/opentelemetry-plugin-http/src/types.ts#L28) | `string` | The primary server name of the matched virtual host. |\n| `requireParentforOutgoingSpans` | Boolean | Require that is a parent span to create new span for outgoing requests. |\n| `requireParentforIncomingSpans` | Boolean | Require that is a parent span to create new span for incoming requests. |\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-plugin-http\n[dependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-plugin-http\n[devDependencies-image]: https://david-dm.org/open-telemetry/opentelemetry-js/dev-status.svg?path=packages/opentelemetry-plugin-http\n[devDependencies-url]: https://david-dm.org/open-telemetry/opentelemetry-js?path=packages%2Fopentelemetry-plugin-http&type=dev\n[npm-url]: https://www.npmjs.com/package/@opentelemetry/plugin-http\n[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fplugin-http.svg\n","engines":{"node":">=8.0.0"},"gitHead":"15174c6647ab9863dfc1424412fa60f2fddb3351","license":"Apache-2.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/*","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"},"homepage":"https://github.com/open-telemetry/opentelemetry-js#readme","keywords":["opentelemetry","http","nodejs","tracing","profiling","plugin"],"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 http automatic instrumentation package.","directories":{},"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"}],"_nodeVersion":"14.8.0","dependencies":{"semver":"^7.1.3","shimmer":"^1.2.1","@opentelemetry/api":"^0.11.1-alpha.48+15174c6","@opentelemetry/core":"^0.11.1-alpha.48+15174c6","@opentelemetry/semantic-conventions":"^0.11.1-alpha.48+15174c6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"got":"9.6.0","gts":"2.0.2","nyc":"15.1.0","nock":"12.0.3","axios":"0.19.2","mocha":"7.2.0","sinon":"9.0.3","rimraf":"3.0.2","codecov":"3.7.2","request":"2.88.2","ts-node":"8.10.2","ts-mocha":"7.0.0","@types/got":"9.6.11","superagent":"6.0.0","typescript":"3.9.7","@types/node":"14.0.27","@types/mocha":"8.0.2","@types/sinon":"9.0.4","@types/semver":"7.3.2","@types/shimmer":"1.0.1","@types/superagent":"4.1.9","@opentelemetry/node":"^0.11.1-alpha.48+15174c6","@opentelemetry/tracing":"^0.11.1-alpha.48+15174c6","request-promise-native":"1.0.9","@opentelemetry/context-base":"^0.11.1-alpha.48+15174c6","@types/request-promise-native":"1.0.17","@opentelemetry/context-async-hooks":"^0.11.1-alpha.48+15174c6"},"_npmOperationalInternal":{"tmp":"tmp/plugin-http_0.11.1-alpha.48_1598988258400_0.28945168355493966","host":"s3://npm-registry-packages"},"_id":"@opentelemetry/plugin-http@0.11.1-alpha.48","version":"0.11.1-alpha.48"}