{"_id":"opentelemetry-instrumentation-amqplib","_rev":"50-32c0c86cbc28efcb73c3d094bdae8299","name":"opentelemetry-instrumentation-amqplib","dist-tags":{"dev":"0.2.2","latest":"0.27.1","canary":"0.4.1-aws-import-one-serivce.0","alpha":"0.0.0-2022-04-13--14-32"},"versions":{"0.2.2":{"name":"opentelemetry-instrumentation-amqplib","version":"0.2.2","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:ci":"yarn test","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.17.0","@opentelemetry/instrumentation":"^0.17.0","@opentelemetry/semantic-conventions":"^0.17.0"},"devDependencies":{"@opentelemetry/api":"^0.17.0","@opentelemetry/node":"^0.17.0","@opentelemetry/tracing":"^0.17.0","@types/amqplib":"^0.5.17","@types/mocha":"^8.2.0","amqplib":"^0.7.1","expect":"^26.6.2","mocha":"^8.3.0","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"_id":"opentelemetry-instrumentation-amqplib@0.2.2","_nodeVersion":"12.18.3","_npmVersion":"6.14.6","dist":{"integrity":"sha512-nG2mcjGI6ADRQmS3FlOcY4l4RXleTYISmsssf0owFynReZsT1BN0AoETLPplbNSXJhdLoIiDzWwyscHQqkWblw==","shasum":"c0c5b04400c0bf6123e17eaecf0215ac61b9d3eb","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.2.2.tgz","fileCount":13,"unpackedSize":24448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR2dcCRA9TVsSAnZWagAADtQP/AkN1fut36A+7ASkih57\nMSUvyL4qh+b2mTFVoGuYpg0pF/2CGXAUR66dAwBqfGBrpB6vCehR3eXl6dha\nHfa9fv7mThfas3jsxZ5uLHh25X+v5tUEUAS2VrYD1jiyCz3/JYHMZTuWdgcn\ncTQ96phxAuKc/t0NspGuq+kd4b+e5XkEdSfEfiD/bs25RnGEsNEe1n82qIoE\nYCT6+Q6ele5gbRdQ+ktv0yixVOoBOGwSIlWwsphI+dQml4YL25y7Ibutr9Jk\nZDKFTQqcHBNOJNW8Gmy3YzbAgOCOiNQYD5G83jGXyjJt0ZVwnLFiol1wBRzH\nrrspW/zgoGqxyyxKdasxR6PiAp+BJFZwiEL/6UgwXkMSYKrSUeT1S+R5QILz\nkuN+7hSlaD7n0pu1I/SqTqwSUDjyKmtn0id93DwNw3SfVCQGV4qDT3vx0q94\nkhBoerveKk/F35Gssb7EiwVMO5B+agbL49JXBTr/xG9GkjlX/X2EHmZ2QWY8\nELm1V+PRL1aPS5T21c8YbmyD1ZlMGmF7QgThSQ0kI3wBfVle9/OCi6+D4vFp\nTK6LnoRumLmOeFgBnCA3QA1whQZtA37hYBcxYzaHfCoKXCTjlBapURudBHCU\n0h3eFqgjZoa+yO/PsOqI4FMA0E8YkMehvOV3wlN4oiujEqKMVJVzrW48Nq2r\nzJYC\r\n=Grst\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID+GTgmN8NqLONuhSEDQ3/ptiVaD6nXgKhRq3/Pi4sQZAiEA5vTiM3Jb6lsptpbK0xqeyBusMDJJeC1Mx87nRxWodkU="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.2.2_1615292251676_0.9280094602356572"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.2.3":{"name":"opentelemetry-instrumentation-amqplib","version":"0.2.3","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.17.0","@opentelemetry/instrumentation":"^0.17.0","@opentelemetry/semantic-conventions":"^0.17.0"},"devDependencies":{"@opentelemetry/api":"^0.17.0","@opentelemetry/core":"^0.17.0","@opentelemetry/node":"^0.17.0","@opentelemetry/tracing":"^0.17.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"dfc298acecc0e730ce4a16689392cbd2d04b11e5","_id":"opentelemetry-instrumentation-amqplib@0.2.3","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-FdiYbwu6QwAvqDFm7bslEkftO4gZkiqSyhRRUl+rZOXATLorMHt0TIBi3RTXkApHVa+u7vHGfV+IkRDRTJRGBA==","shasum":"4b8d87efa11c53600c378b6d253384fd46ac42c4","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.2.3.tgz","fileCount":14,"unpackedSize":44038,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT4G3CRA9TVsSAnZWagAA8I0P/3h7nmb/KypPbwOKjRju\ndKluS7G/ufrSS1maVQQWxparuuWjgloWSrheB8PIb6M9Y3j1+7lFD9pDUWR9\nsLLXqF4+Kx0/JIq6LPdVEpwByUKGSKldbt/s576YQlU00IxbDCID/ohaLRqT\n8bWavYjDGyiF/T+ceTPR1obQpCuBwhVsLJlFCNmy22hlnAaj03UqyvbdPT1B\na9Z+GPEP8w3a+eKepOd/7CeEzw43iUVgvCymTfhij52p0hNwiASrgm2r7nE7\nVrk7Z8+4CtWWFjXLs9kkCpa20UDiWmCpKH86ZQceHnXx3N/9QduyIG8GYmwH\nVXrxJ1ZHXygxjE93eHpREMlvzmv0Kc0BiSU7SGS+Z9YsuULhLacdeWfeJvZ/\nEuwR13T2tRqWtQgnNvZgvx7zKJY0P6YSoAqQoI2nYDAQrNXPgTk2ml+yB6Y9\nw1hnCZMTLSbyuEp+2nun7SuBfNbjz9pc1A2PbHxu6djbCCya9DMnNPCx3E1T\nnAgZlRaw1ktDkgAIaXardMAE8DRW0U3bsGR9ZK19G5EBKUB5fK5jWV79oyip\nHCQew0Cm8kpdm42bSIVDX3eXKHJI+7XOQGx/7D9ESgZ3vAoatSp8dM/DH7tL\noI3qg41OyHLW2EaXvaA6WBtRebkn7l2t612W0nuCXUtcZZcLVb/yRgHcBB9E\nAqRL\r\n=jLrg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMKklDfJCtVjVgG1eGBhHP98HWOQbb41jS8vC2GpdqLQIhALMF5wqEG9bGO0kTsVNcJ4cUuis7QzO/1ky/JQD60AR5"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.2.3_1615823287041_0.485173522703529"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.2.4-aws-sdk-v3.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.2.4-aws-sdk-v3.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.17.0","@opentelemetry/instrumentation":"^0.17.0","@opentelemetry/semantic-conventions":"^0.17.0"},"devDependencies":{"@opentelemetry/api":"^0.17.0","@opentelemetry/core":"^0.17.0","@opentelemetry/node":"^0.17.0","@opentelemetry/tracing":"^0.17.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"b344d60d0514c4e4487a12b86248995c16768a40","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `strAmqplibPublishCustomAttributeFunctioning` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `strAmqplibPublishCustomAttributeFunctioning` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.2.4-aws-sdk-v3.0","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-B1R/JAPifAv/Vo58qXqeKqBUwaDuVGqKP8AFhrufJCg7UTrH+5KHqcEHfopWGDseIFBmXwGYNGXwxQg7VMjFxw==","shasum":"2267490114fc510def9e443703b790712b75552a","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.2.4-aws-sdk-v3.0.tgz","fileCount":14,"unpackedSize":44059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUKHWCRA9TVsSAnZWagAAwKIP/05q6d09XN0nu8MELnYC\n9sWXgte1Sga9FAbYcwangehN6fVn0ufuW7OxvRpTkqaJZukZmcMHwHoQVNYe\nQF4rO+ozCqUcYnKP/vMJKsfne05ICkb5fDER3C/OjGMvA4JeNDUkr7BGbCvZ\nwppCnQO7jF+AHMAvdHoXciH2uFRxr4XqlgqmjbyEMpMv1ByA3c82pqoeJ0an\nv/Q9SiXQ87s12HuD+6tQJNVufBaS1q81idvCNyEFFn/X29Qu4R+8tiTILw1t\nIxtYkfm5DDnOYXrPoSXljgrCrDeSFUb9+PUYtfChjsq5pxds3v9dHPlDXUmi\n5C/722hur99BE8aZLVtUzT/R5hWHzft5VrDTEeTZ6I2FrEL0Xglrgo1RTetW\n9E0TclgjHiAdW/pKT7jwSaL3h0FMlN7IC3nImXvaqTb5Dl31rZzY1vxcOqCU\nGY41mzj8BPZM41MHXPLKHb9MXYtOKD4AmlwYq2bSzz2K6VzqwySVmokTLP9W\nDFe8vFafiBhRrJQ3IDTX+d26SYSHLdzIOMhMN5lNmi3jSSgIVTXGIrnDfTh1\nXGtzZDuspRFVAptSpn96f9iXfkv1G8835bwrWSzt3Kk2wH4GzECpkzfnCx0y\nihljcbbmzTXKYZpQ3Wp6/k2ds14Y9J4Enw1k21zbb6NvztTpRmnks+zGgFhc\n8lt3\r\n=wTi7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHpaeRyV4pEhbMiuIRl7UppTyHAwOTuVhD4OcnpO4oa8AiA/1uGniVlmoxK0yfL/mbyMWgLputQPDnXgcKfD7rJ3SA=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.2.4-aws-sdk-v3.0_1615897045544_0.9258123146747175"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.3.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.3.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.18.0","@opentelemetry/instrumentation":"^0.18.0","@opentelemetry/semantic-conventions":"^0.18.0"},"devDependencies":{"@opentelemetry/api":"^0.18.0","@opentelemetry/core":"^0.18.0","@opentelemetry/node":"^0.18.0","@opentelemetry/tracing":"^0.18.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"3ba0a68be6bf32167217136346f1e4968a19e11e","_id":"opentelemetry-instrumentation-amqplib@0.3.0","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-kl5mlKAzhXOlPXSHevXRYoPs8pgbTHsL+4GQ5TESGjHW2knbrX/nGWh5ZEe/IPWI93occ9puS+HUt60F2bgk3Q==","shasum":"06675130b466d61553f8d124f24128dc69c20d56","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.3.0.tgz","fileCount":14,"unpackedSize":44514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUzFECRA9TVsSAnZWagAAl4AP/3VmwjhzQ3oTdbRqRgni\nmm/shP+8Fi1Mr3XV/Ay2PIaj805YuW/OcNqLSUF6d8C8fg1wApPkoxtdBGah\nnrTi6kHXy52oK3TbTvB5+MfTp8bJTLll9SUEz+Xs3NC5m2sQ4DLTAeZxnM+a\ntRiThQSZ4u3On2AbnCzUShCvGTrJ9ydt5lXVy8sgWq4GLIwAJxfo3ja39gzL\nLOqWFcSLm55It1Ver26OP8VSF4u5o5z4ePnTCQImHVSTHmweUHhYZSxObTSo\nnlC7CnnCiXYT5YoHPZDy4LeCnu9+DigY3uoepWvSkyIurUJipZU+fhlkNi+X\nbEuvOwuMfcMy4YhmtBsO7lmVniGQcL6IFIJBwMrwoZsjr6DZtLg0GJ1IkAbr\ncndzbaSiVVvBeq1vpCaZ91TanjTAB3vBfZrfyILZcmjX8inc+1gWLwHxdxet\nhv8k3mpthnEXS19eYS0KxFG/qHiGuqEU5oiQIqCJIvrm7Qah9eaHj2MEXUgD\nGedpW+6hw0YH+9QbxHpq33GU36vgoILYMFr5Cydy5aRcgzxLKrFiobE912zI\no3fceXbNDiMRuWh+D43TfgQU9Hm6KLalVEVNWT9op888rqW8ugNZ/TwC4/zL\nvvBXxw/sHfDGoo7LxhZFTbbA5mbnGyWke2el34+CTjKXyQ/H/dtm1xOe91Lm\nM8gp\r\n=ACIp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEiTeRoyFDW5/Wq1yxRKIGlBEZ+BrbAbEmLN+DttjWK5AiEA+haB8l7nSPZPZL72NUSO/A9d8T/Eo8GjSQVyIxwY63g="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.3.0_1616064835746_0.15815926223077326"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.3.1-otel-v0.18.1.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.3.1-otel-v0.18.1.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.18.1","@opentelemetry/semantic-conventions":"^0.18.1"},"devDependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/core":"^0.18.1","@opentelemetry/node":"^0.18.1","@opentelemetry/tracing":"^0.18.1","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"a196240634fd4cea8df6b5af60963bb7933c696d","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.3.1-otel-v0.18.1.0","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-ygSeDWep87WNLCXN9ti/3/GCrLS+qgdYn9YyG5b6kgOoMAkhdHoW+c7fUZVve8wXRhbxVg/gTzT2D+8OS3eeKg==","shasum":"d95780e90c62e7d018d6b07ee55a42ba6924b8df","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.3.1-otel-v0.18.1.0.tgz","fileCount":14,"unpackedSize":44545,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYwRxCRA9TVsSAnZWagAAST0P/06hPmIO7WPL/ILdSIth\n+zGgpZkR0jz6jbzcUZkK6BijMYlM6MuhNMiPhovEDiq2P27wWfLTBiML4NPR\nF8I0bqEjtQTKrryBUyKm1+aPx1nc3y3FSap+1jwCAwZRYWOeLODMVFd/wqOG\nrLnitgO7TFq47FWbWUpBW8RXNITL9PAY32LKsDd66m1BYUfNNl13uBYHaifW\nHW7IZ/pTev8ss/TQ0T57SzF3FKXgKDR4JUO9r0NSV62j1WeezQGYf7Dqxa/L\ngZhp2H8Sh7r+4LhLlIzyJRtDFgDFX6fpCKnCcwr80UXE/ghLF4d5qmObCrDP\nGGM/R0olVUMgH0cw+PC0iT0+hlY5LQXdRoAho6E3XOI6Iu79T9+k1NIHdo8o\n+2xeZIo06MJBrGAhMfuUkYyf9hnxzZ2Hcl0efGQu19qeLdA23+ztHo+tGczj\nLp9ecsggTRv6GWZCuC4+9bXBfshEwqxLKFHzxbUCXxC8eUoD4JpdHuhjdQfF\nkY1Ujzsa3zpVBndJHChXIuY81vMGD7ddveqqcCzoGq2spNvMjBR78B2TRDzj\nZLZGoPu8dHHEQClaEDWpftrEDw7t4Noo2wvm5tOjSyLEFRVqiSDdkmeuNR+t\nXg/Sab4jLfbxM448VTxi5RoRGx6aj2zebtnScOqr97ZGU8GldbqebjDs6SWX\n/PuO\r\n=oJs6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFed+38pTcYl2nN0XsT+ihcrb31/Cij+xmZ27PEaTPmcAiAzl8ux7yJ3tTj54rJZoecJ6BjxKXqGG1KAOh5LrauNbA=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.3.1-otel-v0.18.1.0_1617101937335_0.7200216075660488"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.3.1-otel-v0.19.0.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.3.1-otel-v0.19.0.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"62794a132c5369023597e9fc3696a126a07b2473","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.3.1-otel-v0.19.0.0","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-5gP6sF1gTHPjbJDfFrhTZOpuR2KMy/1Xu1aqRWrxB14zIYg8qM680Ru16laNIXr1rcIyBniFiVP2aTTJwx9lTg==","shasum":"a2eac22cbabe36c6700edad5dbb5fa3b27cc9375","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.3.1-otel-v0.19.0.0.tgz","fileCount":14,"unpackedSize":44536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiB7JCRA9TVsSAnZWagAA1vgP/0ody058I1nyYJ/9Otcr\nfu8iPWxgfuhS0vNeEijBSZnOWBmFduqchud1Cq0ChO4tWR76a/DVfxdaidO1\nD9upctdhuZMDZoSTmmK1JBWTTGoEOwYi6LZwE0b9HfzboCuroJtTgflmEs7a\nZWP624fgyl9m7uihQhRYsHRMVEKlpzD19QbSLyKoZjmF/pdF3yGCbFZ4Lesy\n780BVsMXQekwsrp1NvWVF2w0OerOyOVGHQQK9KEYdubextnlIoyXo7dzKXYh\nCo103WIVBf8sTrUSTQSVhU0mq030IYlAaMoan+xeARMeWVExdZeLINwPkm91\nwSxHWW7PXSY37vZ96kIAhL4AL9ttFbhqpsbCKsK2mPcrJdLAaQIU+6Dkiq+R\n69/LSS66I2OaVppXfcp9IuDdgHXgFsB8gJkAThSv9Y1nIXBOSrEsDGytP30s\nXfqveG0FSkf6NGCyYYZxjuKHCvO058P5BBap9ng89EaW6ksEq0R3G+JOchEp\nGTYKcRKb5HVzJlcZlCGAikdu25OgPO/eY+aPnIPONPXE0DLFYDt36Lr5l2ny\nvIx7McjeUXH3cP2Jhf3BxC5HJgTOrDA7KcyLwUO70RElnoLIl1xdseY11iO/\nrAUGbMqpZombxMnnjaN0Cx5hctPIHDYuZO9W1B2X62LeFCRqFTDIjObKElbg\n/bCH\r\n=MP9v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG7mheWqtYBOEnI7lhNBnr87PKooUrKBTJBdLIP9IPlBAiEAqMmsQ1Gh0Fipio3OcEpjUpr32IU3we56u0cdw+9svkc="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.3.1-otel-v0.19.0.0_1619533512441_0.17401539585931491"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.4.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.4.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"1b74b8921ed523dbae077042585dc4feda0d602b","_id":"opentelemetry-instrumentation-amqplib@0.4.0","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-byfZJa5aw0fPKFIVguOwHPuLgED4DQFAnevEBbN32utT/pESQPoZxwcLSN5TK2QvyU0soqdEQwoqwdko2MTqvw==","shasum":"814f630f1c2fb6e11cd3ed227f516d2fb3b787ac","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.4.0.tgz","fileCount":14,"unpackedSize":44771,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiQXSCRA9TVsSAnZWagAAxCMP+QFyf7sL7HpVoa6b6BCa\nQM5IQ2MYhNXdMEf78IqiyH28DkLF9PS0g7bCf4zD1lHtz/m6guhFXq8JEg0j\no0RC3Eqor7PVLNnXPp3g0JirkflwygQOZszOM79Ys4mHWJXuYjuAbTLN+CaB\nFsWGwdIDtTRIE4M7aVxOQjZOd9MhdfLI1tRMmoA9AePSLTMeV9bqY+m3WVuT\nX3Uqb2yoM4FB2dwPE1urdeDUmi5TfyLSuTkGiqmcD8PG5nSnPV9aSqibgPim\njlObEGUhsPtJ8nJkE7mua/LnRKm8uhTLvLf/5wnn3tb+v+/LoJYZNoFZKG1J\nvKL/X3InJqEUfUVYo3LsczsBJGxkTEy2MKe1ENcoTyLo2pQpWcJopC4GbIRa\nG0DB5EHzwaBa1tpd1+z6lK4y3kAi2S5Vk8mk20hgLoaJA6BY4Vw/UDBIwGQ1\nRpd1NegzLcff050VyKlR0w9CEhNEFPu+EJqQAM+IYcnNZpioVmZFe1E/Ohll\nS3BUH6QOr6ahdNZkQMOb6HQD/88NVXZ7MGo1sRQr3s3v9DOZ4NTiSsG7+dQo\nlv8D6CAdm3gKsKmxxBTk4m4aoznLyutYlr0JXZZNUTnU1O7AFwb5ns0uLA0S\nvlvqhy7XcYbZfg1gOleMo93xwfLIRJ3OZtiAhnCqBnJjIvwQH4g23xenMVTw\nuLXZ\r\n=HdAs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCP6geql/J8ZGibzo/vZkn/dRd02UH5vsydZ0rjcr4DGQIgTbJqH7wUOr47OQf/Pg1nlfsjUe4luDIPtF4Eshgn1Rs="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.4.0_1619592657859_0.46248108890705697"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.4.1-aws-import-one-serivce.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.4.1-aws-import-one-serivce.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"863754d3c18e4293fec89dd79ce086b31cf4ece4","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.4.1-aws-import-one-serivce.0","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-3R51HV7lbR3ykqIoLggnj0dzP8F7Sh0nKxnGMi9jQXxeYA3YjMh/irPnkVfzUJ+YD8WF0lQYMg0+UFzrEVOJoA==","shasum":"cd62c2d99f47a70849449d3893db00326d8b764a","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.4.1-aws-import-one-serivce.0.tgz","fileCount":14,"unpackedSize":44804,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiTNDCRA9TVsSAnZWagAA8VIP/ROe5mlzbfYb0gcCV8xU\n1l/WW1scvukSGD3rDzwlp4qaq0M0gAIJwUF7HUf+At3zjrYkHn8TQIIjW6hd\nHELQ2xK1z9GUEmeg+Ix77FpcYOat9YQtOfNR4kecEHToz0UC9hTFC8sjkTFK\nSssdlO9sa+gkRh6AeBZvDx+U06GZ3npzEmsWp0pvwruWUZSVtRTQBEc46BzH\n5Y1GEssVYWdjAWpLbVyGKu8IdVTVc45i03MxlChfCP4x06rGA68EO/SgCo2O\n/IAvye7wPbG+DHqKpIwkGo3IWDHjPjLHvue5/vfWumNqbvYiQyvXcS9BOqBY\neq36QOY5FsHxfPHIp3fib/aEfupNST1gOSWuGQos6jp1PvruBstuP+AObV+c\nZDImAndbHIUIErnp8cbSBR4t38VAmnT7uNdaoUvWNkUbc7TLlz9BewMvp8Dj\nUDruPq1lbS9ybE3ak27ilDVbFfJIQUdWQh4V+RJc+2RZS0tA8MdCUEcj1xQc\nNSz9mWrT4j3/yfJQjy6t9ojmddnQAHvuSc/c0HIkYidgEB3DtuV0BZaJfe3m\n0eq3lMKMsz4jbw4XmdHekre3QJKl7h7CGqcOM+0EG8vBvcW6O3WKzdunrfkL\n4MeYn4sIq4F8ZZkrc6AjudGq67sMP7nfM8PeFj0+aDKpBh4hxb4XigRUKF/U\no9rB\r\n=IcIK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNdquoEmBxksdekIhGFxYqpKDqNrWYnj8faC5nO06FsAIgNuImoFCrfm88SN7kbEsg+GBFpGCkyXR9qmn3IlwH0m4="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.4.1-aws-import-one-serivce.0_1619604291115_0.24546575224605993"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.4.1":{"name":"opentelemetry-instrumentation-amqplib","version":"0.4.1","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"1.0.0-rc.0"},"dependencies":{"@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/api":"1.0.0-rc.0","@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"51bf5256ec5f0e623cef5705be9fa04a8a829b9a","_id":"opentelemetry-instrumentation-amqplib@0.4.1","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-NlFAibrnSfPshRDZwnjvy2ocEhx4hfzeEyW+WY8p8NEu82x9FfOhv89s/6rzrh+HvRZbd0CJQOvDa6jisyYK/A==","shasum":"0ac85e9917754d72d5b02b7a9c7460e395355c2d","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.4.1.tgz","fileCount":14,"unpackedSize":45105,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpP3sCRA9TVsSAnZWagAA/fUP/0DsCqnbNZEF8GxNKqV9\nBhrQxSQ7aPmDoe1lX4QkuVflIC05UkPN7b16h5nQv2t9LxxpJ/GKD1V5/9IR\nAQQrQ4IWjlY9MzapDPCy6RKi1NzUxZIkiGXo0sGwpTt5TCn/7iTfpT4CYkNq\ns/IjEH88RqyYvVVGjBD5Zu6E6cKXThNzs9kbxMESQ5vVQ9IiHAmUbEScG885\nPrVtnnPrS4AemkRFDYDvns97fFIzISKv3De6Qb8A0o8oUxzpyjC/4Nl/tKAG\nN8WCAumkjmz7Mf5UebthC9GwDRpptxaFf8ap/L+BLO6tkM1bd5WzX7JusO25\nGiyEDa8wVqFoaIaKQFQTipkp9b9Fa9Pk2Sukik9/wgFMBPrrorCAPisioRS2\neuMlfQ69prkIHjsD/SEL6SWVxTDNCk5zmJ5US/EtZ9E3YPHe1gW5o+6/k0yd\necAfGERt/YVOF05DYwWBPor488Q0qXz6iWag7ynv8aVk5xaVNCLCLLYp1fph\nT6QUIBH4p0rnZwxPHZ3XaUPCRQRXXr4+ETy7M8SDhIt6POh3Bvh73n1SuF1G\nyEWy6AUMq2DHhi3trW+k4rH/QddWRCe4Y1V9ZK0qjfQszIdrdgk5g3fhgVy6\nCjxv4ZY+GXf33FwIjo8x6BNI6PVmJjYHGayG4lj9UNZQcVbX4sbBvSS1+ri4\nu/30\r\n=Uo5Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXPAIxBmMH5nR4dOZDh1TY7Eo07WabuFhOeD6eu4cELQIgJVSnu9ljL0/k961sWTrJeBZi3T/Xr2OBYW397/abwDI="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.4.1_1621425643710_0.17431077490256608"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.4.2":{"name":"opentelemetry-instrumentation-amqplib","version":"0.4.2","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"61891435509330061efea9e3ffcdf34b80a584a9","_id":"opentelemetry-instrumentation-amqplib@0.4.2","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-ivOXUt7Knai1BgNk5GKsrJfO2f3OA2W3ytMKL+TzLHGq7/5eiIGY68qra4n4xGSZXj2ElfaOAeCXhBYHNoEVQw==","shasum":"686169ed63fe01bbc786337f92bd4d4ceae1d3d7","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.4.2.tgz","fileCount":14,"unpackedSize":45289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpR3sCRA9TVsSAnZWagAACB4P/j1W1k+gu49qAPtlOmTi\nlHs62IQRn7w+Fdw0z6vpWwZFJvZ7IxqjOOyCKfJT7s/d8NdwyckLeXaN632T\nNGNmRKxjWFz3/Iu8buDI+a+CEtesv1NtqW8jGzh9wKivj/FZ8VSXjiMopbzZ\n5FhGihr2vA7TA+85g9z17zlhYbTAjLbQ/+izvo7U4OLqUjEgcZovuHPhnNCu\nnlSx4WPjs0jsn/kqCQPxFfrAnETloiEIC5JKy/P1g3fkRmbZnGwhPktzm3nY\n9Z819TIRatQF2l5oKYIlu60IRT4QYeNfCoHRoHh7H2eGDR26cxEvRPCYGLBC\nGuuHCoF7Rpi4mJ8EjShtfQCnqWGQzfTK97hwSsIJUy50qMpLheRL55Bss16/\ne3NGdoj6D76mumX7Bu5rcqbUXmDLLS6Vy3IbmsiFt+/x0xElKf0xPN3oVJOV\nawHocUTga7jl74pi3oHkKvGLC3o2vPhrLZ47h5EdU30ntMMagrUoRmsD0Q5H\nH2KyW6Z0mHhbDVxikNPqHOrjfzJUslcQt9Ew11MD5Y4R8zxF2iJR+UklBFIW\non9e2Dl37qtkXP2XXYHZP1xrGGggUWN68OKSGCSvzpJj8ZXW59QA4CPeeK7A\nSMJ97++qo5+x21hPoDyPXLZJVHR/gipIt72DAGC4E92lIN/xva6xHRM4p0Gt\nYKxp\r\n=+aOd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmkdFQrh+h2UIyGW1bKnA/IEpQStT0YkmgOTvLRAF9DQIgIl+2+3RRromu9FiXg+OgqlDn1cdCYlJP20j59Rcsrvc="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.4.2_1621433836310_0.8360822627449178"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-05-25--13-03":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-05-25--13-03","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"bd533753ec41cf4673d0393c42ed081d3a4e4f34","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-05-25--13-03","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-of4UGv/XVZfzC7Yq1Ko5hVGi5Wn6B+5YRrW1uohqoFNbTqY5bJvbNMYUGxZ93DLOIl7GZuv6DsLqdoq/ydhlRg==","shasum":"3f5fff13b5e5254ae4c9be3290c2b9815eff8343","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-05-25--13-03.tgz","fileCount":14,"unpackedSize":44825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrPXcCRA9TVsSAnZWagAAgsUQAKUDIbfB/ZiwzpyaYs4i\n4U5IR4dmV2meCWbg26bBqvF2rj3pVXXNEEbaSywkD0KlWPdjlLtPAb2cmhWZ\n0aW0WG5OyYR0EJBjzL2tD4ltmyFdfORuNtyXqsnzvrvmfTs6IsoxcpU1i+/q\nztyl3wCURirVdjv6IcR20Wto0TZRvzv6yihCgtz2NTw4C+L1BtxDUyEgmZcz\nHkO/jXlUiZp38V1jZNSpIS7JY/Qzzr4y0ra6xF306AGhnfI32b95Nmz+4SAR\n0huyRPpxlzTIYmsHB/mjNNNZ4X9gt9ubMZhv8ZcjyMu763s5Xq7gVZkG10Wv\ngakBneJ3L5kzaDRdcuVhiVrTIl4hIdaxb6KbDz2cqmq1jXUiFnog6dt55Jdf\nCMsXzxGp0imM4cRYOHssoF/z/3qLFLLPKh0Uf8LQYhZlfQSYfRU2277ZqzxA\nLOzAPMNWmfQUSpTkeLiqxUG0GwaohA2v7HWRn7eM5l70NwJgZra4LFLIs0H4\nBx4W7feUJmQtZlaFckgaIZgso6FQNVGIIGX/WZm3c1XLcfJUF2vSr0xvW0EG\nlXuT+j1sXwH88CxqS6t/3n9DuKckE5AkPAqbliQiQHbQZPFA8OoHUDL0VRC/\nsKrY0OJbkw6WlntXF9Asl9qFeXeBZCFegC6hWZMSQwxA9PxqSXQe5pwxH9g4\n3zcF\r\n=RIQR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCtYPzACUva0q2uzETU+yLYsYVvUnTLcYWefeoiXXi7dQIhAMspvd08t4s7cdsLBHnd0Yh1hPD3i0EebZJqmDg78mxU"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-05-25--13-03_1621947868371_0.5436608174312867"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-05-26--07-22":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-05-26--07-22","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"2b31e4e63d0670d8067ee32ba46ce1979d17a6f8","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-05-26--07-22","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-Kl6f0pHNgrgCxEHbAkmpvQMVeg5sSa0AkjAEh43FngwGjNuhyk1kVkyuNMTkS/t/rACAgjmYGOdrE6/cyKsayA==","shasum":"759daf66ca93abd210861c5f052cc3debc4585d3","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-05-26--07-22.tgz","fileCount":14,"unpackedSize":44825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrfdYCRA9TVsSAnZWagAAQAQQAJnU9a4Q6E7Aj4nDB+v6\npF38FvTCPqfMMPG4wb7cfMwOO4b7o/PjikCjHZPYYzSViKH65xHBZ5HVoO4Z\ntqeNE31xs3Izr4Me+653jg4VmTrFxw+4HZ8i8S7HfCS9XJmxG+1CzWXf5cBE\nVf6m5k2RicyRIIEySvRv+yextzdCvlR5HCKiR5wGSK7xcyhLCrQpXPFNwBKS\n1aIzv8+wPAGtAHIJS1xKR9isGkrUJKxttgmlpjxfNf2GBugpIUMlI+0bBvZh\nAAjq97O47rhEPvB8XsGGE6owhHSEGwMd7YWKfRcHGUFIlZzVYNt/02GvhgXQ\n06/fm0UirnT+10pS/Feqgj39kbiBa8SO/2opnFiI39boJfZ8+aurGEBAUeCK\nP9OhEZ4Wfp8xyzd+9QKBx3LvPHmp3yTLryNE3OOTHX0YMaCAsqsJ/gliloWi\nc5elbwZLsHyEnM1PtzFXymkkTYMrGauD5OO6Cii7+EMtqL9JQUo3aHv3vEBz\nowkD8T5egD+nIkPVHkF1QXSHLs7JhSR7Tt4vvza+cjvZZrRH3yN5uuEisBgt\ntSiBXhgiKEcLedTKdoONoqPM021xYnOkurfPlvmtfJf/snzf+0AT75khxMuL\nLyyBKS6+pbiK/a//+YFcUTSm0Qq8QP+N47Hc1jKd7d6LnZY+Y0tZ3GtZWTL0\nKuLX\r\n=U5TB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICHC1O9Ox6yIAzcKcMJ2ZToXOjW51cChkxFeTcPjV+viAiEA/KSNsCx+jvJ7XZy8ZF+wbk+tCdf1EFS1Kn08hckYRFk="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-05-26--07-22_1622013783904_0.5756151587629288"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-05-26--15-12":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-05-26--15-12","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.0","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.3.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"6f64818f1e8c571b9e7341a8f019edb26605ea66","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-05-26--15-12","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-RoNXBw0gRpfzhCWQVIL1O/5ikz3S+QwtkCBKVpLzfNKlSpQTtOW5Eehwqcjv7MnOALE7CJmT0+RvUznqoiOEGA==","shasum":"401428b2aa3e502987a67f53340069ec198d6e31","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-05-26--15-12.tgz","fileCount":14,"unpackedSize":44825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrmWWCRA9TVsSAnZWagAAaPIP/RKRtDYqI/pWfTz4rHnW\nUpP6FU7W3Fkh33Nbq42yA39q2xFW7ijf+8VykCK8zdYcenVjr83gW6nknVSk\nMipwz+fJLtZxPlKEIL3HeePS6OALG4B1mSAFuNyIGjIk4UUn2wXciqMySPp1\nYeybY8XVVssdF2vs1q2LzRBcmaLoUz75FS75TzDT2A5FJlopRq6oj1zLdXE0\nT12QByKx2MCKNtXNtvLBgrfro+xEDrWHtg9FUI7XHA6MeP/CD34jb6SXzhFA\nuqqTGgTbXZMEEX4NveL8dmshYJcgLCgf2sRww9BaZqGHRn5bXUxgBY0s6Wad\nusG8YXcBe7JVci7EFTNjl7us/P40f6+8t4rpCBqSUzDdcwmmhFN6xvFC1Etp\nd0vrOdXLJLf40pkzH49lL6YaN8qo63vv7NLg+28hStdwpzSZYHLtsoPwwRDs\n5AAyoUYoU2195+eHlkLlT6W6DEWkjCEO299VdmhkmZUOdlrgvpqpVe7yCKmp\nE7fdZlflleD7f96gkJO3Fn43ZZr/00UptbClXnphwFAdNbDNwDNDzR7x/43V\n0J50Cxa27hUKYUHcDvsN/jUK36V0RpfYoA69hW+i4aS8nFBK5U42kY0SDydr\nYpzoByH2AO1GL81t0z+IDe2KGdy8CTGeH6pu5MzUQQblrDiqPVgUmebqveqI\ntKTF\r\n=o1L+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJDsWqDwHYnnrFJ8e7n1aONltsg5jwVgXXjyGo0aSYcAIgZrxkhzfSWl4yKEQ3zNpyk9rJVMFDAyh8Oz80wli2I+Y="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-05-26--15-12_1622042006029_0.23998176251456038"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.4.3":{"name":"opentelemetry-instrumentation-amqplib","version":"0.4.3","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","version":"yarn run version:update","test-all-versions":"tav","test:ci":"yarn test-all-versions","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":"ts-node/register"},"gitHead":"0ffb67e586f78c6b091b3af5fad8656fde819202","_id":"opentelemetry-instrumentation-amqplib@0.4.3","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-XEiWmBFBwiqkwFySSrLyGlNg7tSKFkxiy9yDJ2nx7K7/Y4hUX1LDiIw56nuF4uPOw/SGFHLRtcyC7i0IJXsPdA==","shasum":"4a24d6d8dbf3e380b2869e04ea443a07c722e243","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.4.3.tgz","fileCount":14,"unpackedSize":45548,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtOdlCRA9TVsSAnZWagAAiX8P/3oih5lZYLAV+gaMn0pW\nf8xSGo+ww1H0Us1gslAP6LElRNtq2jpNCAQNTJQiVJp9xQ2P4ALJKF/2VspX\nHeAFYW6u7+hsd1FsN4Fd8VapOpVtO9hnT8MhFSO9iIK9e1tjcsUutzmXir0d\nQ+lxcHmUxyqzGtjYAZ6n42YlQZWCFfbN3GU/fjdmGnRWnCV1/fTETMc9K9vk\nxQsz8pO6118fRthkgl+cgwy20N9AvS2pgrtmjGkVpl8CY2y+9mb1QJnKPm0Y\np+UsIrmxp5z5UKKmhPetJYsA4gRzUTDVyOv5aMN3eLOpfZ2Ptl/HFICoAIrN\nSvvDNmo0Fg/7yOoGWbVgWtDf0VRhZCiXAHz5wMKPQWgiVZiMcUf3mDsUpzXJ\nQ9iadiT3NRS+nWF2XJFeP4KvAaa97TOpgEtcrmqBmEP7a/QoEfjsuvtA40bp\nBY90zvUTAYYla/6rxqPFr0xtXgpVNYcLw2ge74uJhGNX9XC2gD6H6cKfb4ut\nVDrrcRnO406XJlxbsMyuioHeJC4hvp5LlLp+HIjTd/vYJ48PmpC5YIWRBOt/\nVNEDh//Qg7RZgI6FmZJWGLuLFciMWMpql4gdZe01GmDTcb6/uvsxYK3qUB5O\ngdsiuiHRsLIzydzUnh7kTRbkya8v+SABCapH9l8pJ9LiIoqJ2YhN8uNZM9oT\nQOse\r\n=oxH2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCj+aMl88mlJ/PK+m/5tRewpZ9f24npIr6RDbPLIyG/OwIgEiXjvg0KyrCP0W55UTtFXdtPAxc/BdcJwgYex+PDGvw="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.4.3_1622468453010_0.8691706460824704"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-05-31--14-38":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-05-31--14-38","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@opentelemetry/exporter-jaeger":"^0.19.0","@opentelemetry/node":"^0.19.0","@opentelemetry/tracing":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.0","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-05-31--14-38","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"bd5bce12191c8173f30d62733cb45d2dc0feb610","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-05-31--14-38","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-i7GibCYVStH78jj72zPxUxlYLJh1ICs0mepB2hvGKa+X005FgMuve6eSzCZq3/lI5RSMggjKEy5qvqhX3SvCxw==","shasum":"32141cc9000b8f177fff56fbf0ab1619fee933c4","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-05-31--14-38.tgz","fileCount":14,"unpackedSize":46057,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtPUqCRA9TVsSAnZWagAAgxcP/iAQrqfZLQgg+mb1RrRt\nQHq968e2rup+7MNBawDP25BgG8RI7sainyPNFXLQNObRYLG6IRiEzhkAKtHA\nj9RJIZQVipZ3JsIIUhhZmzO5xBx+FK5mdqfYgyDoPYtCEbPneGklTSFXaXXi\nY8RzfZDBWdYkstbK9PJxHUpd/sfhqbwhyGC36Tqc/Dchx0owhdcgOwHUIMwK\n3CkhGfXpVnG5NIv/TSVhnyJ6IDJIuNMPlBitb9AOlk1noplCVAOEYZPM2+qK\nzo8SX1vRpz3VRgUaBdj6BatZwxLxEY9Ys6O7FqpztZ2gSHzI/I4YdsCYBEsz\nOj2zHwqWQFJZIbkWdpU01nInBrNXYw+EjPd9cSKeAiCArZSznQ8iiV/cFhdC\n+BVKQee3cNO5cvskIf9x/ksBt57RPvM2Oasia9piITm45uzxRui1YludlSRB\nEKM4X6i7buoRG207jsCsWE7eMAE8IJ3INgyep2N2evcbz7wiQTLqLjia8rCb\n0OOOY0+R70NKlptGqrWQNTH8FuCjEDQGOih9GZpi7CVvGTX5iu2e4cd7NiMq\nACCbwcrc/ivWFuj+FU7Nc5EkP9zBQJRDBznfoQoF8WfjehtmoIOHNe5r3GFu\nLGRY/fwV9kqgGmDCIYt8Ez74zo+I0x6ZcrYy5YlXSFWUSyNpz4LE/1dPGj5A\nHD5F\r\n=7DsT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHETjRsBE/qzYfRR07fXG3pONZ97nO41LLsLIWXB4WXQIhAN0Ai8tODZ6xCbxVkhe4zX/pchwQF2IwQa8QnwQVG6uw"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-05-31--14-38_1622471977671_0.7266611839838231"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.4.4":{"name":"opentelemetry-instrumentation-amqplib","version":"0.4.4","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^1.0.0-rc.0","@opentelemetry/instrumentation":"^0.19.0","@opentelemetry/semantic-conventions":"^0.19.0"},"devDependencies":{"@opentelemetry/core":"^0.19.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.0","opentelemetry-instrumentation-testing-utils":"^0.4.1","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"909b2e07091c7a7e88e29438f936bb30b6416c1f","_id":"opentelemetry-instrumentation-amqplib@0.4.4","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-zLKfbJqxz+urLl/0eQKCbgSraufHLDAU05TZfW87ATD4fDerxCKiFwiXa3kifj9ek2Z9zuhVxgyTb4WsLfCjxw==","shasum":"26d279a35317f6876d3ecf461175721248a304b0","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.4.4.tgz","fileCount":14,"unpackedSize":46104,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgt25eCRA9TVsSAnZWagAAtd8P/jtvI+Wy1jOSdSwiLeI4\nTbCAHl2sLAhIFnn5CIfDzc+8VUUJXMqXN/dWN+qEADvJYMSm3wc/G3ntTaZZ\nPBs13eGOOeyjq9AAMr5UCiCOI06yvG6egaShqV1GJaDAGIX9X75220sZdybO\n8DqhZfEyRf0NPB40qm6119S9e6bpjsInEIo//FZPmZiR59hQvcOEZD9LuyGY\nGT9xA+zRoSD/1PB9JyazaTJ8uD1DW22klLLbM6B+WpQgIHNdPiAYsBuLVLvK\nfHE1wdwM4xwUljveHbOUfzI2ha/zYg5qlJSOoZrKaaRHb8i6juvHu2NFXO7Z\nED9WlK3oCtSj9YmVo2DhtGyYFrBfyuMmSKfNPkQDDZN0ZdUgnJgtNVQEIm/H\nFqWchML884bR2wqjzzzoWptCOPsgT6sEoVigelYk9KAdrqIiqrimQQBSf3w7\n06uF2Qwo2DO09dw7/4PhD0ar+XHJW5eq6D+bO9ggpCHVHNxIfo2Q0HyRjr+n\nDxJhBThnmx8Cu0mJRDVFoCyn9nx3s1GSLEZbtOUOJqdScALg1ei7q2yl7iVC\n+AVB9XfRachwkU7NbFyvGavts9D6VmgsBihqLNkzZ9UDDXkz6VLkQjPBygs7\nti+HxKSWxC2/ICD7UkoEfbx+EFxWr9MDoldnwiUQxdE4Zvjzc+fyxD70IUNg\n1Q4L\r\n=EXt+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICt4rgCindQPWxKjKwvginMLKKV9PzTXKpM5s/dHIUwNAiBXuYCh0ZaEN5BFf+z+icV7oInH36LYI7ULXNKIRLE2Ug=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.4.4_1622634077468_0.5214253351658005"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-06-07--07-42":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-06-07--07-42","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.20.0","@opentelemetry/instrumentation":"^0.20.0","@opentelemetry/semantic-conventions":"^0.20.0"},"devDependencies":{"@opentelemetry/core":"^0.20.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.0","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-06-07--07-42","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"bb0e4af3e4a101755c22fdb692be07a6ddeef51d","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-06-07--07-42","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-NwgK3XsnVAizm5N1XLAFIZxehgwh7C6u0RPkaxIUT5MIO2hkbXXzsvKMVY/P2LDUhDdOTyD8FMXfl+V5NLvuNQ==","shasum":"0bfc088c92dd08671436b655ef8304439cd8fb5a","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-06-07--07-42.tgz","fileCount":14,"unpackedSize":46184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvc4jCRA9TVsSAnZWagAAEYoP/ihQYnAVj6K6yZ3Ja8bR\nFkJhTyBCSw1v//Rv2Vg0oc0Y62vaNLuVbiOAt5TGjcPGU+EsI/W3iI+hWiJ7\nP/MnnBPw04b4xZ/fhDp6yfJDWboAr2wqv+gD4BFnIcLhw8ug6O4vbbhjwQ/i\n0UTS80nagd7oeSeNvzU+w3XCPJ6VYol+pSug08ilMjz05qeN/El6dlhE4l7S\n9ux5CnjW74E/hSVqOoN9XsfakTK5OevVju2sFB5CltICSgllIOZAXgjuCruc\n6wTE+BYkMTGJkyqzy/eB5Z0ox4qlLFrK3nfQzJINgDOdrkmhKKqe3GgbWUef\ntPkw18OCODX3GFM4wmH/WN0BuMLmR4OY+Q/8EJa7O7mAWQC8VY5+Vy5BMgLe\nY9tSEPDTzMaDcsv2uItjLr3qEF8g4/exw2RFtGyPb6m8qiF5H1OsJ6mO6dBg\n8ukHtaldqd2nh7X2Tajna1GOvD7ofKWnblHdThgw+LysnO8Cze16s12EQzPp\nJmUBmUw9/UYq92FDZ2SoqD+Uu6g56gfjQYtZGDrcSFu6lPfickjlm6weiMGK\ndqeF+GXMISaAS78e5IVDVeLa9ccDubIohk/4BW59dlfVG5r2cCjP9nDt6hPh\nbnJG0DPIp5siEBQwjMLwLOTQM4xzTbMaNGbef7VaW3/H9SYukDT3ns5IYxCo\nMHfd\r\n=puu3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGP7FVQcvdQjP5a1KjaVYBo3ZfFsevCEiCQRmjqnI7MYAiEAx7WXJG3mV6yZFXTMcUXHa5Y9zBLDk0gI3h1MhbBRrlE="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-06-07--07-42_1623051811215_0.5328739027087583"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-06-09--06-50":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-06-09--06-50","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.20.0","@opentelemetry/instrumentation":"^0.20.0","@opentelemetry/semantic-conventions":"^0.20.0"},"devDependencies":{"@opentelemetry/core":"^0.20.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.1","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-06-09--06-50","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"89781f894dff1488c9794fd361dea0b63f4c9be3","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-06-09--06-50","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-hZxyoq7O6e5No1ZuJq5hoJcBV1u3xKaVjLwqdgpSyFazXblpI6ibZUPPB3Cip3yO2GF/eq08JSf8aoZ7IVZleQ==","shasum":"d5f7d66ec0f2867408a20a2e80d2e5aae9cb612e","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-06-09--06-50.tgz","fileCount":14,"unpackedSize":46184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwGTNCRA9TVsSAnZWagAA8A4P/A60K2/5UJStWl0v5iPz\nNwXgQP2+AR3vNA58eMa36UDSW9LdOgrjRBhYZUZkXNSAq/O9zE7yhuat6ncZ\nVozj2qd39j35MRc/VrQv8q/42ErXNUQWD7FTkh6S8IyU/6DA1WeBdyqEA+ZZ\nz9L7cge6/IHW9pP1vLYPrw4h6qXou0ApGGJa3y7vJ77UMfeLT0efV9L6XUZm\niuISMCXFJruDdddi8ck24mL0kBqsMHYfBmQafiNusAnmtC0qxh3cyB2FAAUH\nQ9yomdoC1v8ihHICPQ9k5R8XvVv2WBsPQNpGX7CmGLGcxs1BxdrZOiYd9dy7\n/Aboy4KTor05pDkt67VKtaSIivCQpB3OIPP8aAUPG/8G0GIltCc5OWFfyc2f\nVCX2jJR06I23qZalcMdHDlT2pwUL5+4ePI9N1mNXCm7lISgtbTTh4d8jL0dA\nLWa4ZdREeeHdioZYkM9iHzJnKtQhHtNenva/12L7r09rYT7cTG7Gz5AeANMn\nFlN+CElCQmZzBjU2mplbL7FZbEbXOGou9oytdOcmlYqjhY8P/rW4E48Zh9ku\n/2HO+lQebYDebIFvEI2qahXXFyH+EG5nrJCLbWJLoCzGpbWkRpDYhiARo5zi\nFnWTZI/lj7BebEkyoTTjqbqojq3xSaMhuoFl1p2uFyn6nJq1SoYom9wnextz\nKLHh\r\n=KatD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA5Z9tnbA/Ra0vEabG5zAwaatHKOe+cXfgJS+LY5ATTSAiEA54rUsGLE+Vbs7EOpSFn1SKu7teXPRcbUdmj5b1EKZ/o="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-06-09--06-50_1623221453346_0.04096464253393828"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.5.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.5.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.20.0","@opentelemetry/instrumentation":"^0.20.0","@opentelemetry/semantic-conventions":"^0.20.0"},"devDependencies":{"@opentelemetry/core":"^0.20.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.1","opentelemetry-instrumentation-testing-utils":"^0.5.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"5d2d40dae3dde329743437740a7987ac53e7814d","_id":"opentelemetry-instrumentation-amqplib@0.5.0","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-IHoa4wyaxE/yEwUe5IZu9D81OSjYTiD3oEmVIRQmVEWCm+NWx5OktuizZmk5J1OzyfrIfYD7Kyz7+gfeCsmS8A==","shasum":"551d5de3af4223ebc4e59679b0c0da4373903416","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.5.0.tgz","fileCount":14,"unpackedSize":46370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwIX4CRA9TVsSAnZWagAAoTcP/1KQ2uLFEBjUN0f4ZN5t\nfY4xVAyb6wrHzUWS+kYejYdNJTTPmIQJ50RD3I+/9esfMOMfnySJj1fv3Sc+\nZMrjB4MpABuuutpa3xh4dh65LHK0cF8eK7ihuL7p9wLhVANxxChzHOEZOV10\nmBvyxZxZ8uiQIoWJUUH9GPPNsTnoZ6S6cUHBZcl3yaBIj4cJ2aEHUA0kSN9B\n41VCPweh0qX9IiW30UkySwk+yrzPntvWmfIKd/kvgsvUe35UW/VEF8HOdbc0\nj56FQGT1S9CH+ik4CW25d/24nZTNZSRVJM+0nQ7HWDa8wbRKXPv51fm/R7d9\ngb3D1QNKc2MNMbPNNlapKHIR+cmSB7CVeomgrpYBjGstlz4IcSALuBx4OMVK\nB4ep/8JczcViSsfC7NNDr7dn5Vp/i/FoiQUp9Xw5PcAsvBei/qmi79r35OAy\n/5mmezhIE4PFzqTv22jevi7fPpb/YG/0p+UxxuUOoG3MTH32GcnYjKftWzyK\nLgMzc9fezo/2RkOGYGpEvoWXoL88oTiUgl611VM1dMeCDsduSNaf0QvaEwTQ\nFXxl7rQP2GNNA2CvVGLWIwl5Z+HfWN7bTDbjRL4c0NAHPzRp7XSV/F6+b7Rs\n9gfYThgbdAEU6y8wLAs3sT7OcRA7626tLq3TCUU3yZKKl8mfGYeOiuBdQ21E\nyFbv\r\n=cdUJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID8rDgCsjiU1je4w4A1XXmR0oYIQhYHlq1IuKWWBY4arAiEAvOT2Jev9YSkAtpJzlKSLPI3ptnnJVCeCOGtSeqAW/iw="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.5.0_1623229944540_0.6928890251073452"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-06-14--13-06":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-06-14--13-06","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.20.0","@opentelemetry/instrumentation":"^0.20.0","@opentelemetry/semantic-conventions":"^0.20.0"},"devDependencies":{"@opentelemetry/core":"^0.20.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.1","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-06-14--13-06","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"7c1bec0d45e4e1729da931048881068dd80a4b90","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-06-14--13-06","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-HwqxiL95xXbgOEmMrhHDFT60CVhrTuKgrP4SsP/3K/yrkRYa0DoWbluZRU7d8Sb2L6EI0eTA0CFa+HEjr74bbQ==","shasum":"59cb4f70c4cbdd65bf5fc69d9da1abbcf1c118fd","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-06-14--13-06.tgz","fileCount":14,"unpackedSize":46442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgx1RzCRA9TVsSAnZWagAAbHEP/Rrp4m7g+xiXScGylK+L\nGAPdkiL8UqybYOPJpZ49dU8ZYAHViKsInnHttY+krN/orPCUkBP41t6mG55z\nBKdra+IjWfKb46FnMm0zuGrVjOOIHh5JiNeY8VoAhUlIpdQBddALX5b6HGt5\nNewGSlUGQHN6WjlUZY9UDzkwkjuk+FiZFAp06Tfh+9ay5tAprHoyfWb/RbcA\ntNEEPH/F6utyevZCPVhk4KiObRNMY4LSe7bW+1kpcR2vKETx5ERZX+o94OL6\nyLYxFU3a5wcKO7zuC8KdBSEs3optg4Pm/CxwjiAaLD1siZ+lvC6U2EBbJJEt\nJeeJl4H0ibFofVXEyYJwjLdvT9GTUsrwFDn1HKeyhGO8rSLIkVUtgWePLNGt\ncEoKsdGJj7bpPtcpIdOi7ZUdl2peigmge5ArwYC9B7tycdGJz35OJ1q3y4dt\nEJ0FkfvzNTZS3vbovetza5ik2UXIMBVOOZaYlbHTsRGxP1gyc9kTtT5rxhgi\nXnxgGJw2ZC/lvayHOSNt9H2Muj6uy6AJ/QcMqYaQJOJgLpBJ1MgShPsm20uD\nYr118azoQg2vxoIrEyfFaCMZas8XxpPjuYx9iZd5UAUlgcpsuTQ+EQl5zA7f\nHh3iXnwPSJ40fe5ueAX7uPf3OKbqmm7s52mGmxqhU6Iw74j1vz5te5TZGD/3\n0ktv\r\n=C5t+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3Nk0Orb5wUwPY7hCS9Z277r3uzHDt3YYaNuq+MXle8AIgGiEuC9jRxgJ0yW4GnECEFFiti47JS0+N9CvHIAMGu2A="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-06-14--13-06_1623676019554_0.8178537103782273"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.5.1":{"name":"opentelemetry-instrumentation-amqplib","version":"0.5.1","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.20.0","@opentelemetry/instrumentation":"^0.20.0","@opentelemetry/semantic-conventions":"^0.20.0"},"devDependencies":{"@opentelemetry/core":"^0.20.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.1","opentelemetry-instrumentation-testing-utils":"^0.5.1","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"5922581fbe66f3590eeabc9e1983e33fc1ab3021","_id":"opentelemetry-instrumentation-amqplib@0.5.1","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-74h7O1qumFDuLHnkR1inWzxh7amwRI+5t1iXV0F2rjsNuk/6ObySCiYb69s8PF/mcy6NyOijgzWnfkThHHtC9Q==","shasum":"17d37ed0ea38d20ace84be28ad4edd5da8e62aa4","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.5.1.tgz","fileCount":14,"unpackedSize":46822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgycI7CRA9TVsSAnZWagAArigQAJWfx9lY3/ncBnBVEGxt\n1v6DqH2eVLJw8CnXV7hxl3FLVYd95Ovc/7Zoai8TCawYB+yhcUgw1laAt4RS\njyTE5uHY+J3TiGxzYMkfeXTtKz2u3uyhliIt3ehcl98Hjz701uX2IRitj7By\nTHigDH3iqKC2CPy2uwN4FykZfaa9rDqhw9/WrNyVc3hsgv4avj8bIqp6zO4b\nPKVXDCPTa9qBwCaB7+AM6Ub2Cc38BNZaGcFcI7zzFk5HyHei4HXRpYUGQO2b\nwIhylCYx54OZoWOx8iF08y//QCBidYm7VwE8pbJH4ESbB626fSbCAgjHVTei\nL9jEHiUCuSnaiBY/o+tsrA7wxfQ0zr+CWX1hF6OL7exFTUifPhlcRE8mS3l9\nuEcyl1oola76g0AObP2lJPhPnfeueX6OZrx8fXM0PIFj0fc8rHxpqaP8/9ca\np46WWLFsRML5Yag9adc715oDASXvRx076RVPJd+BZ1R/fy1Kok6PmNKXQwJj\n6leueQuD8fAQqvbbgBDPbJVPNVYCtq7ZJ1K0V02/sA2DK0EaeOkhZa1/UxaZ\ncGTSIsCRJA3VsNrcYb3hev0KpHjqCxVWySRD41kaeUyf3MMc9VvCpG/AkQmV\ns9jZoMETQUTx/lFuqgg5sEhUvYv+CKbrJgl/NxvlzbLy/bbL4ahcJBd9FIaP\n9fTQ\r\n=vcsn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHIguZDefVLeSrcFjs1bFAwG+IPkEaelHjbdi0M4DDdpAiA0nqN1trQfStdoqL8sVRRd9d4DeoqG4yMysICwAazRQQ=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.5.1_1623835195604_0.17375809660834518"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-06-17--13-11":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-06-17--13-11","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"dependencies":{"@opentelemetry/api":"^0.20.0","@opentelemetry/instrumentation":"^0.20.0","@opentelemetry/semantic-conventions":"^0.20.0"},"devDependencies":{"@opentelemetry/core":"^0.20.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"^0.0.1-rc.1","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-06-17--13-11","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"394b69f3cbe81fb9c51c6571e782f08126d97735","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-06-17--13-11","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-FOojNnrXBrLbG8eZ8Xgnij+WfyZ0hSqW/zOer6oOl+3aXzihIAVK7N6XyG+CQFNuk2m9vjsA/Ct68qfFFoVnmA==","shasum":"f64a72113ae15a8a97c2aaa716558cb13f68cfff","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-06-17--13-11.tgz","fileCount":14,"unpackedSize":46894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgy0omCRA9TVsSAnZWagAAs7sP/RBoAG6DoF71Wipjo+tQ\nbu/oFDYlgYhvsifT52hOMLWi8V3OY9u25vynmKkUUfpFvGHR43CH6FfDrHZV\n0le4ZXiUTmCT9pfxQD46K5A2jTv/5skMJD+0yTBnzDTS0hT4SHd5qdcN8TmF\nc0ROL5RnUq+jhlBdYg8AFyWZ0NuFYaRw7kkscvPP58Q1eS/khEcrFYWvVy7E\n6sY3CUDQMapHW5m4GbDgNENoyLD2fGfLUhwHPQa44mM2IXow2qLqwC08xk1t\nOQENnkGb//SuHGMAng3+Ld8oK4wj7iI6PLL7n68wrXLXylot2pbf6mwZCXq+\nJjvrgRUW1qzAdVFt0CIVcR9OmTQnUcCBQPTUlhamTftUaEW0bDCIW3A4rI31\nVKdonwovxRm4mf/7K/aGWfiKYeuhlAWVg5Di5mxWmGwmUDQAoYnzj7cxZ0ih\nE05ZJNn1tKWso5KdhJIfgccxVa2/n/KveX0H6pVFkAYutCKWVgWPf2VdS5Nj\nnuuz9sZzI79wPcFFr08lqEU03zkR2jYDyky7Z5B1Acqg7zkkGJMJIoDOZUMd\nKGmtuNjtoDAmZXun2rerAQyXyJ6nUH9yQvti1smw3xSCltFbWbwEILJx/tO9\nDAkViuMRrEpTdWbdLzBwtVBDRl1rAFlBHGZlPthnYwtMd5tOrNML5ynGFVOk\nEIyR\r\n=87vd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHwdw0AYn9OXm0XC/nHhSmoA9LQdQ0rM03slxy+kNML1AiAvG2tn3j5B2nu6POjapQycQPAT6spnBxjbV5BbkOT80A=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-06-17--13-11_1623935525980_0.5474851538036787"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.21.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.21.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"dependencies":{"@opentelemetry/instrumentation":"^0.21.0","@opentelemetry/semantic-conventions":"^0.21.0"},"devDependencies":{"@opentelemetry/api":"^0.21.0","@opentelemetry/core":"^0.21.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.2","opentelemetry-instrumentation-testing-utils":"^0.21.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"0eb9c76b2bbcf85cb228e2301ce0cc1346076808","_id":"opentelemetry-instrumentation-amqplib@0.21.0","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-E92cEO72+7q76p9D7Dg9zbNewD+BjWwOikqJ+lJCXmxnWjbeLbr9TuH3ic9+gssKxk6kuHk2Wv+M24LbjS8iMw==","shasum":"5c58e4c5e4d2f2ca43ca5dc6bf0d6f250f1a05e5","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.21.0.tgz","fileCount":14,"unpackedSize":47158,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzxMUCRA9TVsSAnZWagAAHgMQAIUzwv7WYFT0yIdvfzLp\nZrfFxzSQG4rCu4i2UDbn7eLwx+u3HNhloDIMP8UgUYz6R9PuQlzjPQH+aoqB\ndDDSzxa7uUXBpkh+T88/YCL29cAItCewiLlNsKsDZqlRNGZmF+3PfQFmtAiz\nLxsR17aRtlkbpI0rtoQRo0bU1bgRHfmS8fOS4p2+iwWp2qbtQbn5PPaGo98U\nuxq9AIHNZH718tcSOFnUdFiigotn6pvnUC/chSvLxqWk4Rfw9e+B3i96KegX\nPpht25lm6nzvyXOy3gp1jY880ifS9uMpAuU0YnUQRMGjpLp/ZKB87fhZh6Bx\ndumIdeESc5rrAdwun/Ju6HlvsYWUpM4xUmJOPb36+HLkKN4wOX4xmBFx7jw4\nNtZAIJLaBwgR3mRrC+bb9HUPREBWuxq2COy7XrVsstenZih9FT7rxYC0tM4S\nlj1+Nx294ZKL8dAWmejFGuU3se53ov8hs9LczU1fAk5uq09DRd1l5mxryohr\n+aFB50TZZSgZw3rgnUqiEPM7i0CtjyRURdnDqyvn8MbVrYrukOsCTDwCHJNB\nhk/9Uwk+4v1UmsxXTvQO2V/iQ8BWWlDT2L8wPUi7n+byvR8iIzTON1TxjSkX\nkVcUrd56JS/m0NjPpHd+Pp2GjDIvVF9ZyfxdhESsWRF6o+heJMeSAgyJWOtZ\nZ59K\r\n=IfIZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDIhw3hrW/vI2boyP0RarYv/FL1rkeJTHk20msb9qX7WQIgGu2RlVpwKyOrLOSsZA9jhPt35yyXoJKEeV/qGyW8iwM="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.21.0_1624183571584_0.8230228300646292"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-06-23--07-47":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-06-23--07-47","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"dependencies":{"@opentelemetry/instrumentation":"^0.21.0","@opentelemetry/semantic-conventions":"^0.21.0"},"devDependencies":{"@opentelemetry/api":"^0.21.0","@opentelemetry/core":"^0.21.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.2","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-06-23--07-47","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"3aa46659e7d7b8cb0038645cab620fce3d08348d","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-06-23--07-47","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-TihXE1E71+GN5KzvnaHwl2i7cDli4mH35DKqz5DMRwPcpHgqa8oU+UpnjS1UFNtgn32UQrvLEevgAa6Bba/AqQ==","shasum":"3e998085f823cf3760f658b1cbc151d9c0f03d60","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-06-23--07-47.tgz","fileCount":14,"unpackedSize":47226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0udRCRA9TVsSAnZWagAAa84P/12/jFvIyE96NnMfaVMq\nO54N2ReGbKs2ps3R500iUwzP29Pgl32/8AOpoLBftXwGgiM7dQdOoBC+OG1c\nWaNEItB2RSl5EDNoSgYOo99sfsTxgOgQEDkshanlFZzP56l7/AKcNFceLKKo\ns7nPH7tf+sieBmgGAzxGwUMezBvibiBYrK2go0Xb8d695mSX3/yV8+ilN/04\nsdMMsPgYWCQc/Cc7wBRbTUmAC3SW0OHJUOX1Jexs7T4aGlDFIfSW5/nt0OXu\nVP71XoBs4BgMnC2VHJIruP/XINq+dJFRmoINT7tbaZO9czUAZd7H6DSPcbut\nKxM5x9Is6nDovB33ns7r/AX9IeHv+pnjW8/c3wjH99lYAGrno1fQaSnrOay7\ntTRXCpuNRhriUN7dzlwCnUCGG89TuTM8U5RDEqFa7t7nnhjXVEFN5ywYguww\nqALcc9Qo6n9pyrG5Z1/HtAtjk5ExZOQ9x2gw5HzrTcg7x7TLaWoucdom/6cf\nQo1SP3wnthEq6cMdArKqMg3gitkRJpO4YdLAWCcdR6XbcNOxzKhtEIJJ9LPF\nhe/bOombQAhpyq9/nfLa01e4EZybrW5bk5Z4GOvvmFHAEBYUb0hwM0KtqT2v\ntNDrI36f7bD62Om5oL1oV/IQELTTPBrd08J8VXUmZnjkY6bKx4k2/1W5hfmr\nVccY\r\n=AF1P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICELYZVpxT+HV19O6GdUBRcQtuQqAYZjq9t5dBg7m8WPAiByi5utN08HJybDsWduJmPGbs/qtXLHWlpi9Bhi/bkHEA=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-06-23--07-47_1624434513480_0.19262025703108554"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-06-23--08-12":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-06-23--08-12","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"dependencies":{"@opentelemetry/instrumentation":"^0.21.0","@opentelemetry/semantic-conventions":"^0.21.0"},"devDependencies":{"@opentelemetry/api":"^0.21.0","@opentelemetry/core":"^0.21.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.2","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-06-23--08-12","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"9219abdec94e8dbeb50e61b1c289c60309c0a56c","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-06-23--08-12","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-8+ZeyikjUaIVItPaJev26dXH2bVhsh1myJn95WB4wgd2b4rAGl95Q2VcuQUWD9LKFE5wfXaabfgfjujsK78lng==","shasum":"c6a787e24fef0f0a89f74fef039b93a2605ce185","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-06-23--08-12.tgz","fileCount":14,"unpackedSize":47226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0u0KCRA9TVsSAnZWagAAusgP+wZ8H1bjPW6yWVA76hte\ny8r5xtfttXqWfNH5MYg7LUdp6tnraWYh/Ze0M8ObHCRw107PtGBd2R/hOvXH\nwVabaaNMK3AuqPT0htau0K/NGXhebhi9Bx+SUHFQOsto8DzfZ6Z8e8yZDXWz\nopB66yj7iqip2qItUNRDzjB1cx18a5jHvPX/z/EIGLXk6l197+qc2JAvNizM\nqWNLukvblwT/trARl4gwSqwIQUqravsd1XO7ysBwt6bjdnTT54o0KeJHVfYj\nEJxYXyVnzzKZf5tbhOoRupt4yr+6kYstf9FUDOybtvQJBevYJepo/7P+PEF2\nBTaGNT2nnGYfbz6mjSurocpjkQL/ecn5Y3LCLpZX+BluN3lXQopG3quAeage\ni1ivKU57j5GSReTOqJ4wKAL71nHLlDuP923BdLf1M+sZjIGwfSwWNrdbTKUb\nVZvkwypd1d8YeIW0QIMYQZq+agn7bxH45/z0KP/gbiw1RpQJX/k1llGXa2fv\nYyPASm+9EGQ8o+kQ8Oohjy+wuKT9wE3OGJsRX09BIKef16cncEtuSZg49n9n\nceyBhYHzUwLD9Kz4WnfIcV2WvouYnWGAdlDEBDtiygRFWVvoLVZ3I9+qRVE0\nlVXvLB+cybeHSe6iSY1+UttibjDQ7R7Qwj1wwdioYnX9az8DG7+DBX2atMAI\nCqYt\r\n=e9jM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDhln1CEaM1XSEzK4jF4VLYs6I8cdZsvN4u0JjQ4vWOZAiEA57O3zm4Ycr3WxbppLlTMfaoJ7fkB5LY5kLALE7TojqM="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-06-23--08-12_1624435978362_0.7975328744546308"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-06-23--15-11":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-06-23--15-11","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^0.21.0"},"dependencies":{"@opentelemetry/instrumentation":"^0.21.0","@opentelemetry/semantic-conventions":"^0.21.0"},"devDependencies":{"@opentelemetry/api":"^0.21.0","@opentelemetry/core":"^0.21.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.2","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-06-23--15-11","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"7faff48d9d7740fef1b799dbbaf1dddc673aa97e","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-06-23--15-11","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-R+ipM/JmCnHr3pQC8QMAdEczboFINdmT8TxQfLCHaGJOznbtbmXA65gAGtc1JHZWD8BqygfIVlEn395Q34FmmA==","shasum":"c21b7669322b010e9ce35542f4fab7fd1e658099","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-06-23--15-11.tgz","fileCount":14,"unpackedSize":47226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg009aCRA9TVsSAnZWagAAwGEP+wfErRapoyuXp1scDQaW\n/ESRajN1n8kh+GUnmd796bR89YPUOA42Sbt0Wl4I1TzYKf9BKnw9nIbh3b8B\npkcUzUkqjA4CA8Og/TM3W3BX0rMku11iHID/j03c3G6q2ssBCpBmQ1I8ztVr\n6tcC91SGpzn/59GQdJchEd5ZZ2IQL8c/G/mN6veIFNZnxnFMWRrEUvD7ra/e\nsTbR5yAjduldd6s9DA3A4UNs8jLhVJiupa/luctnotwXCUw4RQVG4Ms/GgPK\n+Bji9ws+h0eebgEu31COvhzur4c4fhiaUokaAmrAUDmwcKVJxEYGuEXn8Nri\nJkJUpUNUrXSC9CCjfamDeCTZe0lpv91zaINRZIiXCvXXTA4z+kkEYD4MX3+J\nYkpRlVDA40nCRzxfdblXozn0ikkOj9nLPUNXbT9F/2e7kMvWytKTKwLsdTVj\n84le2DVD2MsCTtHQ2G1wZdLG8z4SBSgmOUCs+57WDFHHq0brKCcpqw5IEqJj\n7ATPxrLz8/yoLtfakmT3Mwh81Rnl+kq78MmNqYajFW7F8NFYwi/c3RsHOfPP\nQgiHDn3qBGODM+e4hRzQVoxNkZjtVTFrRoyMB1Wa3zWrxQEvcXChDm5+H7g7\nuSkcC4Yep6w3ta59PHFXQ8DOlC0CD6D7XWjdL6L6Iv5DMMog34Moc5nnror3\nCKko\r\n=d11K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDy4Z943iAlwJpjfkoTiNTpbKrreoJDxLPVJKy6d3fXnQIgMN7PKFACY3w8jz9n0CQwvuTh++2OjuajsJodGSSnVW8="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-06-23--15-11_1624461146250_0.8961170798950209"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.22.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.22.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"dependencies":{"@opentelemetry/instrumentation":"^0.22.0","@opentelemetry/semantic-conventions":"^0.22.0"},"devDependencies":{"@opentelemetry/api":"^1.0.0","@opentelemetry/core":"^0.22.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.3","opentelemetry-instrumentation-testing-utils":"^0.22.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"e9f830a131164f45fcfff1a527a0ade411e5e977","_id":"opentelemetry-instrumentation-amqplib@0.22.0","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-Qx6St8qOBXvuPgHoq17Cx2g0q8DuOOKvhqUyEhfS+RIuU6/qVpDGAQZo/Sp5KaL7a21aWXO7Hy2R2QSaF2O9FQ==","shasum":"afdcd09a651f96264eddcd8e2c9ccbc7856be62d","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.22.0.tgz","fileCount":14,"unpackedSize":47417,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2Yg0CRA9TVsSAnZWagAAJ74P/jjLZDVi7XobmEQMECH3\nQi1gRlVzTJTzp8pib4OVRD3rF39wCE79aMeJftm/1VBn7M84VifvGDjdMCpJ\n4ifJrqUe6uO+5WuvtzpL8QH6DvhWmIITdowm1lVo5FdxuhjWnt/zBwisD5uR\nYSuwgH/QZqawoLB1sM4ltqdIaQmiMGcOL3etSi0IM89GqowuccxCFj4KmUlB\noNiAukT+ESh6MGZf17ZkOJRiicH9Ix99VLWEaQ0AiSGfnAXxOJmTz7rKJJDF\nQOc2s/WsIihyRN3dRpAH6TRl9oSXwm7V3mEat43ORsuz5jCBQUUlqBHo0NKv\nPI/tyZAvjO4HR9fGNDf6AyHG5qtheZYXQbKVd7BH4QfQ8wizNmEq8n4CxK9V\nXWg/fhj9cEHmw1znKYju3M7r5qTdUFX7pMGUjQN1c90gPpJPP0kOc/eCJKw9\nVlELdQta1HJgvtSZ8eXhK7Xbg8x4pG3vLD2nKk5I2K6jhzkNgRT4U5ynqUAh\n7uTUjE8i0mygDokxRVIDs/sHEjzClW21M63yJmcSulHkN5MYFuzJBukPZUbc\nvZYXnKff11vD55mplZgV/FtunENlHPqqZqdKqiOXudwyEs7JdkVR15JF4tbq\nkoIKCRV9DoccA2FAGq73VrLoEq3anKrlXRsuzwl5h7w6encw5TbSKCAYPpBX\ng3zw\r\n=3exH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDDB0h7mANBjiL9pnC4WCNvBg+2E4f2AV2oA1fYfUW39AiAQodZukcyVulL1Y6hCfQM9lSXe2KNMuKaLX7rCbRH2bg=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.22.0_1624868915512_0.5844645652669138"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.22.1":{"name":"opentelemetry-instrumentation-amqplib","version":"0.22.1","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.0"},"dependencies":{"@opentelemetry/instrumentation":"^0.22.0","@opentelemetry/semantic-conventions":"^0.22.0"},"devDependencies":{"@opentelemetry/api":"^1.0.0","@opentelemetry/core":"^0.22.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.3","opentelemetry-instrumentation-testing-utils":"^0.22.1","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"1b95f429902c848b03570501648d88c82ce78d46","_id":"opentelemetry-instrumentation-amqplib@0.22.1","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-TdYwiFfVMqNUUTVsSSbzlYzAnTu+1uScroc82wH7XIwud5CCIJVHZ0KVwLHSm3/9VTEPVBZjugo/PhY2TOSv1A==","shasum":"6bb1d4f46442d09be06bdd0b24591323d14729e5","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.22.1.tgz","fileCount":19,"unpackedSize":89574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4cSuCRA9TVsSAnZWagAAosQQAJF2MA68JinEk3uln9t7\n/XSOoO2enyEUI4Mwe1Mep6rugv0+cRraNfmiOhUiTdKS6o785OHetmZrtI6g\n+aix8zG7Au0ZwE4tfRq3o3wEv5gwpd7OGsjkk/+SiMPrG2VHshh1OJdhxXfX\ns5y//xcMvd2uKc9HvzMLglKqeTaKRqgCJpCy/HRDzvZH5daNNO9oDkooZTM7\nLbh+lD0CY3Uw4Q8oKzxm8ZbbMsw+6WegkGj09ztO/qRnAEC7OCoArJ8j0e0q\n9V7itX3xwd+vMPNID/6ofvQTcitsZzNgxnPWDurmBA/mCEyP99HHiapbbuyz\ngLadgQCeyWI7JCp1d+tQpOIgeBw2yAdkSP/V6AgNFox7R92DSf+rMkHSZgZT\nSmBOFsjJnryqo222ubbv1xlR8ATFctkzU3rppODwzkdfThf5xt39js9wFykT\ncapnY0B9OxJ+qshX/Knk83N9o7oIn7BJef56GslnGI1Hg6GFP027BVhHLoSg\nQfmkoMbcKTr4VkdzZGPtjCTdQj8IgEZD2hEw8ydoW2qOiA8n8gGm8+fZXw8n\nF8xBTZPb0SS/ZVLpZbyKX0aE05SG/anr8+S0VWMO9St/c23raH3bPNEVWtMk\nEz4U/xhxKGEq0WAExhEbif7f5oo+S/386ByEN2NHfQq0+RyRG+fDW22oSlpc\nwJ8h\r\n=HogN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFU1+5+eZjlzvdXWC0puFF2nmdRtkjyDqVU+hA3Lws93AiA+6AQo8CD4t7jP1Kt/tTOuINwUyaS7tIRyvkVqMaellA=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.22.1_1625408685739_0.3825362053028958"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.23.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.23.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha --require opentelemetry-instrumentation-testing-utils","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require opentelemetry-instrumentation-testing-utils","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.23.0","@opentelemetry/semantic-conventions":"^0.23.0"},"devDependencies":{"@opentelemetry/api":"^1.0.1","@opentelemetry/core":"^0.23.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.4","opentelemetry-instrumentation-testing-utils":"^0.23.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-mocha"]},"gitHead":"8467cdc1e0c3192d196b26d12ff05d63d5284f72","_id":"opentelemetry-instrumentation-amqplib@0.23.0","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-TONiHCbPaIrStaiDGAb2xft6nAhVB84kOLX2zVgJiFqy+GcYSfFi38C8jKl9QCXC9juB0yIAIUW4eSTm8aRoAA==","shasum":"5d82bea205daa341dabfc7cc8c222f8852f20cfe","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.23.0.tgz","fileCount":19,"unpackedSize":89992,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4tboCRA9TVsSAnZWagAAi/sQAJUmTodV3bnd9i/Ug/sV\ney9GVYHP6dOlLhfk1sC7EJqsfirMZB69yD7xK2fGZGuMNCtkG+pC/korSWli\ni+nRr9i1XQRjj+nNyZMUSAssc+bBgL7F3abmbw41gF1iO5wu1JUIxd27D0Dr\nTkZAmkLIfRie12ylMGUoF04RTNnSc/z7Ba+N3M9RYzC5mSBwzJz40674iYz/\nzZAvBnnWSgyTCkfgXASUH+rfamKJ1M7qCET4qKdJS9eO/79nSm/piwPn9ns2\nYlp0zrfhhUjtgPQOvtxoIPwnJQRFhrpRyWCcrxFGyUuNb2jzuV3e4tjvP5KS\niB16UcSO3Ap7a+ofoR2D/Knmrx6U4VX0gC4MZmIjDL1gc1I5Pmfw+guFu6G9\nxYBz0rW2dU2v26XsXC1+jf5L6Q4vqrGk1rr+6bhjs5jmi+2LcFpWz+0PlwVb\n8F++6lzVM1nywd5ukUa7OBjjIfuuLbwhmt7Whe6jhtevUddSrW9bo93fPzbc\nXQRyT5eN6rTvgHDxB/9YN8lktX96DeivoY3KFumZOOzfz2cu8N/r/3yAeeLF\nGD2p3P7UKI1DJNfVapH6Uq98rYeXX2e/JVtpgI9CVUIejnYahUDuYIfc98Rr\ndNcJsIGcxJLSMKId2TcxJJzIbY9hR0I92jn4P4QCfr1w7m+1BZs7BwJd9UrA\nBryz\r\n=wijK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVoyuSVTadUEw8dnavd/D4hq5mP5/3Fpkl07pggfnh/gIhALxvsebCYyxq9a8coAZO4eXcbM5CsR6+siTfwLgTQVkV"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.23.0_1625478888143_0.34267954387225474"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-08-01--12-54":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-08-01--12-54","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.24.0","@opentelemetry/semantic-conventions":"^0.24.0"},"devDependencies":{"@opentelemetry/api":"^1.0.2","@opentelemetry/core":"^0.24.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.5","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-08-01--12-54","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"1c0b880a714e23ed5ba1ca97c35f49dc21064d8f","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-08-01--12-54","_nodeVersion":"12.22.3","_npmVersion":"lerna/3.22.1/node@v12.22.3+x64 (linux)","dist":{"integrity":"sha512-evpRbec/Z0A7C+CqVFyTKym/Gq3zxn9Hrs29Ve5BA6d7+TqdpL/Hk9gb+qrzsZhklQ00P0LMS+2f2GgT4f1DJw==","shasum":"8248ba6ffa3ae65fcaea730a550de2c8952ffeb1","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-08-01--12-54.tgz","fileCount":19,"unpackedSize":92837,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBpmxCRA9TVsSAnZWagAAtWUP/j5a5nJg6Y9HeJuXTxAr\nIe2VOAX4KAXGCX30FijD3uzAM2+1l+GjjV4/N+E5UbgvOIg8eN/aYeSHWNOn\n2BGXFEHceM0dAKRlKug5Yj5RVa0gOZG3FNtOutskMTs8P/Tck4dLHNe36vN0\nPbxoaJz04SorgmeMNmT/XZZYcL6Ct7u30+PjTrjYUaJZsEbxwcpbzeHmBuXZ\nGYB4EwEhy3ZlptFJ5hZ1ayRsosOnth1A3tqETOqYruSxq+o/mPE0+CUa+e8T\np2Q0xDzjrf7oVqgPAk0pGzZLBsID5//uaznY/sbhtR6r8G9vz/C11dLv294L\nidXPfV1r29cFnqJ2MimpDKLD8pHA7O6IY5tJyoKm0vONdWdkbNc6JQtG7Qy3\nbPMKEH+OuWPRl/h326/Em4AMw62OAsMAR+suttYwbfliMyvDvpsuCDES8PHJ\nsmgRL4O1Vx4al9UTOLfjf90VWqQCT1moowvbmrl2AacsdHvfPuVKgOnNq9J8\nvUpa555BJGooyyfj7FNR3PSJjXtY2CGjdLrhr0vT1D1AJoelQtCwiZkKP/AI\nX6JEe16bDJxrQWJtbX5NreW4baKZEJAVAvHm5GyvdM01/XhKmJyFX6bQxJ0O\nDb900N6jDm+Ar2+f6wGjQwpmUrY2OOXId60pTnZqvFUciy6+Cy2pTmMcaRi9\n6Eio\r\n=5cF0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFHasPnjtxOuCbPUZoiK005+yJ6rQ/zstYisUCgyGdY8AiEA+MwqQiBijndVvP3p/2PS6kGtL3g6+dPzB+yapmdOhWU="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-08-01--12-54_1627822513301_0.2114203675530888"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.24.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.24.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.24.0","@opentelemetry/semantic-conventions":"^0.24.0"},"devDependencies":{"@opentelemetry/api":"^1.0.2","@opentelemetry/core":"^0.24.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.5","opentelemetry-instrumentation-testing-utils":"^0.24.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"f9d08fb8dd95cfad7658ed979c154cf75c979262","_id":"opentelemetry-instrumentation-amqplib@0.24.0","_nodeVersion":"12.22.3","_npmVersion":"lerna/3.22.1/node@v12.22.3+x64 (linux)","dist":{"integrity":"sha512-ZvmBwWUKWV/tpur7unqLRQdQfH3NVpDrWukPTFuQeV6m52Vq0LWEuejq0XdnJLO533uElizp7Qt3F/YJnaeDMQ==","shasum":"b83edcf8774258476f6ad26de4a8ee3e35fd5e09","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.24.0.tgz","fileCount":19,"unpackedSize":93203,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBqy7CRA9TVsSAnZWagAAJYoP/A22t5s9rJbJmf6JXPrF\ntM4huI94wFRf+T5nLDbJ/cAhHNXryHi/G0JEyAV8Ki+7kuUGfy0d4bOoWhqD\ncS+lHbGud62NWFDs5eiD20qebwOwoGQr/D3Mv6mXRSvNy81LA1G0cSZLN88C\no5j399abDmDq5C/XOQoBYAKWyhQ9sE05/E3UDNAxHkwVh/fTSdTE8H7jVNO3\nrh2rxuAhMrhRovXnfSkgIa9tUIhGG9lpUMAmxOrEN0/RhP9oiducVBhJJlgZ\n6kMkMKu/aYGbtbcCvl72CNYsEDszyQeqsdslWEQm1DM5FANohb+ZOHNaDNeM\njpIDJhpu1buf7RzCY5TcPR7/sYkD5JkH7BLNR+xR4A1AkqljtZc6NP6ApSnM\nI3rcooMHY3Z4BVuClcdXcpADuQAht0q2mgeCUhT32KHZVbjeSas+vHJsSuZg\nSsQjb/ymUURnzTw976R92omT3adBDQcLt5AVRrOJjRp5+uCssy1vPC/FcXCU\nvc7XmFVJM0abaszhVQtHrmGQ0cIcQ4l/3dOniegpghDWBhYhsW6J2jJ3rgK6\nF/zIrQ9is77XeGVAQjdUuOTuShcqWbKZtCHwOKQQ82wQrrWJLtBJL1ijFu5k\nTMdmZS/RC0mAQGXryMeGvHbxUuzwb8Sk5NzyqY31q0TGOepFhBfT8y1yV4BN\najK8\r\n=s14A\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMyH4cIh2AXDLCjC1kIg+W+E2cSCxR8tNvTkVK5iWw7AIhAIrwu2iyKsWCCjKVA9SgU9ZNTz+Tqf9197GxlsPQXXcg"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.24.0_1627827387081_0.4341854325449195"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.24.1":{"name":"opentelemetry-instrumentation-amqplib","version":"0.24.1","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.24.0","@opentelemetry/semantic-conventions":"^0.24.0"},"devDependencies":{"@opentelemetry/api":"^1.0.2","@opentelemetry/core":"^0.24.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.5","opentelemetry-instrumentation-testing-utils":"^0.24.1","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"5ef9753bf1ab525497b2b925df0b2e2f24ae838a","_id":"opentelemetry-instrumentation-amqplib@0.24.1","_nodeVersion":"12.22.5","_npmVersion":"lerna/3.22.1/node@v12.22.5+x64 (linux)","dist":{"integrity":"sha512-qqImLmDnOeIH3P3N0+zgP6Uzy2jPL1wbXaT16GcFqblPNEHfuzWTkhym4oowsdmYFr0yTER003jduerSoTyNSA==","shasum":"8684d0162e5e016e16fb320fc85822379c40967b","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.24.1.tgz","fileCount":19,"unpackedSize":110452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhL3QxCRA9TVsSAnZWagAA8oMP/Ax/9va2ehcLv+C6AldG\nH47lSJFjBTw+uvP58u/dVhs4Mdkpwbt1JKCdB0d+MhATqI//9t3nz9XJ/qch\nwOxHQHE10cCNrxIJMqgQO62u2F02MVtS0cqmnwrJ1LsLckStNlglYXXbdnWW\nVEDLZaZVlplgu/gN4xRn6ZK7SKdqGG9O0meXmNfwGHccVPrn/ax10CY6OUMi\nNQEBXhBdwItUw6459dTcZRMporuwHGHg01JOLWr3htfmNi3vjwvy/RuMy4Fg\nUUdQO44hCRIjjm/BLx3nCS3yhabtRzd0AOQUIXvEEwMu/PyVjOedqxD2ciy8\nkJnmC5mluXuSpZ0AMnY6sZpmwWiq2/y4XR2PI92HT86HWUiha5vqbsrmOniu\nFCQP5q1xiorfEKhDNM62GBwkSVKOB1Vz4DUQvoI5+LVMX+kqqDrjz7bAzolb\nqZ9Sag8gq9J+nmsGsyBIWW6Yg88PCBUF2J3DAKlBXlGd/0nQorrRoIkvkMDx\nFpKCbzhu+a888n5/ullolRLOjlxgYcVsaSeud/ShTIz3RtVhIx9CYMeDwdFw\n9qzHRYUBWhKbdWpf2TYr0WN9QKmMX2qKFd2Q6DrYVMxDut0rz2yYgFIA5J8c\nDdo1ucZrK5XM6mv6zmlrprj5qCZKIz4REvt4IakTrYEI3Rpn1TGI6CozdObS\ntUmw\r\n=9CXX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/LpghJ6jqEWPKC6V34CN46HMck4MDbGlIFMeekxzKnQIgGdijs6OReqC0WRhbTs4eVmKQocSylMYRjNbNbgUpomg="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.24.1_1630499889611_0.3427644658854867"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-09-19--10-26":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-09-19--10-26","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.25.0","@opentelemetry/semantic-conventions":"^0.25.0"},"devDependencies":{"@opentelemetry/api":"^1.0.2","@opentelemetry/core":"^0.25.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.6","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-09-19--10-26","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"a05e1c6b765af7984ae8433da2290faf0c3387f6","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-09-19--10-26","_nodeVersion":"12.22.6","_npmVersion":"lerna/3.22.1/node@v12.22.6+x64 (linux)","dist":{"integrity":"sha512-sYQ025erhoEJk+MDd1lmg0j5iTQj+GX6TOH8tg7BsN30jXdB5NxcBIFyc0aKb+WnDmlrk4ua/CiKFOdqMaqu/Q==","shasum":"a6191a8525681f8a08176a9adf2a8a63879e47a3","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-09-19--10-26.tgz","fileCount":19,"unpackedSize":110549,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEm6s3gwbfF4qAds4a7V1I41UacBXcyf+NGq37nBU0w9AiEAtf7czTuj6W5TmyJ5tXYcB964ksWO3UbR2GG2Aaw8KkE="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-09-19--10-26_1632047258906_0.13685122332844268"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.25.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.25.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.25.0","@opentelemetry/semantic-conventions":"^0.25.0"},"devDependencies":{"@opentelemetry/api":"^1.0.2","@opentelemetry/core":"^0.25.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.6","opentelemetry-instrumentation-testing-utils":"^0.25.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"c5d54414b125bbc927012c68ff19b97bcd5b3796","_id":"opentelemetry-instrumentation-amqplib@0.25.0","_nodeVersion":"12.22.6","_npmVersion":"lerna/3.22.1/node@v12.22.6+x64 (linux)","dist":{"integrity":"sha512-DPdlwpDhMH0Acilc0pfbkDpVmHxlK+80Jx52Tf+GQrrnxyb0hiwtE3vpCLAyoTNrqLDwmoG/eqn5uyWWwR1EDQ==","shasum":"24a36f0eee684d7c0cb4b6dbf47b8ad076776cf5","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.25.0.tgz","fileCount":19,"unpackedSize":110723,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBrNukiv0CUxT+XyMZpo/bWb+9BfZHXsXoPI4J/AQpQMAiA6BNBaOg5IFb8sxBc5ZEcfiZT3jj7vmPB+6QnbHOJSlw=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.25.0_1632055475759_0.18857993529194395"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-10-20--09-32":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-10-20--09-32","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.26.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-10-20--09-32","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"c1c35ba226e94cdc824171847a6e252e02912c55","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  traceProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-10-20--09-32","_nodeVersion":"12.22.6","_npmVersion":"lerna/3.22.1/node@v12.22.6+x64 (linux)","dist":{"integrity":"sha512-dyV/a/r/eOqhPqLBnoSC+Hnwx5hkA6RE9VG7iH7aKrfzQrYGzmPtcDszzsPmo/OeVAz2HBk6awVbHVO6W/DzkQ==","shasum":"991e0447a914716e806e1dec17d2e3947d48fd2a","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-10-20--09-32.tgz","fileCount":19,"unpackedSize":110806,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDbEz3qj61L2A+X6yxjdZZTIToXPZgs2DcCH4fnFFDM8AiEApg91rsVJtAU6pua4Bcr85PVhetcqzb6XkZssfhk9Jdo="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-10-20--09-32_1634722386009_0.2097077111721235"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.26.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.26.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.26.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.26.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"197677ba38ce47bdd7e57c9e74cc5a19fae7e8e2","_id":"opentelemetry-instrumentation-amqplib@0.26.0","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-d35SIL1Bj0z61+YrwH8KupOAbZjUJvV8nbrqDMpoVzE97RoJDbKeOlGQXmgks5c+LGm6PKTMbkHEHH3eu5xP2A==","shasum":"0a4998c6dfe68c8f8da10a07d4544171a27dd9aa","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.26.0.tgz","fileCount":19,"unpackedSize":111929,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFW1B+/C2Qw6vHsAzQ0wLDzIpn3HaT1epjJg56Ix5Cl7AiBr2Y5knWJP05u7QI20DbdvULxpIvezXRVi0pdZLeGMFA=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.26.0_1635276580917_0.45084147634160154"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.26.1":{"name":"opentelemetry-instrumentation-amqplib","version":"0.26.1","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.26.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.26.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"d98dabe288b1d95ce7e3d8b9b2ccc3ed02854392","_id":"opentelemetry-instrumentation-amqplib@0.26.1","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-8hHVMuTuQvy532pBV8yEkuGZkhDNSzPEYcOxslHh81y1Un8psN6UPZDFcXgWZtTscxVVF7c85s2k6aQhzWbBcA==","shasum":"1b0488c50e33a1fa05ae178fad20e56ee4895071","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.26.1.tgz","fileCount":19,"unpackedSize":112192,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpLVyCRA9TVsSAnZWagAA6Y8QAJwtzRcLbS448hQBkjrX\nrS3g7iVcyR46X6yjzxqbaOpTcxJw/qXbchvR59G3IqNIdG3iHRr7cbEN4v4w\nDKqEBTSG5Pv8BYI9RcDygz79/mpgRouoF5vawTsRCOP3MW+QKx+xlD8TfeML\naw+j8ziwkayJHMcbxbwGpuviiClLK3dY8X18Z7WGl1aQAO0aGv0XnQi7D/ik\nuU4KYkeFT9W6dU4xlR20PzE+HmccZ013P64UKQpQSNo+GrT7w7IfuXn8Xdet\n7H1FD9WzdtOg4xv9s7CG8huMb+OWSHTq/AmQM4js3JBsejli8bpPT+L+NG6q\nGUmelfCGTCMXRyFtcI3XjIKyFe72A9tHvcf2TTo0iYl4rkVKxZ295ch87Xi2\npatYt/yWWw6DoP7BkXO043GG1/zpAXRvHEQQAIEnyFgPk1Ejn8FDxtvfvcQM\n451fXlTypB5exe8PbqwcQ3kvN7bCZLifJ4VAnnEKWiHcpGL3ynLticV1/SpQ\nf63mV+Li55ih8TsGWC0MOSPEDuj2q4qryKX4GgMSRfEIfgFiUjxw5R+m6vy2\nopfrar0TzM4dWRbyaYPAZDXJs5iYjQymGxutuhSt4XWULSHJU5hGiiwbxLOA\nrUbWqDi5CrxiUrOCyoiisiiLmzsnliXqg/JE9Qbzpd1p8yDtra3dc/fysIRG\nWK9r\r\n=JxT4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDgp2NyEINZp2ehYG/NPYR9G4GHaLilMVD1nmIJyfwoTAiBDrfsNWlJaJAOsXBeGHI6t2ATC5WotudqnxOW0qaJSdg=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.26.1_1638184306096_0.8099325554433872"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-15--12-47":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-15--12-47","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-15--12-47","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"d82d991f4f35f77cb8ac9071d7a43807667a17e2","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-15--12-47","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-LUZDm21K//+riv8W13EZM0dBeKypNXsDdx/cFSDdbFX7lPmF655Os/6IV1v4CgvDmaT/tg74HfrvtJKnewPfeg==","shasum":"f7f0e2de3ecc8953922e8ec2b2f80146455ead2a","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-15--12-47.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhueQmCRA9TVsSAnZWagAAfMgP/ih+hmv0onZRPrAbP+KF\nIB24EByQ7Zt/zsNHOetKo7G6Eej8oDNKSvBZc+sG2hSkKJhl3ButbhVBSLeC\nyvqnCrtaM6HrpIVMDYYSWKZcEHDpAb8qbchVPvMvRx/sVQtb8Xp/ihiF43hE\nJNLQ/uTzgI+evBaeq3rd2RXgJVyIsBOClWaEdTzVJP2FWFlqYU+bm5ngwGaE\nAzc7TbMC3LOmvlYXBpx3A3vfaTgNZNX9I+2/1V8tDtK/GKO7+y6ERrf/Z21+\nwfSH53SOKaNObgGgMkktSHqkpfo16l0IkDPa8Zphvge/AATVSFzDTSxsKxIE\noxRmonNZeyoo6j6AGBQJEzYawcGQc+S53y3MjvBK8n4K2vhXneSHlBLmllUg\ngG83n/UvJ5bDO6zIddOcX+DnfaX1TVzjxq5fPNCKQSYYghk9zOsm0cM6PBxR\no4z+BpildGYm4H2Cs3lpPbk62EVtMg/SqailY/xAF0zUVMUxNi+LQ11kV6pZ\nUCvR2rOmuioXy35Z54rZmbL+wv2TQt/Mwdh2AIe5O8YVtAQMNbGFmrpEOFQe\nHX7XJmG8hBly/JoC/QBap4uhqLFCejn1h7KtKr3GgF3pu2f86CnMPf8xn23b\npIN4bi6clm5DJiqEbHbVZ20/26CJLIG6bcZtVzPrMMI4MNPaMgSBVl1fJyoa\n5VJf\r\n=H0Bn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAGhqBnAq27p7Ssdgmo79gC0SKoK+I/FZom39ofGm2ZFAiAP7xKG1NmUFWFqVasUK9NDorFi2cHSo14j3WiJic3C6Q=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-15--12-47_1639572518733_0.9458778164496657"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-15--13-05":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-15--13-05","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-15--13-05","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"8500885ec40cd62c62efd9758ed4b005fc201674","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-15--13-05","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-HluZmJM2N4rl7QrE3i93UM9XY/3Y/6rYGfv12dA9MOImMu/zm34Pw34Io26nH0PNWHpuUVDfQPYXjVGhUYc9SQ==","shasum":"67ace62fef2c9e14b27cf296dffc7284c43a6483","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-15--13-05.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuehpCRA9TVsSAnZWagAA4zoQAJDXkZwKN3wo8oLEcaxH\n8m1F5nUsqy/decPV0FTZ2m5Yi4Zxr5fFjrYAeR1N6rPjGF7W6Dhhwf1dSDjO\nKmzhHwCD35rhsZiqh0+dzQsGZFV7HI7jqkL1t3rRcMsn+i3moWC8uMaYY7UB\nC0Pnpn/sOMIO7kaZtD9exOSe0aBHtNU6obfAsqBshNlwW2M6NkdDQAeupaZU\n/jJo1KzulNOhwX0orkUxJew3gxkA1hLGUB3fqbtdRubZBSSxLQ5EIm04422f\nDgmK/rHZTZzTEPoMXEhHAez7BLwBKHBXVgiSW0x1CznesifNo6in5HJ2ovXf\nKq//kOoHAY/8uY+l6ZB918TZKrVR/T6ihqTIPZLdL362ODzhO/XMCL2mAKv0\nIpatHqTQmKG15KGpRjNt2K2Ex0yiAFeXB2EuSnxzez3IGGCPjIrcY44o4tPd\nh7A/dk/+pgqAknGjNDup+D1jUUm/PewHSW2xegr2ZXEvfcLJG4oqsVw1I7oB\nEZb5HsZ7MayCyGyLN4uj7fP7nRZNORlmAihP98kUDVbIJuWBVh5oGAd+4Rb+\nNrKiisFtkLhrM3GtUcnBt1m3ZYzDcClRiRa362FiXrcvv9a/MWDEEK3Uinkz\nlcp4evAPgiW75KUvK8ERDfmJ7Cgq++jTkqSGJ8Zem6ccyLgV2VA8OEXc3Ugd\nZWkt\r\n=Qw6n\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOkY0Etb0Kw90Q4p+PxpEs31LBEgTsuWg7FYKh40/M1QIhAOG2EOxabeSwkMJCl0thIMx+WFA0XuAXcBQ95+lWWy2r"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-15--13-05_1639573609294_0.15248176567945038"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-15--13-29":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-15--13-29","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-15--13-29","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"f57843bf0453b8bd2aa71246bd7cbd81e82539ef","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-15--13-29","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-+rspc1m3OjfxGS2/qSZphyNL+48UcZtH0S3PHdD/vsI3WFvQvVfo4kH2iCia1rncdp5wMKTSmvUlNUsHf3StOw==","shasum":"9ef7fda68f746b5d7b9dad0454dcb70296dc345a","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-15--13-29.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhue4SCRA9TVsSAnZWagAAeN4P/0SQemjtIFnLdoqaz9Rf\nLwZb8B/X5IbXOLL7a8xckqyQK+6Sbc50qBqO+8v1X7Zf+hyjeI0Haqn4LUzd\n2EGjIPtRtdzsRcYFQWhtuOsgVNgRJZPgHf7MKs4nRywXN3Twn2QAm80vKCom\n+B3WgzKIihe2+P06WihKBHvpCpkT/0EKSj1gVrxmKjRGLcw6/TWNoOOQib1E\nn5XBArOk2guskGVE+ldic79viF4atsbeh5eOwLDsL3geBbSmk3NpeqwPzla5\nuOvMkjbz3v3egwdn1D57JLrJBcB285iMTxAuftrQOuefZ1INOalv1s6SJK2g\nor2pWMbDfkU394KUBBFaMKM6LFoECg5TMo+JnlqGcPezS4NzCIYIYc0+PWw1\nLKnCbWAzgDryjTPqc+x9Vlf99fPea6cNeI0Bfg31kuqtVkKqWAciwBRatb1r\nK5Ly2icfe/9A44A41tJquoiPy2Nl+0evm1RJVwBbys+TrYEgFv1uytPvGXs/\nWWqVXdpVxGyFIGEqQstmXfS+0H9eLUqcxfcWtvV9az3kmOIfNmb+SJCwjvZG\npMQsWHhtV8gTyFUIYEgRnoyCJuH6h/z1ynJh9skaG/7kK0mn47/+TGynXv46\nF/43zT+UcX+JlTB0Iv5FyTgjbMc8s0KxCYPMWE/KgGOB3LQCcqNTAeyPVp3C\nuYRZ\r\n=hdbM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFqmZG2PztMi0+7XMt/XG2e3MXmHZHXn9rnJ2CgwINJjAiEA1ncNVRYIhFaM6PqvhQs97N+lk6BfX9sPFWJ5Jc3nb9E="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-15--13-29_1639575058003_0.8014059308289969"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-15--16-17":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-15--16-17","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-15--16-17","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"53721d6b1d7ef8fb79ab5167c34ee22da645bac0","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-15--16-17","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-exY7tQv5Am71xjxEEw4aiYmzD1ygT4qFRRDV1qTTKGfhB2J8IhBcRPtj3Ja8OyP3YMFbLwXhhv8JiHAAfEP4CA==","shasum":"71e16d69504aa5011d7cfb1025c991bf6bad1cf6","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-15--16-17.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuhVHCRA9TVsSAnZWagAAd90P/jZRKgwUs5rCTxRR445J\nClJtB8hmVkhmu85a1cFNiAgGbFnwnKMNgkaykPXs/lG77e3vvXovdf54MzKw\n2fjUxHsKgH3HvECbSVyO7Ud+8pSVlz/PlyhOlMMq+hpXrFhYeMXbM3UiiKWW\noomIGf4yCYxzd1PNteCHX85HBJJy+TH7x4wy7S06Orf+LdZk6ZtmiF7KCOHF\n+R9mGogZ89X8jejy8TTjBKgGXlSBEGJLnegUh/61u0A8CC5RdH2zum1ZkC6o\nqURexiCn9aD3ttThuH4f7WQX/A8ExOpUoEYrzTmNsV1nW0Aa+X5ZwGnarxw/\nuRpS0tHKtsR5CloyBNA2UpzlMW7PYEkPiDW8rmSaa7rz+6Ar/6/XdZ2IOg3G\nf6YADyKy+8DpVkXqriHLugluloA1sPKTSJu13K0Bv3dRVpEXabUz7xj1A44+\nFPqozE162b4eDvBApn4CHS10n+I3dRJxYWHnvMQvG8/23BHfX6x354zfYsVa\na9Os/Pd+0Dg6IPdkXbW5ZnXtjMPSod7vV13yaUI9waKxjTF1P758+mDvfsF1\nTyxtLUni1/2XH2vPbO5VU533mI+SBdr9CNFann0ZJbcVU9Tr/DK6cKPn+h7a\n1GJhbZ6Jb4vn+WDfsFLZW/t6brrcvz32hZerNXQRkxDoIEn2x9JVBE/PhWIw\nGCDz\r\n=UwLf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE4aOYer6l/n2tDVF/lczwCW3uCcFPPlScHvDihqt2paAiB/qhbd0U50tCGMyUawggPy9yHiVDmxRDZwWhYeN7wAoA=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-15--16-17_1639585095707_0.6459750135990936"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-20--13-41":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-20--13-41","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-20--13-41","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"5b751df473de22ae885ae8f740f8966736489a47","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-20--13-41","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-HJSvDonpp7PREp3CCJLy4C9DHvCZC1kL78XvTr+YRceCwTfqnhIxYKdEbj+jopXfKzXKSWZ2sHsKmbTne5oCIA==","shasum":"c83e18584ac1a92bc1bbd031ffcf1c14bad1c135","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-20--13-41.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwIgwCRA9TVsSAnZWagAAQLMP/3cbnRWnk83WELvUEoan\njaReM9LmsgxT8IdB0gpT4C+vS5w4JP07N8LILQCjqDNjCVFBsY1tF+jpebHd\nKpm1iWZ/7P7Dk1Io62+tHVBfwhgSna6QXXHvPxPFzuB8Gp2WN4d58b5pZi5F\nPiyLccE5+kds/9h7YJIPA6gfUyHxIZfXxp/Et3ph1IM+6Z34NOTfBv5FlEYK\nshRLWKciVl82RS4NjKzCs7JQY6o80a8TFQqCC4CRrq8cTtj9FNlmNL9rhEz0\nOuc5kgjedcW3YJVYCvY+QGeMD170ye1mKi43vOQnM41UHTC8H7Hls9hIL8Nf\nTZUWeX2uYJCGuVd8uP6nIZ9euQbon88FwaAfMJzT7A4wgONCDn5fZWIaYcjC\nsaSJrqjuP+m0CJOwYfQIzqkiFKQyH8pcMgRYPPAyF21uv3NHvMHUEQHpbXC1\nryoXrJFpWAism2gDrKW724EksaD34bJod6bDR93OEp4NU8JXTsirW4VPAkrp\nQISQxnIKN4NZjpiPk9HGyj0FwDxwLUpoHAs3bCe4R0XM3qEq6gklBSoUQ3VC\nNcso/3/kWobgBEz2OTJ/cHMFqd+CC196PiQxh22ffnykzvU1BA8Nkoo31gl8\nCEJP22Qg7GEMcu5ORbaAHPu0C0hOkt82FQkHjGFujv5HWlkjIFlTGt35WBOK\nF5Q/\r\n=ws78\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHisigV9zxBtRj3Qv/dtjcp+NkAavUQ7fcUBsbQvubnaAiEA6m3w+ED8Kfb9BhWIew6deNmPVKeH3PqYV4NfOsjRd+4="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-20--13-41_1640007728741_0.4750047552911374"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-21--15-57":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-21--15-57","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-21--15-57","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"38372fee8eae66fb9be8d9e8093823c76ba1388a","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-21--15-57","_nodeVersion":"12.22.7","_npmVersion":"lerna/3.22.1/node@v12.22.7+x64 (linux)","dist":{"integrity":"sha512-litTqVSkJpncnGlToy3LK6J9Zkx+5muaUyb1sbkAlc8fdEl+6IypnaP0sa7YXpCAXFnamkAQUDzKHSJWyUPuHQ==","shasum":"369db3098d39f2ad95e2625b68e3b8012e8d01ce","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-21--15-57.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwfmkCRA9TVsSAnZWagAACboP/jkZ9HTe9C+ONu/E/AAI\ny+NdkxxB/497uWdfRxVx69cElBziF6ryOKQmEAOSy2dKJXNtEm1WnuYeGohq\nyGYGmR0f3ZgkoKfnCUn3zClcMAB+7AfWndcgSfjFweiTqbiPU2OoYA3rigNo\ngK8fXULAcBUoNdaqtErctKg9o0f4ApI+eIlsNuP/5cZ7VTy/r3ntqgJMsSnN\nE7e1LaGNownKJZIzPBmIvU+knzF2qSO+DHYZhMn8PG6TGazCbbiHHHPVQpYa\ndxfUNBHT8DItnMlAGp+cJUSeZEjMX8xJLmPNS6K1HODNrtFzphzfEYdMNZbG\n8RkmLv1jlxFqXv60DbI+9JqBAEMKTFVWaL604yVzquc8g4D+1XQKYILubPDl\nJyZOvE8MhDPwtAqJwYsz1JCUh3hHacNMZQeckiOzByT2r+DGNmMgpBVS7GqC\nMFszPqSMz1IIdv36ZcoCZUrDP8+kO+fKZ4YQ3c2cIRVe6OA5nKtT9Hh0MmmL\nf5eWHAAGZP9MpwhT3eH8JlhSDQF7hd1OfPFty8orsmjRJeQ/ow/0/Xo3pNmF\nPCGPlVoMZ8lwhbWbd5hiSp3dpNcYKDOfi6RPgtsiopOgHYNrg3dGlVbm836W\nher4//38rLhISF+8bg6N7Jx/RqcPHL44xd9+saOk8vNZE/SH9evLJsuHvZN1\nabe3\r\n=JSQp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbMZmqWBuak1I/Q9p9LD9tiL7Wg1HLzcxaf3YUQ47CrAIhAPmYursmsTwxgBOqwQORjtiftxW0W1An3XR3xWNdqMLB"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-21--15-57_1640102308304_0.7577883493924207"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-22--14-33":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-22--14-33","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.26.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-22--14-33","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"7aa0240a479398d794813dc4088689d9d25bf6fc","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-22--14-33","_nodeVersion":"12.22.8","_npmVersion":"lerna/3.22.1/node@v12.22.8+x64 (linux)","dist":{"integrity":"sha512-7PCU/iNcm+isUjgz1DbS3aiBQk1uAwpA30tF88qFpFZaoQBNa9LqfqCcYtjmqshRuP9aJr/BgrIqwgPjE/p4jQ==","shasum":"56df952b06fb6a1ec93522052f6e19ba8928226d","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-22--14-33.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwzffCRA9TVsSAnZWagAAh1gP+wQV/kA1pNFC23+gmfdc\ndht75dXIX1Jx2AjW53DCVg9CafjriVBlsQHTlSOCZp6KlXb6ilgCN2GbZZl8\nNu2iNN6ewWyi2/BDlYzA1TmWzYE+luP/xJyPCqSKO6wiJSE/vI4tXN46ySJr\nxyMNbkjueEURYpu6n47DuLX52fBl0BB4Q+3P4qFgtrqJCh9DIkbDGugzEuPx\njKf0j+ymXXZ4ooXRf9hPBrk2GrztkNbRgHZjRSKYhEwKPvGUa5OCEni8FE5k\n4u3Alp448NxjlidJ6fJSk4xFbBKy7RmEsuMMiIoJ0nJeBpuL3bdQ+uzc5bYz\npxCYUYwtSMQB7IZnCKehJzAW8LCiNFlv6DL0anmwm46tLnF7INVBcvsV3D2S\nAq57z/M6Dbo6neAgy/xPKC6zIUPe1kgaIbEJBMKUe54YBuB+oPNG6EBMBJNC\noLUQWQkV6bQLbb8CwvOp8CdeDEDHSBUYeUm8Xn4QmV/VqswrSCajSA2udufM\nAEuCGbVSFLx5crCvvDs8jRpGaAz68Tulyp7oHZs11PZDu3a59txERtr26X97\ncwZIa+EbqXg0X4QDUT7rb1XLFuRku3bIzXLV5XyTgrfq/R3KvOkxyD0v0jre\nRvo6O5Mt5vKduUXXxkwCGCmKIF6i9xjQ0nkkZkW2WWc/DUXxqsw8Ik8viG9t\n/yTn\r\n=47lP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEJxWBPGOp1YCxSJXUW/I1d5mPUWnKCR1duXmLJ93T+PAiEA/KWcW6yi1uwRfuQIevTgUXIKMCRbnuE3Sk7SgZ/RgvU="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-22--14-33_1640183775086_0.013167767184120382"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-26--12-22":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-26--12-22","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.26.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-26--12-22","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"faef7c8328a9ff8592347e079e5e86d0181d2d5e","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-26--12-22","_nodeVersion":"12.22.8","_npmVersion":"lerna/3.22.1/node@v12.22.8+x64 (linux)","dist":{"integrity":"sha512-UuaiMdTzpWnUxNSioyK2VfhZ/JcY3n7NQJlyRWoehEoNs84sEVnVTqTEANLimRQLvX4fNAQNQHc6QzLmdw9kJg==","shasum":"f67339f116562e50c21b219b946128dc1c944879","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-26--12-22.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyF6gCRA9TVsSAnZWagAAtqwQAIBaIlKdQkebPReA4bt2\np0uf8Vs5zdGOR4tKqhMOVUUCFWlwu/DN7hO+Z9Bft3U5VuISeGz81XIdvfyY\n0tFfMd3rDjHz+SBiRzpzZLqxpyvFxeKKV5Okhq2B6+lkplzAGKMWNlHA7pJu\nxDLdheTy5BGnFQLJYnsFqH7P6kv0ZbPZt6NFGuq4XQHhRqIL7UQJ8LK/Rk+F\nyiL090qC+zIoE0sb4FYvS0uK+HLTNVt/F6RO+4YtdkcY3ACWfksNJlHC4Tli\nWpLNYWSHnPW0S7Mf5IsO9OQ2z35yDhUKH3NGolqQllGZGMqhpP5ik0wEOsd4\nzpjiS3v38cPydjbdg+/6hY/0B3sQqt5YzW7g5kyrKLFefbTxPvdD19BNuyyW\nVJWdT+UYYu5atmt3OVrievZ7zCbUShYFNUdUOM/hRHswNi7uiXY5+Oia1xD2\ndhI6GXrAgmGKQuSkiUelNZkLQaiqJA1JyybpHaIxxhZbbvMEGx7hk8jrUP4O\ndTjbasC+L/PrYgsDynh8tx+4BRED26OwzKg3LjLPo2bREzo3bNoY7+Di9KyZ\nSrhYLlrNguGo1yLKDFNUEKIPCBHcdz98D8SPFenzsvF8PN0Us2lI18tEyKWJ\nON3duMr9GKCz8dJQhwxdbtIiTj4RrXvHTnTKCQQDF0Kf1vVEJOQY/IWJKC3d\nItEn\r\n=l8r7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFrwNzWS+OkrfknmC4DyEqy7ec90VRTWq2n53rsXJzxcAiBz01DNE/I7o4GI3D4011/Rq1aN5Mij+BN6H9ZocgKMUg=="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-26--12-22_1640521376578_0.08345828118911514"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2021-12-26--12-31":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2021-12-26--12-31","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.26.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.0.0-2021-12-26--12-31","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"591785317c33cddbfec450849d945af05520a0f4","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2021-12-26--12-31","_nodeVersion":"12.22.8","_npmVersion":"lerna/3.22.1/node@v12.22.8+x64 (linux)","dist":{"integrity":"sha512-b022/8yR8g+4WnXZeXoXdLXVKYpB5rMx/gFXNngSFiLFFbtXkAtGYjln2Ixc1ptV1Huk5Sev6WTvaal/86HNMA==","shasum":"7706623d2b375df67cb926f6be28e1cf394133de","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2021-12-26--12-31.tgz","fileCount":19,"unpackedSize":112279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyGDuCRA9TVsSAnZWagAA3EIQAIRM9l9bVyKyNQRsTjOZ\nuKJwrMivLvckPlPbdzvC+BXzACMYVxjPZegSnsBg++zPwOdAi4U1HELqapWn\nsG/GRwsbJdfamqZCxDZXi6C+qWnitUOPjzsK8ybkr4kA/L/WlxZg2tV3GBPz\ndStDRVA874FBs+g92Ej1j4inFLXf+/4rM0yg7ZgcHRwSmd0leb1amiePDo/H\nSFhIraxQC5+VSuiFVyspAL6ztEMbxsoNeHVKqCsa/GXtAH1ykj/tm0DfKMW/\ndpNqlb/G8aAqShvDH7MY8gMNuGcc4+yFSTLEcKcz/1CS4ES/YWp+Ii+LuYCZ\n/NYcXKm3+547dRlHCSC1Q0Hl/rVOuQTM+plqBqBkC1lUphHf+lXwmCpoCvyY\ntarqu4LZ0Io6qz9LqmYrY7AVxFn4Rz1lefMfw/bubSWg33KEa1LS3aOr74tz\nvuX82cWBhZ6b/ZhdzpS1Aw2zVTpGCw2jMqMj5MuP4xq2HZpU3+fan2zdDY42\ncddOWyqgpPzbRP9v3QYJkDl7zJXQ4GXkgb0SFT5uQV5qhRjaVZYbed0CtumW\nXDZnq9ht0jpxhaYikOrSUL5HVffLzbGsFrVXX0wvRxYnZs3sfMxr5AS/QpY6\n4yNnqXqa07+xYvvjTGP8ZevqbtB3gRo69rr7/H6QFd7FndchKIjgGDY4hkl3\n0802\r\n=Wh5U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDhPyhacdUR2Mh+BZRk28Z9uaNGqUgApLOdixm1xqXCpgIhAPq/+HTJ7f17HM0fx6jOBKSks4TpK0jmXHcfAbo42vq2"}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2021-12-26--12-31_1640521966428_0.48260392682402764"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.27.0":{"name":"opentelemetry-instrumentation-amqplib","version":"0.27.0","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","opentelemetry-instrumentation-testing-utils":"^0.27.0","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","opentelemetry-instrumentation-testing-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"687393213037496a1105e522b1bc3110b11bd9c1","_id":"opentelemetry-instrumentation-amqplib@0.27.0","_nodeVersion":"12.22.8","_npmVersion":"lerna/3.22.1/node@v12.22.8+x64 (linux)","dist":{"integrity":"sha512-Gr1vCwlUHYiCMCtAuQhOa+UIKiWBxt6KdUah1+TWoEnp7UjgqLyv+M3YLDVyaSVNdDjdKgt9EV45lk4MdZCoxg==","shasum":"656907628e2f39c2a5039df380a3f759aa50e0ab","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.27.0.tgz","fileCount":19,"unpackedSize":112453,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyYx7CRA9TVsSAnZWagAA5EYP/3RdLD3IADbWerYxlgnb\nlTgPHFKJu3ersSw3KlHpKgMx2E+8d7IUPNvrSTYzvnIDF8MC8fc+yxMFK2G+\nuVFL3FqTUmdq8tlGReLjmcWKCvULPHMdYHFQiYmccOYPsB7mJnNzg+k1+9oi\npjtix2f0VSeelBTuwaL5nv+ctqTYMyJ8OOLbbnthtUoH1ezFXrrSEwgFuA5L\n9hG24l4jKxLc9/iYtCpxP96RgZSKb2S+2WsVtyROMRv0RsKnA/5XPLoKsGn0\n7XcwUMGtZBmJhOl3cw3we2l043kOIPjUd+I1A7xMbaor9By156C5RITby7JI\nEh5jcCfJyoHo6QDTRNylrIQMBKx30kGsJHZfIio3PlUkgWbZkvlkyRaRa8Oi\n8ZDSQi/cAdIzbasgu0TF0/aBLj7R8ryiAAWAdorEKv6s+k1MiJIMAfKysj35\nBLgtgZHG6uECr+2ax65IUay1DHybYXtJlM1rV35EkT0BRPTve4yXfc2sRYSW\nawJak4NsGaR09zDB4PNf4lSvNjf6ScrCGL9xW8sm0I3xRKUD/rLRS84/CHC5\n0PgLKU6zy8xntAdOkzYirGIA6aGnVT4bm/MgAyhqfQDziYK/56QHmiuuUmnm\n8qr8qBd3y46Apo3veeyUcZ4e9MlnfOnrHllCxHroCuqskfdE08fK7xQrAT6+\nKdjJ\r\n=XA1H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICKwRAr5OA5hH6ywyuZ9kikndbBfAQCUyEa4js3VbVk9AiEA4mxtGN+Hn41ccZNckGnqkGMquCFU7Fzp7VhfdqhBvos="}]},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.27.0_1640598651783_0.00020013907167748535"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.0.0-2022-04-13--14-32":{"name":"opentelemetry-instrumentation-amqplib","version":"0.0.0-2022-04-13--14-32","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/contrib-test-utils":"^0.28.0","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","@opentelemetry/contrib-test-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"2e8247578b4b9efe980868177abdd2e793ea18ee","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md","_id":"opentelemetry-instrumentation-amqplib@0.0.0-2022-04-13--14-32","_nodeVersion":"12.22.11","_npmVersion":"lerna/3.22.1/node@v12.22.11+x64 (linux)","dist":{"integrity":"sha512-XMvQNlFVPMs8ch6jq9pDE2NW2UGfAhhNsgSO/UQVnF3oBGeYx7o+U7btQAYvGfxz/bT1fm6MOneFH6zJ3+R/GQ==","shasum":"d4551c7b7f65b90fb344302c9ced2bc13b7307f4","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.0.0-2022-04-13--14-32.tgz","fileCount":19,"unpackedSize":112503,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCn1TIxuOlVrEq8T+vOtyJNXezZjUVC/Gp2s9vrXyZ+WwIgRq5EEScEbS+/iaHpVA4Ok5bwJ3baFgHSfw8vs7Gxc6A="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVt8TACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4cQ//Q1+y89ZsjUiMKce6kv9abwv9PzP/Nr3BrDgcXjziUSn2AWts\r\naMkhuHg4JA1RNnVPgb6WKzAllLjZMhhROpKFlqOONBlMLNJZbTpkbzan/qKO\r\nCIhbq4buIYi+59jpHapyxkTS4CJaemCWKOC//s8s7sN3Sr1f2LCXOSY03AlK\r\nLpXTaQChU5hUwm97/5T9Xif+zRDPSgyQ+qrTzUdx4AXW+8s6b/ugCwJB729g\r\n90FON+55QFOsHJCPWVlOZbzFRHHQCzMYrqqduYytYBwyoIP4fFsDKpNdSsv5\r\nbEqyDfORA3Zxz3t0ltDMvsgxAWlI8RGOpQRLb/zViLD3EYBPMzITydMSIUo0\r\nBbyzYYAC7ApWEvqDqo+4hhufLaoWjVbYqeZXF5vTq8TvaAwKKZvuo6jdBRhV\r\ny9xcFjHkJ4+sv+4zL5N6+OOWfne7MHmvelHwIWVPfjGhGKHY6p8HiS7Ab4E/\r\n038D5ex7YYFMEUXzwjStIIPK3zXe4Xhh7nvIjIPBxvDaLbEdeeAs9pMww1if\r\nq5IbtNZzc4a0R+lxGiMkH2R75k/c7V3uzqoCP7zUbVkJbmRwLfk7CQ+Ipe8D\r\n5ycxyzDEo32EaA9SofXxDyfIc6gzy+qS3tqjGdx64owdLiZ/AXF2ynNnLYk3\r\nIjpyzKPVTfCvb7M3uREMXGdDIdnC+rF/Vas=\r\n=R5Tq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.0.0-2022-04-13--14-32_1649860370819_0.9580822055942837"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"},"0.27.1":{"name":"opentelemetry-instrumentation-amqplib","version":"0.27.1","description":"open telemetry instrumentation for the `amqplib` package","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","license":"Apache-2.0","main":"dist/src/index.js","repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"scripts":{"build":"tsc","prepare":"yarn run build","test":"mocha","test:jaeger":"OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha","watch":"tsc -w","version:update":"node ../../scripts/version-update.js","test-all-versions":"tav","test:ci":"yarn test-all-versions","version":"yarn run version:update","test:docker:run":"docker run -d --hostname demo-amqplib-rabbit --name amqplib-unittests -p 22221:5672 --env RABBITMQ_DEFAULT_USER=username --env RABBITMQ_DEFAULT_PASS=password rabbitmq:3"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"peerDependencies":{"@opentelemetry/api":"^1.0.1"},"dependencies":{"@opentelemetry/instrumentation":"^0.27.0","@opentelemetry/semantic-conventions":"^1.0.0"},"devDependencies":{"@opentelemetry/api":"1.0.1","@opentelemetry/contrib-test-utils":"^0.28.0","@opentelemetry/core":"1.0.0","@types/amqplib":"^0.5.17","@types/lodash":"^4.14.168","@types/mocha":"^8.2.2","@types/sinon":"^9.0.11","amqplib":"^0.7.1","expect":"^26.6.2","lodash":"^4.17.21","mocha":"^8.4.0","opentelemetry-instrumentation-mocha":"0.0.1-rc.7","sinon":"^9.2.4","test-all-versions":"^5.0.1","ts-node":"^9.1.1","typescript":"4.3.4"},"mocha":{"extension":["ts"],"spec":"test/**/*.spec.ts","require":["ts-node/register","@opentelemetry/contrib-test-utils","opentelemetry-instrumentation-mocha"]},"gitHead":"e473527226dc901fc0006df49f729b9137b7323b","_id":"opentelemetry-instrumentation-amqplib@0.27.1","_nodeVersion":"12.22.11","_npmVersion":"lerna/3.22.1/node@v12.22.11+x64 (linux)","dist":{"integrity":"sha512-FGBnfNxbGIJw+lX7pU2tWr0yGxIOPql6CQIXIkwgKsQL/dEnimCwErbKA9OmtlHLHF2MjHdrMQptACfQEvN6KA==","shasum":"c2503bc1e18cb4193630f0e9f233e7b2a240e248","tarball":"https://registry.npmjs.org/opentelemetry-instrumentation-amqplib/-/opentelemetry-instrumentation-amqplib-0.27.1.tgz","fileCount":19,"unpackedSize":112695,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHhAM711fe6cO+t6VSq/AA1gT2sSmuAv8O4Sv+KTfMOlAiAyOmIrscoaRFLbsTD9rrtdRjzyfDMXGQfNFe4KlHlJZA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVu8FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo6IBAAmQvM1pzQSk3x0DeouB1QKvhn5mf6v6WmIt236JEUwTjFWkN1\r\niZZz7dcu7CowGHS6DP/I5NsiCU9DUR6Ve4Ph3V8L0aD0aBQ3/iRc8OJqHouY\r\nyPfAZKPG0X0UA9pXEI6VVRN1L8qrf6lMUlb+yBYZP9OGVpMIGLW3ju4GE3p0\r\n91ESQjQPu8Y2hpBpb9uwUFjuNz2DNqAK3MkCxrU8ve1bAJsAAzaD2bhLpMwF\r\nK6m5Cy3TULRLhGwrepzANb8OGsRi2Z1/xCM8OxDL/UVHGj6nqmBFz/R62CFf\r\n9hI4GMkUYGOKuzH1nXUMEIp09UiMCxwuF89BHGDl0sZhD1Mg1+ISq946GgSB\r\nDU7S+jYh7LOMolo1IKHW9C7Ig+KnBSPyU5Z+ygU2UgiI4Lv+jr3+xu7XdT56\r\npN+MnN6WMQ0qC8EeE/i9JRP6xWYV4FcbjjOPNn35X7nXErkAJHig3L1E3OSt\r\nW1aab7TZMdAk+hi14+ymmdkf4PZf26aJLzhquMBv+tAYgrpVWRxUW1FtVBmr\r\niCXpF+9SA4WwS2EYFH7sMYt38OEa+ubmtOp+XwRfNKAaBi0/mZ27NyNNpFBk\r\nECDoq1C87uaUq7ytqBGt2oopaW85m0v8Jp1hWVw8EbP308g+BIRU3X91BCpP\r\nu9OdP4pgMR7GuTfJroJrsJmkTBxadwqD6xs=\r\n=nq0k\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"aspecto-release-bot","email":"dev@aspecto.io"},"directories":{},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/opentelemetry-instrumentation-amqplib_0.27.1_1649864453616_0.5384997731707395"},"_hasShrinkwrap":false,"deprecated":"Deprecated in favor of @opentelemetry/instrumentation-amqplib"}},"time":{"created":"2021-03-09T12:17:31.632Z","0.2.2":"2021-03-09T12:17:31.825Z","modified":"2022-05-12T13:06:51.453Z","0.2.3":"2021-03-15T15:48:07.472Z","0.2.4-aws-sdk-v3.0":"2021-03-16T12:17:25.769Z","0.3.0":"2021-03-18T10:53:55.978Z","0.3.1-otel-v0.18.1.0":"2021-03-30T10:58:57.480Z","0.3.1-otel-v0.19.0.0":"2021-04-27T14:25:12.615Z","0.4.0":"2021-04-28T06:50:57.997Z","0.4.1-aws-import-one-serivce.0":"2021-04-28T10:04:51.313Z","0.4.1":"2021-05-19T12:00:43.869Z","0.4.2":"2021-05-19T14:17:16.457Z","0.0.0-2021-05-25--13-03":"2021-05-25T13:04:28.523Z","0.0.0-2021-05-26--07-22":"2021-05-26T07:23:04.008Z","0.0.0-2021-05-26--15-12":"2021-05-26T15:13:26.220Z","0.4.3":"2021-05-31T13:40:53.271Z","0.0.0-2021-05-31--14-38":"2021-05-31T14:39:37.817Z","0.4.4":"2021-06-02T11:41:17.702Z","0.0.0-2021-06-07--07-42":"2021-06-07T07:43:31.365Z","0.0.0-2021-06-09--06-50":"2021-06-09T06:50:53.469Z","0.5.0":"2021-06-09T09:12:24.751Z","0.0.0-2021-06-14--13-06":"2021-06-14T13:06:59.861Z","0.5.1":"2021-06-16T09:19:55.735Z","0.0.0-2021-06-17--13-11":"2021-06-17T13:12:06.120Z","0.21.0":"2021-06-20T10:06:11.780Z","0.0.0-2021-06-23--07-47":"2021-06-23T07:48:33.650Z","0.0.0-2021-06-23--08-12":"2021-06-23T08:12:58.573Z","0.0.0-2021-06-23--15-11":"2021-06-23T15:12:26.414Z","0.22.0":"2021-06-28T08:28:35.626Z","0.22.1":"2021-07-04T14:24:45.916Z","0.23.0":"2021-07-05T09:54:48.263Z","0.0.0-2021-08-01--12-54":"2021-08-01T12:55:13.460Z","0.24.0":"2021-08-01T14:16:27.249Z","0.24.1":"2021-09-01T12:38:09.824Z","0.0.0-2021-09-19--10-26":"2021-09-19T10:27:39.074Z","0.25.0":"2021-09-19T12:44:35.904Z","0.0.0-2021-10-20--09-32":"2021-10-20T09:33:06.135Z","0.26.0":"2021-10-26T19:29:41.108Z","0.26.1":"2021-11-29T11:11:46.276Z","0.0.0-2021-12-15--12-47":"2021-12-15T12:48:38.903Z","0.0.0-2021-12-15--13-05":"2021-12-15T13:06:49.464Z","0.0.0-2021-12-15--13-29":"2021-12-15T13:30:58.224Z","0.0.0-2021-12-15--16-17":"2021-12-15T16:18:15.889Z","0.0.0-2021-12-20--13-41":"2021-12-20T13:42:08.957Z","0.0.0-2021-12-21--15-57":"2021-12-21T15:58:28.470Z","0.0.0-2021-12-22--14-33":"2021-12-22T14:36:15.304Z","0.0.0-2021-12-26--12-22":"2021-12-26T12:22:56.728Z","0.0.0-2021-12-26--12-31":"2021-12-26T12:32:46.549Z","0.27.0":"2021-12-27T09:50:51.932Z","0.0.0-2022-04-13--14-32":"2022-04-13T14:32:50.988Z","0.27.1":"2022-04-13T15:40:53.794Z"},"maintainers":[{"name":"aspecto-release-bot","email":"dev@aspecto.io"}],"description":"open telemetry instrumentation for the `amqplib` package","homepage":"https://github.com/aspecto-io/opentelemetry-amqplib","keywords":["amqplib","opentelemetry","rabbitmq","AMQP 0-9-1"],"repository":{"type":"git","url":"git+https://github.com/aspecto-io/opentelemetry-amqplib.git"},"bugs":{"url":"https://github.com/aspecto-io/opentelemetry-ext-js/issues"},"license":"Apache-2.0","readme":"# OpenTelemetry amqplib Instrumentation for Node.js\n[![NPM version](https://img.shields.io/npm/v/opentelemetry-instrumentation-amqplib.svg)](https://www.npmjs.com/package/opentelemetry-instrumentation-amqplib)\n\nThis module provides automatic instrumentation for [`amqplib`](https://github.com/squaremo/amqp.node).\n\n## Installation\n\n```\nnpm install --save opentelemetry-instrumentation-amqplib\n```\n\n## Usage\nFor further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-instrumentation) package.\n\n```js\nconst { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');\nconst { registerInstrumentations } = require('@opentelemetry/instrumentation');\nconst { AmqplibInstrumentation } = require('opentelemetry-instrumentation-amqplib');\n\nregisterInstrumentations({\n  tracerProvider,\n  instrumentations: [\n    new AmqplibInstrumentation({\n      // see under for available configuration\n    })\n  ]\n});\n```\n\n### amqplib Instrumentation Options\n\namqplib instrumentation has few options available to choose from. You can set the following:\n\n| Options        | Type                                   | Description                                                                                     |\n| -------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------- |\n| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent |\n| `consumeHook` | `AmqplibConsumerCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed |\n| `consumeEndHook` | `AmqplibConsumerEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server |\n| `moduleVersionAttributeName` | `string` | If passed, a span attribute will be added to all spans with key of the provided `moduleVersionAttributeName` and value of the patched module version |\n| `consumeTimeoutMs` | `number` | default is 1 minute. read [description below](#InstrumentationTimeout)|\n---\n\nThis extension (and many others) was developed by [Aspecto](https://www.aspecto.io/) with ❤️\n\n## Implementation Issues\n\n### Instrumentation Timeout\nThe instrumentation is keeping track on open consumed messages which are not acked yet to support `ackAll`/`allUpTo` etc features.\n\nSaving a reference, means the msg will not be garbage collected if user forget about it\nand never ack the msg.\nTo insure we don't leak memory, the instrumentation has internal timeout **which is not\ncorrelated to the server timeout if one is set**, and which will trigger ending the span when reached.\nThis timeout is by default set to 1 minute, and should be reviewed in each use case, for example if handling consumed messages is expected to take more than 1 minute.\nIf you want to disable this behavior, set `consumeTimeoutMs` to `null` or `0`.\n","readmeFilename":"README.md"}