{"_id":"@articulate/sox-newrelic","_rev":"180-03382f8ae1b567c340f5a7594637dc81","name":"@articulate/sox-newrelic","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"@articulate/sox-newrelic","version":"0.0.1","description":"NewRelic integration for @articulate/sox","main":"index.js","repository":{"type":"git","url":"git+ssh://git@github.com/articulate/sox-newrelic.git"},"author":{"name":"articulate"},"license":"MIT","nyc":{"check-coverage":true,"branches":100,"functions":100,"lines":100,"statements":100},"scripts":{"coverage":"nyc report --reporter=text-lcov | coveralls","lint":"eslint .","test":"mocha --reporter=dot","test:ci":"yarn run lint && yarn run test:coverage && yarn run coverage","test:coverage":"nyc yarn run test"},"dependencies":{"ramda":"^0.25.0"},"devDependencies":{"@articulate/spy":"^0.0.1","chai":"^4.2.0","coveralls":"^3.0.2","eslint":"^5.6.1","mocha":"^5.2.0","nyc":"^13.0.1","prop-factory":"^1.0.0"},"peerDependencies":{"newrelic":"4.x"},"gitHead":"bfeb539abf5e5ce4188ac974216df85b0bd02bae","bugs":{"url":"https://github.com/articulate/sox-newrelic/issues"},"homepage":"https://github.com/articulate/sox-newrelic#readme","_id":"@articulate/sox-newrelic@0.0.1","_npmVersion":"6.1.0","_nodeVersion":"8.11.1","_npmUser":{"name":"flintinatux","email":"mccormack.scott@gmail.com"},"dist":{"integrity":"sha512-ZDK5Cf21oN2ED/QbjjRKw87keh2CwZUwtSSdi4exVRgdDN2Bgs1nB84NnuIAf3XCBp3XCTZx8MhZnUSu2EKXcg==","shasum":"4e185e8bb326b0dc51fabe6ed4363a329914ff06","tarball":"https://registry.npmjs.org/@articulate/sox-newrelic/-/sox-newrelic-0.0.1.tgz","fileCount":6,"unpackedSize":5419,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbtSvYCRA9TVsSAnZWagAAuBwP/RyCf8vsprUcpISWgxjR\nWII7pLsdxaqZH7nPuQP1TWDI/0U8ZGAezUZfMBtVeXW9RuuroEjpIFmB0XsW\nx/mDyNo3txC8tpkyjnOWuSG9Bz3ePYszzJuEPojr+1jjTNYPr/yf3rpDBtHo\nBQPSUitYsEc+abxb7sVfrTGGjZeevZu46m2Ldv7QSrbDOTWfZXIOxNQRKutC\nSZBWkne6ZO2pH8v+5CHS3+IAxptS3ojhtMZSv86OFDrj4Ui+nyFVF94xaYuK\ngm4NXvCMBYhmqjCtfVD8QlO0tXtD8bIKMCSVhZTzAGFczpXW+4cAR9xY+05W\nK/GNPCb/1HIg3kiAxMp2g9Y1hBKjbquCa5zQ7nL2sPH2DehQv5sQPYK7ceBo\n1BbdgWPzduVIhZc1gYCDBjwVOohxpVB66b1eiU23G4tMD+1s0tz4e2Q/wJzb\nZ094ufbk9JLksF0pYgnj7uogff8HtK7cwnO2HsT3r0PVy5+CHmkdnOztF5fx\nDNQsSmziOa38a9DFBiwTyY6wpm+0sTIXUxiQWwh8GDH0BZiHZnj8MbO0LCJn\nn2/sh3riwN+jFCYJ/VcmjSiBnObNMvqfTfIAmfh2XxJGPiWtIvz94SnN4vF0\n+qqB2MbBb8uG9DFsd3gR5iqlZNIdaFEIz7NEbQ3msgo6d9sXXTX5Cc3xddmm\nTx2P\r\n=sJ1L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE3wU67sUuMwPAS1ICOrCMfFqXGWAjgZcc8j4PSgDBmIAiEAgWcPJ4GiSRWSEWj00NiSO4wcTgSCcJbpe5pkHxr62XI="}]},"maintainers":[{"name":"articulateadmin","email":"admin@articulate.com"},{"name":"botzo","email":"platform@articulate.com"},{"name":"cdwills","email":"craig.d.wills@gmail.com"},{"name":"chazu","email":"chaz@plaidpotion.com"},{"name":"darrenwhite","email":"darrenw@articulate.com"},{"name":"defn","email":"npm@defn.us"},{"name":"doneill","email":"danieloneilldev@outlook.com"},{"name":"evil","email":"evilsoft@aol.com"},{"name":"fbguillo","email":"blake.guilloud@gmail.com"},{"name":"flintinatux","email":"mccormack.scott@gmail.com"},{"name":"fromonesrc","email":"aochonicki+npmjs@articulate.com"},{"name":"jamesadams11","email":"jameswadams11@gmail.com"},{"name":"jasminabasurita","email":"jasminejacquelin@gmail.com"},{"name":"jrpz","email":"jperez@articulate.com"},{"name":"kdstew","email":"kstewart@articulate.com"},{"name":"mcurran","email":"mcurran@articulate.com"},{"name":"mgreystone","email":"markus.greystone@gmail.com"},{"name":"mikeolivieri","email":"mike@articulate.com"},{"name":"nicerhugs","email":"jscheuring@gmail.com"},{"name":"patrickeakin","email":"p.w.eakin@gmail.com"},{"name":"pklingem","email":"patrick.klingemann@gmail.com"},{"name":"racheldonovan","email":"rdonovan@articulate.com"},{"name":"rpearce","email":"me@robertwpearce.com"},{"name":"siljil","email":"jsilver@articulate.com"},{"name":"spencerfdavis","email":"spencerfdavis@gmail.com"},{"name":"spurr","email":"spurr@articulate.com"},{"name":"tchamblee","email":"tchamblee@articulate.com"},{"name":"tecnobrat","email":"brian@tecnobrat.com"},{"name":"vamseek","email":"vamsee@articulate.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/sox-newrelic_0.0.1_1538599895855_0.6298581501487779"},"_hasShrinkwrap":false}},"time":{"created":"2018-10-03T20:51:35.754Z","0.0.1":"2018-10-03T20:51:35.991Z","modified":"2024-04-24T15:53:24.454Z"},"maintainers":[{"email":"platform@articulate.com","name":"botzo"}],"description":"NewRelic integration for @articulate/sox","homepage":"https://github.com/articulate/sox-newrelic#readme","repository":{"type":"git","url":"git+ssh://git@github.com/articulate/sox-newrelic.git"},"author":{"name":"articulate"},"bugs":{"url":"https://github.com/articulate/sox-newrelic/issues"},"license":"MIT","readme":"# @articulate/sox-newrelic\n[![@articulate/sox-newrelic](https://img.shields.io/npm/v/@articulate/sox-newrelic.svg)](https://www.npmjs.com/package/@articulate/sox-newrelic)\n[![Build Status](https://travis-ci.org/articulate/sox-newrelic.svg?branch=master)](https://travis-ci.org/articulate/sox-newrelic)\n[![Coverage Status](https://coveralls.io/repos/github/articulate/sox-newrelic/badge.svg?branch=master)](https://coveralls.io/github/articulate/sox-newrelic?branch=master)\n\nNewRelic integration for [`@articulate/sox`](https://github.com/articulate/sox).\n\n## Usage\n\n```haskell\ninstrument :: NewRelic -> (Action -> Promise Action) -> Action -> Promise Action\n```\n\nWraps a top-level action handler to instrument for NewRelic.\n\n```js\nconst instrument = require('@articulate/sox-newrelic')\nconst io = require('socket.io')\nconst { mount } = require('@articulate/sox')\nconst newrelic = require('newrelic')\nconst { tap } = require('ramda')\n\nconst handler = require('./handler')\n\nconst app =\n  instrument(newrelic, handler)\n\nconst sockets = server =>\n  io(server).use(mount({ app }))\n\nmodule.exports = tap(server)\n```\n\nIf your handlers are split into modules, `instrument` is curried to make the following possible:\n\n```js\nconst { compose, mergeAll, tap, values } = require('ramda')\nconst instrument = require('@articulate/sox-newrelic')\nconst { handle, mount } = require('@articulate/sox')\nconst io = require('socket.io')\nconst newrelic = require('newrelic')\n\nconst handlers = require('require-dir')()\n\nconst app =\n  compose(instrument(newrelic), handle, mergeAll, values)(handlers)\n\nconst sockets = server =>\n  io(server).use(mount({ app }))\n\nmodule.exports = tap(server)\n```\n","readmeFilename":"README.md"}