{"_id":"@caravellabs/telemetry-reporter","_rev":"4-dd36e0a22a96e35c4847c0a35ecccac4","name":"@caravellabs/telemetry-reporter","dist-tags":{"latest":"1.0.1"},"versions":{"0.1.1":{"name":"@caravellabs/telemetry-reporter","version":"0.1.1","description":"A telemetry reporter for analytics and usage data for Caravel Labs projects and customers.","author":{"name":"Caravel Labs, Inc."},"license":"MIT","main":"dist/src/index.js","scripts":{"build":"tsc --project tsconfig.dist.json","lint":"npx eslint --ext ts .","test":"jest --verbose"},"dependencies":{"node-fetch":"^2.6.7","node-forge":"^1.3.0","promise-retry":"^2.0.1"},"devDependencies":{"@swc/core":"^1.2.135","@swc/jest":"^0.2.17","@tsconfig/node14":"^1.0.1","@types/jest":"^26.0.24","@types/node":"^14.18.12","@types/node-fetch":"^2.6.1","@types/node-forge":"^1.0.1","@types/promise-retry":"^1.1.3","@typescript-eslint/eslint-plugin":"^3.10.1","@typescript-eslint/parser":"^3.10.1","eslint":"^7.31.0","eslint-config-prettier":"^8.3.0","eslint-config-standard":"^16.0.3","eslint-plugin-import":"^2.25.4","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0","eslint-plugin-promise":"^5.2.0","eslint-plugin-standard":"^5.0.0","jest":"^26.6.3","jest-junit":"^13.0.0","nock":"^13.2.4","prettier":"2.3.2","typescript":"^4.5.5"},"types":"./dist/src/index.d.ts","_id":"@caravellabs/telemetry-reporter@0.1.1","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-X+5omDmXfxVMQQwNoBJsNbKx4YHq98UHOYbTmOCdUw1RwWhs4DnJoT/K5DLJeNKZplzIbymwvUP48JeTc1Xvcg==","shasum":"6094af9bc65e0f26bd0eb9b394fbd542722a3e77","tarball":"https://registry.npmjs.org/@caravellabs/telemetry-reporter/-/telemetry-reporter-0.1.1.tgz","fileCount":6,"unpackedSize":12170,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQefjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7jQ/+NO9MQxfCf9E0QJlzqS9qVYzH+S7HyKGlyNsica0hSlKJCPlc\r\nYHopP1ksKdcPsLXYV468HSVNXv36V4BYRKCa0RgFRYFryvuK7G1F4eqiam5h\r\nyQ0DIq9LVvO/KsoiprUhGdUY4jByKwW/apKaiC+Osk9FvX88/E+92LuW5FMk\r\nxyqAmpRu062kkTzBSIb85Dvru2VwKcLx0Nm5rOxPBhaUCCk0p81SHpzAqE3L\r\n0D8C+iL0Q8E24dT8Vw4fUZKuaiOotKi5GvkJOdiZIdJfTtEz5yLknDyM332e\r\ncnHEoiHb5YeONfi5onXErH03r1KkcuW9GPNp/5F9P4oTf1MCFzrJMZLrew6V\r\nsxULtW0S3re6puscdK/9e3uBbGsG9y6q+xdeBzOaX87O0JYt5fULpNPhFaK1\r\nkUbVPQQh66O6zW8A2/wLOzXpfcOqNz2GHRyMDmfZI9eVidTkb0vcgersP9qi\r\nnQo4mWBwzgzIjUnkvnplLHK8jrWw16Pu08mksDhmr4M/TLx83spHqrZNNjmn\r\n+Gl6hfPAOsqP25Q/nGTJe22hJCg7PtAVqmwG9q5JqtH6POOJHHy87pQUA2Pb\r\nQ7iQQBskAD8QInEc51ckd+LvEas1Bwu3Y2zs5/jB0lvkMnt0EyAMpIuW4SWx\r\nSLc8n/yua5zN0xCGOI/X5X1PrOtcj3RG1PI=\r\n=i80G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0IMDvD3rPk6/fp8wpvKheL3JdWBLcGTeZSTCX1EAWYwIgSbvEhbdB/r6Y/Tk7bQq+1YJPmUNJUjLuOTQRnthy4Tg="}]},"_npmUser":{"name":"astoffel","email":"astoffel@caravellabs.com"},"directories":{},"maintainers":[{"name":"astoffel","email":"astoffel@caravellabs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/telemetry-reporter_0.1.1_1648486370975_0.02426867094231211"},"_hasShrinkwrap":false},"0.1.2":{"name":"@caravellabs/telemetry-reporter","version":"0.1.2","description":"A telemetry reporter for analytics and usage data for Caravel Labs projects and customers.","author":{"name":"Caravel Labs, Inc."},"license":"MIT","main":"dist/src/index.js","scripts":{"build":"tsc --project tsconfig.dist.json","lint":"npx eslint --ext ts .","test":"jest --verbose"},"dependencies":{"node-fetch":"^2.6.7","node-forge":"^1.3.0","promise-retry":"^2.0.1"},"devDependencies":{"@swc/core":"^1.2.135","@swc/jest":"^0.2.17","@tsconfig/node14":"^1.0.1","@types/jest":"^26.0.24","@types/node":"^14.18.12","@types/node-fetch":"^2.6.1","@types/node-forge":"^1.0.1","@types/promise-retry":"^1.1.3","@typescript-eslint/eslint-plugin":"^3.10.1","@typescript-eslint/parser":"^3.10.1","eslint":"^7.31.0","eslint-config-prettier":"^8.3.0","eslint-config-standard":"^16.0.3","eslint-plugin-import":"^2.25.4","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0","eslint-plugin-promise":"^5.2.0","eslint-plugin-standard":"^5.0.0","jest":"^26.6.3","jest-junit":"^13.0.0","nock":"^13.2.4","prettier":"2.3.2","typescript":"^4.5.5"},"types":"./dist/src/index.d.ts","_id":"@caravellabs/telemetry-reporter@0.1.2","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-7ifYuyUDT5vYnCD2d7bYPBgvpAWElxkDAL8qPYdh2mNMXRt3k63oHGt7Dhc2D1KopEtUxDLFBLiJSVI6qyGgLw==","shasum":"c99797858318c054198b3713a64b85324de71312","tarball":"https://registry.npmjs.org/@caravellabs/telemetry-reporter/-/telemetry-reporter-0.1.2.tgz","fileCount":6,"unpackedSize":12170,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQfuMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrgww/+KY182akUykXMAhwzz8V3bWbHs1MFO++dEhjqv+0IDN8BeDGZ\r\n5YDOwGt20Ptm/54aJiTL/hU11cJi7sm4KOiDZlm3Z/cE2FJDCoYsHRa07SFj\r\nr9BoLtbmy87wJ8n2DqdNVqjFV1IeZEJ3EqXMbvGY8FKN7ImQNuTXEYmB+jdl\r\nmrQeZa5kEFSBFCZVy/GrBBr6ab0fQkvq+UHfCLzqcKWZuwfbkH3zXr4cC/k0\r\n79cgRjnJ0SJPZcpMYmwx8gbVCVjwo/fAdHyhfmZsikravlvtjj23PiOBFQQ4\r\nOqGWXMeExbG3kwbAsyHy75dQFOPrWMPR0MKB/0s0ktsql6m94Co/zVeKZQ7t\r\nUVGdbgTS6zjW4UXkR2OKXDaGS4oss9cNXTBZWxp5X77KhRd3ZYZm+pPrPhgq\r\ndetfkEgUCMvx+JmCw485l7/s7745upIAPdZtSy80hSSZVEw7rwUffAZRxE34\r\nRmCg9W8rM3g6PR18nASKFgFyT0M9ac3V6UqrkUSVuuuihxzLpEVqKaKP4ZBM\r\nbIgZ51KVJNcua1RQhXAddP++x6+pqpo82TVPuzin88DmMuuV1phYgtyDALZR\r\nLskrv4oJN7uLCm5OqedWW8lpux3k5y6pLxDLKfwv2z2qEItslrPbWd8aw7vm\r\nkrXafHGU5NxMz70pR1AJcSgt8eO3t17FbFw=\r\n=mlAf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGpoaCucKxXEYV4KXd8HKshw6kIklJ0FR5REDBNQ82DqAiByZWcy5QSbDh2RFOyKDAM1wWW7vWujEWm1XzlFKJCXNg=="}]},"_npmUser":{"name":"astoffel","email":"astoffel@caravellabs.com"},"directories":{},"maintainers":[{"name":"astoffel","email":"astoffel@caravellabs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/telemetry-reporter_0.1.2_1648491404402_0.21898299922081366"},"_hasShrinkwrap":false},"1.0.0":{"name":"@caravellabs/telemetry-reporter","version":"1.0.0","description":"A telemetry reporter for analytics and usage data for Caravel Labs projects and customers.","author":{"name":"Caravel Labs, Inc."},"license":"MIT","main":"dist/src/index.js","scripts":{"build":"tsc --project tsconfig.dist.json","lint":"npx eslint --ext ts .","test":"jest --verbose"},"dependencies":{"node-fetch":"^2.6.7","node-forge":"^1.3.0","promise-retry":"^2.0.1"},"devDependencies":{"@swc/core":"^1.2.135","@swc/jest":"^0.2.17","@tsconfig/node14":"^1.0.1","@types/jest":"^26.0.24","@types/node":"^14.18.12","@types/node-fetch":"^2.6.1","@types/node-forge":"^1.0.1","@types/promise-retry":"^1.1.3","@typescript-eslint/eslint-plugin":"^3.10.1","@typescript-eslint/parser":"^3.10.1","eslint":"^7.31.0","eslint-config-prettier":"^8.3.0","eslint-config-standard":"^16.0.3","eslint-plugin-import":"^2.25.4","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0","eslint-plugin-promise":"^5.2.0","eslint-plugin-standard":"^5.0.0","jest":"^26.6.3","jest-junit":"^13.0.0","nock":"^13.2.4","prettier":"2.3.2","typescript":"^4.5.5"},"types":"./dist/src/index.d.ts","_id":"@caravellabs/telemetry-reporter@1.0.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-3veccPYdL4RK38GfOAazSIHI85D6fQEtGmKPgw1PlyMrY5My8yZfVh4ltK7GoZZjEE59sLXOcTOo7vT7HrOdPw==","shasum":"93783aaaf20094e07e5718ad7d4cbcf678ad0a57","tarball":"https://registry.npmjs.org/@caravellabs/telemetry-reporter/-/telemetry-reporter-1.0.0.tgz","fileCount":6,"unpackedSize":12170,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQh8FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrFNw//W9UZ3WIYZ3ukiM7kXe30xPJMXoMqOznc/dPK0vm9f+CnS0kk\r\nPZN2UcAlG4MAYW1JW09N44Z1MqT7iYP8kZo2WqwMEdoAQ5AuV3CJ3jKZDoXL\r\nngRq4/Th3OZpAhZAXvsAs59jUKxVA3CMUb4rgXQn5xrk69jHtw6TocJGuEMS\r\nzd0bqRwioZcyCiD2n8yztKeigRX7xzcARBd3Q/Ex2Ot0rs4ssV9af1was+jI\r\nRvl9Z/wBYsBHBD727aKh6fUF9CwinPF/xsAu6nvoHAlyi1ERrVph57eWz3eE\r\nnlCG3BuBQCGTnpnqeIxBOYCP3X/sCxVr69wdjYCj9+a2Z9Cl4ky3ZIbxkNt+\r\nW12iHBxtiKbTRZZiPh8mLONHLDDOomZMkWwRXnp7TIsACYX/y88KRCDbvPuw\r\nwI7oC6/q0y39pStaLHvDrEHS5Qpm9BGayX85GPn4MVu8w6O9waBW/p44NH63\r\ntbvhUUz8WURDQZsc9qA5MolsJ2vFsJm93VMFihmXnvInwNz13VVtAQWx56Ty\r\n0SWmk4ejztTHr2DME0TSOCtuUE484mJplcQkoYpQGMDM3vh7OPEJKcWpklGG\r\nCtlea/xEz1DYC0lDfwQdpdI/ysalpwxC4i5Ie11tmFxMqh7VF5kxySjM8O7r\r\nfRTFhHfzAlaR3Gm/X/IN+Dsrml8fLV7xNvY=\r\n=49Ps\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUd4RkMuqX7laDu5qEJQsgP2ikxNPAyaB8seg9S3KLKAIgce56N3tT7O+BJ/rjEVUJ9NwZWiY1wM+pZALTq/DxkMI="}]},"_npmUser":{"name":"astoffel","email":"astoffel@caravellabs.com"},"directories":{},"maintainers":[{"name":"astoffel","email":"astoffel@caravellabs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/telemetry-reporter_1.0.0_1648500485139_0.9441902536301845"},"_hasShrinkwrap":false},"1.0.1":{"name":"@caravellabs/telemetry-reporter","version":"1.0.1","description":"A telemetry reporter for analytics and usage data for Caravel Labs projects and customers.","author":{"name":"Caravel Labs, Inc."},"license":"MIT","main":"dist/src/index.js","scripts":{"build":"tsc --project tsconfig.dist.json","lint":"npx eslint --ext ts .","test":"jest --verbose"},"dependencies":{"node-fetch":"^2.6.7","node-forge":"^1.3.0","promise-retry":"^2.0.1"},"devDependencies":{"@swc/core":"^1.2.135","@swc/jest":"^0.2.17","@tsconfig/node14":"^1.0.1","@types/jest":"^26.0.24","@types/node":"^14.18.12","@types/node-fetch":"^2.6.1","@types/node-forge":"^1.0.1","@types/promise-retry":"^1.1.3","@typescript-eslint/eslint-plugin":"^3.10.1","@typescript-eslint/parser":"^3.10.1","eslint":"^7.31.0","eslint-config-prettier":"^8.3.0","eslint-config-standard":"^16.0.3","eslint-plugin-import":"^2.25.4","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0","eslint-plugin-promise":"^5.2.0","eslint-plugin-standard":"^5.0.0","jest":"^26.6.3","jest-junit":"^13.0.0","nock":"^13.2.4","prettier":"2.3.2","typescript":"^4.5.5"},"types":"./dist/src/index.d.ts","_id":"@caravellabs/telemetry-reporter@1.0.1","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-SmhJEc8gdCzsNayO5e8y6py5mw/UrDEtGaYlGR7p4/PHYqOItWmz5p4vqPryjgPJKi4v8rAMo1bfeM2g4EtyKw==","shasum":"4f293be984cfa9c42a220ca8554817fed13a9be9","tarball":"https://registry.npmjs.org/@caravellabs/telemetry-reporter/-/telemetry-reporter-1.0.1.tgz","fileCount":6,"unpackedSize":12368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQ68DACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqbzw/+KaTiJmhEynoLG+h3UxHs8rKfz2oR1TFO53cS0vfLALc4Mh9W\r\nj4bX3e9E+HdrSMl37yTxJk+UVuBZOjC0+ESgwEKaUw/lRQB2d8wo1GPuqkMM\r\nT720XF5bYxOyu2svUF2AHKh/0mvoNj6/ahQvXgM7MTf443wXhtOvPeLQHrxF\r\n6nmd9d8eRcwM6nFIevoNK3c6UQxnEfsF03E4gtVmvoXETbta/D/GlpfRvSbX\r\nG3qB4TaX7dc9MGyS7EAyoOgCaLcK0aHn48sPF1Qu7pmuH7DswoBYgUtu2QMU\r\nu3xSp40amR3yM5VCNo4g1MESy0b5J8fj1XvefFig+ztQ01jqWhO9VAI/zOJ6\r\nUBMsje9FBgMN0lvCY4rmp4nGHchwM2g3XTgw8/U0bgDCXbp3E5/3yS3KaigI\r\n1oS9CGMgvbRVxl2EMm1fZs3PI73sUppaf5UeIUXCx2+axBJMQftNE4l4j4tD\r\nBuNLdTbQ+T0Xmwp10QoGHRxv6vcVxeruIHBxuXcxyR7IpstlCt5WBHbjv7YR\r\nVyPqfEo2CtKef5QqiNvMLhb8CoaGri8oHDq7geqh1Ku9Tm/mSJxxHNSKnlsL\r\nv2BfmD3RME2s7F/rrOLZd5fodR5rLyvJYrkmDebbNBRRH2OV6fSOJCjTQYDw\r\ni6sGiTCEV3JcEmte51SUtSoIsCh81G7SGm8=\r\n=zauy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCHwR1cVa96Mt39Glj2RWc8MT9k8aVpoTeqWv12gktpcgCICIxN34Zu0LgEbrjE1mpo0levHGIl9VptVien3Bbj9go"}]},"_npmUser":{"name":"astoffel","email":"astoffel@caravellabs.com"},"directories":{},"maintainers":[{"name":"astoffel","email":"astoffel@caravellabs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/telemetry-reporter_1.0.1_1648602883159_0.4505520200405493"},"_hasShrinkwrap":false}},"time":{"created":"2022-03-28T16:52:50.908Z","0.1.1":"2022-03-28T16:52:51.338Z","modified":"2022-04-04T21:47:39.546Z","0.1.2":"2022-03-28T18:16:44.552Z","1.0.0":"2022-03-28T20:48:05.292Z","1.0.1":"2022-03-30T01:14:43.307Z"},"maintainers":[{"name":"astoffel","email":"astoffel@caravellabs.com"}],"description":"A telemetry reporter for analytics and usage data for Caravel Labs projects and customers.","author":{"name":"Caravel Labs, Inc."},"license":"MIT","readme":"# Caravel Labs Telemetry Reporter\nThis package reports usage, analytics, and billing telemetry to the Caravel Labs collection endpoint.\n\n## Requirements\nThis package can only be used in server-side code in order to preserve the integrity of customer secret values. If you need to report browser data, you must proxy the request through an API endpoint in your server-side implementation.\n\nYou must obtain the first customer secret value from a Caravel Labs administrator. Once you have the secret, you can use this package to automatically rotate it.\n\n## Usage\nCreate in instance of the `TelemetryReporter` class using your customer key and secret. Optionally, specify retry and error behavior:\n```ts\nimport TelemetryReporter from '@caravellabs/telemetry-reporter';\n\nconst reporter = new TelemetryReporter(\n    'myCustomerKey',\n    'myCustomerSecret', \n    {\n        maxRetryTime: 10000,\n        maxRetries: 20,\n        throwOnFailure: true\n    });\n```\n\n### Report telemetry data\nReport simple telemetry transactions with optional additional data in string format:\n```ts\nawait reporter.report('myServiceName', 'myFeatureName');\nawait reporter.report('myServiceName', 'myFeatureName', 'additionalData');\n```\n\nReport custom telemetry metrics in bulk format:\n```ts\nawait reporter.report(\n    'myServiceName', \n    'myFeatureName', \n    {\n        startDate: '2022-01-01T00:00:00.0000000Z',\n        endDate: '2022-01-31T23:59:59.9990000Z',\n        items: [\n            { txnProp1: 'data', txnProp2: 123 },\n            { txnProp1: 'data', txnProp2: 123 },\n            { txnProp1: 'data', txnProp2: 123 }\n        ]\n    });\n```\n\n### Rotate your secret\nUpdate your customer secret value, specifying an optional duration (in minutes) for which previous secret values will be accepted:\n```ts\nawait reporter.updateSecret('myNewSecret', 90);\n```\n","readmeFilename":"README.md"}