{"_id":"logfmt","_rev":"244858","name":"logfmt","description":"key=value logger and parser","dist-tags":{"latest":"1.3.2"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"time":{"modified":"2021-06-03T16:02:20.000Z","created":"2013-05-02T08:22:59.332Z","1.3.2":"2019-06-02T22:13:45.345Z","1.2.2":"2019-06-02T03:30:09.695Z","1.2.1":"2018-05-24T01:27:33.137Z","1.2.0":"2014-09-24T04:58:09.298Z","1.1.3":"2014-09-24T04:49:48.844Z","1.1.2":"2014-03-26T21:15:18.709Z","1.1.1":"2014-03-25T06:24:08.978Z","1.0.0":"2014-03-21T23:30:30.477Z","1.0.0-pre3":"2014-03-19T00:43:08.810Z","1.0.0-pre2":"2014-03-18T05:16:27.221Z","1.0.0-pre":"2014-03-16T00:45:34.140Z","0.23.0":"2014-03-13T21:44:09.468Z","0.22.0":"2014-03-13T20:02:37.072Z","0.21.0":"2014-02-13T21:42:48.942Z","0.20.0":"2014-01-26T23:44:19.071Z","0.19.0":"2014-01-26T23:25:08.734Z","0.18.1":"2013-12-14T22:44:00.047Z","0.18.0":"2013-12-14T21:12:34.063Z","0.17.0":"2013-11-23T23:08:34.908Z","0.16.0":"2013-11-07T21:38:53.903Z","0.15.0":"2013-08-29T16:54:12.738Z","0.14.1":"2013-08-23T23:38:33.401Z","0.14.0":"2013-08-23T22:41:09.563Z","0.13.1":"2013-08-20T22:08:14.629Z","0.13.0":"2013-08-15T18:27:07.369Z","0.12.0":"2013-08-02T05:52:35.303Z","0.11.1":"2013-07-31T17:50:46.870Z","0.11.0":"2013-07-30T18:21:05.756Z","0.10.0":"2013-07-30T16:19:53.835Z","0.9.2":"2013-07-26T22:36:14.576Z","0.9.1":"2013-07-26T06:41:26.308Z","0.9.0":"2013-07-26T06:16:44.915Z","0.6.0":"2013-07-25T23:37:01.071Z","0.5.1":"2013-07-23T19:08:07.063Z","0.5.0":"2013-07-23T19:03:23.707Z","0.4.0":"2013-07-23T16:33:00.526Z","0.3.1":"2013-07-01T00:19:49.013Z","0.3.0":"2013-07-01T00:07:51.454Z","0.2.0":"2013-05-02T08:57:06.840Z","0.1.0":"2013-05-02T08:22:59.332Z"},"users":{"pratikvelani":true,"mpinteractiv":true,"lantrix":true,"willhoag":true,"riyadhalnur":true,"prashtx":true,"tcauduro":true,"jtrh":true,"gurunate":true},"author":{"name":"csquared"},"repository":{"type":"git","url":"git+https://github.com/csquared/node-logfmt.git"},"versions":{"1.3.2":{"name":"logfmt","version":"1.3.2","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x"},"devDependencies":{"express":"^4.17.1","mocha":"*","restify":"^8.3.2"},"repository":{"type":"git","url":"git+https://github.com/csquared/node-logfmt.git"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","gitHead":"e279d43cde019acfcca0abe99ea6b7ce8327e1f7","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"homepage":"https://github.com/csquared/node-logfmt#readme","_id":"logfmt@1.3.2","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"shasum":"be34020b7390b8201212a12f533e3cb4c92d70c2","size":14870,"noattachment":false,"key":"/logfmt/-/logfmt-1.3.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.3.2.tgz"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/logfmt_1.3.2_1559513625230_0.9491323979832293"},"_hasShrinkwrap":false,"publish_time":1559513625345,"_cnpm_publish_time":1559513625345},"1.2.2":{"name":"logfmt","version":"1.2.2","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"git+https://github.com/csquared/node-logfmt.git"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","gitHead":"f8361818921282aefa871403170780954a08d557","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"homepage":"https://github.com/csquared/node-logfmt#readme","_id":"logfmt@1.2.2","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"shasum":"e9bf79855095372dce377c1b0bea161afeb38755","size":14865,"noattachment":false,"key":"/logfmt/-/logfmt-1.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.2.2.tgz"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/logfmt_1.2.2_1559446209583_0.19900746380455314"},"_hasShrinkwrap":false,"publish_time":1559446209695,"_cnpm_publish_time":1559446209695},"1.2.1":{"name":"logfmt","version":"1.2.1","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"4.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"git+https://github.com/csquared/node-logfmt.git"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","gitHead":"9cccf6273cdd862392ef7fea049d37a2b7c42e04","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"homepage":"https://github.com/csquared/node-logfmt#readme","_id":"logfmt@1.2.1","_npmVersion":"5.0.3","_nodeVersion":"8.1.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"dist":{"shasum":"0e99838eb3a87fb6272d6d2b4fc327b95a29abee","size":14888,"noattachment":false,"key":"/logfmt/-/logfmt-1.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.2.1.tgz"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/logfmt_1.2.1_1527125253058_0.28891219331631923"},"_hasShrinkwrap":false,"publish_time":1527125253137,"_cnpm_publish_time":1527125253137},"1.2.0":{"name":"logfmt","version":"1.2.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"homepage":"https://github.com/csquared/node-logfmt","_id":"logfmt@1.2.0","dist":{"shasum":"1ccc067c1cfe65f3ecf5856c09d2654f69203572","size":14992,"noattachment":false,"key":"/logfmt/-/logfmt-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.2.0.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1411534689298,"_cnpm_publish_time":1411534689298,"_hasShrinkwrap":false},"1.1.3":{"name":"logfmt","version":"1.1.3","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"homepage":"https://github.com/csquared/node-logfmt","_id":"logfmt@1.1.3","dist":{"shasum":"a28e482535d27b8a324bf84b8856a11ef8a5acb6","size":14927,"noattachment":false,"key":"/logfmt/-/logfmt-1.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.1.3.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1411534188844,"_cnpm_publish_time":1411534188844,"_hasShrinkwrap":false},"1.1.2":{"name":"logfmt","version":"1.1.2","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@1.1.2","dist":{"shasum":"2e39cd575b546e9e6ae586754263b7d26d4233b3","size":14987,"noattachment":false,"key":"/logfmt/-/logfmt-1.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.1.2.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1395868518709,"_cnpm_publish_time":1395868518709,"_hasShrinkwrap":false},"1.1.1":{"name":"logfmt","version":"1.1.1","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"homepage":"https://github.com/csquared/node-logfmt","_id":"logfmt@1.1.1","dist":{"shasum":"9afdf7017839663b9d8feba5e674d11ef22297c3","size":14574,"noattachment":false,"key":"/logfmt/-/logfmt-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.1.1.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1395728648978,"_cnpm_publish_time":1395728648978,"_hasShrinkwrap":false},"1.0.0":{"name":"logfmt","version":"1.0.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@1.0.0","dist":{"shasum":"495dc5b791c21d39657cd8ada516836e42ce0eb9","size":14108,"noattachment":false,"key":"/logfmt/-/logfmt-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.0.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1395444630477,"_cnpm_publish_time":1395444630477,"_hasShrinkwrap":false},"1.0.0-pre3":{"name":"logfmt","version":"1.0.0-pre3","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"homepage":"https://github.com/csquared/node-logfmt","_id":"logfmt@1.0.0-pre3","dist":{"shasum":"5e8a266222a0c5df257e1fca3eab28ab5fda64c9","size":14098,"noattachment":false,"key":"/logfmt/-/logfmt-1.0.0-pre3.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.0.0-pre3.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1395189788810,"_cnpm_publish_time":1395189788810,"_hasShrinkwrap":false},"1.0.0-pre2":{"name":"logfmt","version":"1.0.0-pre2","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@1.0.0-pre2","dist":{"shasum":"7c5e04792ff2752d50e8af21a3680f8e52b1d080","size":12963,"noattachment":false,"key":"/logfmt/-/logfmt-1.0.0-pre2.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.0.0-pre2.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1395119787221,"_cnpm_publish_time":1395119787221,"_hasShrinkwrap":false},"1.0.0-pre":{"name":"logfmt","version":"1.0.0-pre","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@1.0.0-pre","dist":{"shasum":"c723f2c5504bc566e83316b1eac3ded2f9e831eb","size":12675,"noattachment":false,"key":"/logfmt/-/logfmt-1.0.0-pre.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-1.0.0-pre.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1394930734140,"_cnpm_publish_time":1394930734140,"_hasShrinkwrap":false},"0.23.0":{"name":"logfmt","version":"0.23.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.23.0","dist":{"shasum":"681ce923f5a57f41d26d0e0a0f3ad15f8235dec0","size":13117,"noattachment":false,"key":"/logfmt/-/logfmt-0.23.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.23.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1394747049468,"_cnpm_publish_time":1394747049468,"_hasShrinkwrap":false},"0.22.0":{"name":"logfmt","version":"0.22.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","lodash":"~2.4.1"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.22.0","dist":{"shasum":"38bd8479a413688328a285a2de7bb75f357b41ee","size":13019,"noattachment":false,"key":"/logfmt/-/logfmt-0.22.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.22.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1394740957072,"_cnpm_publish_time":1394740957072,"_hasShrinkwrap":false},"0.21.0":{"name":"logfmt","version":"0.21.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.21.0","dist":{"shasum":"3e75c1d4da7dd91f291a3fdbfbd360f78a25f274","size":12815,"noattachment":false,"key":"/logfmt/-/logfmt-0.21.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.21.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1392327768942,"_cnpm_publish_time":1392327768942,"_hasShrinkwrap":false},"0.20.0":{"name":"logfmt","version":"0.20.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.20.0","dist":{"shasum":"f933df1ac50920239f0d386b7e2ff6b0cea67694","size":12646,"noattachment":false,"key":"/logfmt/-/logfmt-0.20.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.20.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1390779859071,"_cnpm_publish_time":1390779859071,"_hasShrinkwrap":false},"0.19.0":{"name":"logfmt","version":"0.19.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["log","parser","logfmt"],"author":{"name":"csquared"},"license":"MIT","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.19.0","dist":{"shasum":"8cab9c6b5bc1372d624cb6f1bef995455b25a09d","size":12677,"noattachment":false,"key":"/logfmt/-/logfmt-0.19.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.19.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1390778708734,"_cnpm_publish_time":1390778708734,"_hasShrinkwrap":false},"0.18.1":{"name":"logfmt","version":"0.18.1","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.18.1","dist":{"shasum":"4816ece34858b8b23c9cd81c4aa7674a1882e87c","size":12576,"noattachment":false,"key":"/logfmt/-/logfmt-0.18.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.18.1.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1387061040047,"_cnpm_publish_time":1387061040047,"_hasShrinkwrap":false},"0.18.0":{"name":"logfmt","version":"0.18.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.18.0","dist":{"shasum":"4cb9eacdcaf871e89849f2bed0cd1e3fbc816083","size":12544,"noattachment":false,"key":"/logfmt/-/logfmt-0.18.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.18.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1387055554063,"_cnpm_publish_time":1387055554063,"_hasShrinkwrap":false},"0.17.0":{"name":"logfmt","version":"0.17.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.17.0","dist":{"shasum":"e059024be7b84e8fa99679b773e4bc2e4dc31694","size":12327,"noattachment":false,"key":"/logfmt/-/logfmt-0.17.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.17.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1385248114908,"_cnpm_publish_time":1385248114908,"_hasShrinkwrap":false},"0.16.0":{"name":"logfmt","version":"0.16.0","description":"key=value logger and parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.16.0","dist":{"shasum":"084a32549d848ef68be6ae35c3be1e40de9b8a13","size":12196,"noattachment":false,"key":"/logfmt/-/logfmt-0.16.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.16.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1383860333903,"_cnpm_publish_time":1383860333903,"_hasShrinkwrap":false},"0.15.0":{"name":"logfmt","version":"0.15.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"mocha"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.3.x","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.15.0","dist":{"shasum":"83385e82e32b4e15f0edc478f0e7a67e0e7560fb","size":11923,"noattachment":false,"key":"/logfmt/-/logfmt-0.15.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.15.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1377795252738,"_cnpm_publish_time":1377795252738,"_hasShrinkwrap":false},"0.14.1":{"name":"logfmt","version":"0.14.1","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.*","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.14.1","dist":{"shasum":"fdc19ea3105e2c59d438624fdd22ea3227c4a688","size":11309,"noattachment":false,"key":"/logfmt/-/logfmt-0.14.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.14.1.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1377301113401,"_cnpm_publish_time":1377301113401,"_hasShrinkwrap":false},"0.14.0":{"name":"logfmt","version":"0.14.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.*","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.14.0","dist":{"shasum":"179ffe1e22752c2c46c386071113bc44a7684699","size":11254,"noattachment":false,"key":"/logfmt/-/logfmt-0.14.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.14.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1377297669563,"_cnpm_publish_time":1377297669563,"_hasShrinkwrap":false},"0.13.1":{"name":"logfmt","version":"0.13.1","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"0.2.x","through":"2.3.x","readable-stream":"1.0.x"},"devDependencies":{"express":"3.*","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.13.1","dist":{"shasum":"25862d587b9719fdcada92a940e0345351ae3499","size":10356,"noattachment":false,"key":"/logfmt/-/logfmt-0.13.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.13.1.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1377036494629,"_cnpm_publish_time":1377036494629,"_hasShrinkwrap":false},"0.13.0":{"name":"logfmt","version":"0.13.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.13.0","dist":{"shasum":"f9df3dee608509606f201802f232474df0978b71","size":10503,"noattachment":false,"key":"/logfmt/-/logfmt-0.13.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.13.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1376591227369,"_cnpm_publish_time":1376591227369,"_hasShrinkwrap":true},"0.12.0":{"name":"logfmt","version":"0.12.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.12.0","dist":{"shasum":"5ac6a3ad0cecdc3444fd779428e20e8b954ca8d2","size":1882837,"noattachment":false,"key":"/logfmt/-/logfmt-0.12.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.12.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1375422755303,"_cnpm_publish_time":1375422755303,"_hasShrinkwrap":true},"0.11.1":{"name":"logfmt","version":"0.11.1","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.11.1","dist":{"shasum":"7e3b9430d101b6da6c80b9ef6f5f1911543046b0","size":1882556,"noattachment":false,"key":"/logfmt/-/logfmt-0.11.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.11.1.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1375293046870,"_cnpm_publish_time":1375293046870,"_hasShrinkwrap":true},"0.11.0":{"name":"logfmt","version":"0.11.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*","restify":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.11.0","dist":{"shasum":"dfcf5b07681d22866a4780829f6e8e7ccd8b9720","size":1882275,"noattachment":false,"key":"/logfmt/-/logfmt-0.11.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.11.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1375208465756,"_cnpm_publish_time":1375208465756,"_hasShrinkwrap":true},"0.10.0":{"name":"logfmt","version":"0.10.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.10.0","dist":{"shasum":"925c594a4d29c3c949fd94c8224ed372bcca045c","size":1880982,"noattachment":false,"key":"/logfmt/-/logfmt-0.10.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.10.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1375201193835,"_cnpm_publish_time":1375201193835,"_hasShrinkwrap":false},"0.9.2":{"name":"logfmt","version":"0.9.2","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.9.2","dist":{"shasum":"72c08be363863e32f040520f50226991c852040e","size":5988,"noattachment":false,"key":"/logfmt/-/logfmt-0.9.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.9.2.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1374878174576,"_cnpm_publish_time":1374878174576,"_hasShrinkwrap":false},"0.9.1":{"name":"logfmt","version":"0.9.1","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.9.1","dist":{"shasum":"e9b0b2fdda90bdc5376deae20b898656b6e989ff","size":5931,"noattachment":false,"key":"/logfmt/-/logfmt-0.9.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.9.1.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1374820886308,"_cnpm_publish_time":1374820886308,"_hasShrinkwrap":false},"0.9.0":{"name":"logfmt","version":"0.9.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*","readable-stream":"*"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.9.0","dist":{"shasum":"e59324371edc852ac32ed50b3cb00e62a05beaf4","size":5505,"noattachment":false,"key":"/logfmt/-/logfmt-0.9.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.9.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1374819404915,"_cnpm_publish_time":1374819404915,"_hasShrinkwrap":false},"0.6.0":{"name":"logfmt","version":"0.6.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"dependencies":{"split":"*","through":"*"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"_id":"logfmt@0.6.0","dist":{"shasum":"b7c0e73da8b30132d3aff7e19175ec0dc06449ad","size":4951,"noattachment":false,"key":"/logfmt/-/logfmt-0.6.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.6.0.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1374795421071,"_cnpm_publish_time":1374795421071,"_hasShrinkwrap":false},"0.5.1":{"name":"logfmt","version":"0.5.1","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","_id":"logfmt@0.5.1","dist":{"shasum":"c8f35e6fb1a425d5298557f8b98730b28c9c8d87","size":4997,"noattachment":false,"key":"/logfmt/-/logfmt-0.5.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.5.1.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1374606487063,"_cnpm_publish_time":1374606487063,"_hasShrinkwrap":false},"0.5.0":{"name":"logfmt","version":"0.5.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","_id":"logfmt@0.5.0","dist":{"shasum":"2d8f2aa397358295bc987d03f829cda7293d02b6","size":5001,"noattachment":false,"key":"/logfmt/-/logfmt-0.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.5.0.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1374606203707,"_cnpm_publish_time":1374606203707,"_hasShrinkwrap":false},"0.4.0":{"name":"logfmt","version":"0.4.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","_id":"logfmt@0.4.0","dist":{"shasum":"4b1905dad609db66af00cd54bbf16f6452d624aa","size":4901,"noattachment":false,"key":"/logfmt/-/logfmt-0.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.4.0.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1374597180526,"_cnpm_publish_time":1374597180526,"_hasShrinkwrap":false},"0.3.1":{"name":"logfmt","version":"0.3.1","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","_id":"logfmt@0.3.1","dist":{"shasum":"98416f2754338db72cdbad1b38ad633c269976bc","size":4108,"noattachment":false,"key":"/logfmt/-/logfmt-0.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.3.1.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1372637989013,"_cnpm_publish_time":1372637989013,"_hasShrinkwrap":false},"0.3.0":{"name":"logfmt","version":"0.3.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"./test/test"},"bin":{"logfmt":"./bin/logfmt"},"devDependencies":{"express":"3.*","mocha":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser","logfmt"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","_id":"logfmt@0.3.0","dist":{"shasum":"645604edf8aee7ce9bfc9cb99753f861c3082f9f","size":4100,"noattachment":false,"key":"/logfmt/-/logfmt-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.3.0.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1372637271454,"_cnpm_publish_time":1372637271454,"_hasShrinkwrap":false},"0.2.0":{"name":"logfmt","version":"0.2.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"bin/test"},"bin":{"logfmt":"./bin/logfmt"},"devDependencies":{"express":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","_id":"logfmt@0.2.0","dist":{"shasum":"44c4f6660036a31b74e7fd7913bd961fbebac8d1","size":3053,"noattachment":false,"key":"/logfmt/-/logfmt-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.2.0.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1367485026840,"_cnpm_publish_time":1367485026840,"_hasShrinkwrap":false},"0.1.0":{"name":"logfmt","version":"0.1.0","description":"Key-Value log line parser","main":"logfmt.js","scripts":{"test":"bin/test"},"bin":{"logfmt":"./bin/logfmt"},"devDependencies":{"express":"*"},"repository":{"type":"git","url":"https://github.com/csquared/node-logfmt"},"keywords":["Log","Parser"],"author":{"name":"csquared"},"license":"BSD","readmeFilename":"README.md","_id":"logfmt@0.1.0","dist":{"shasum":"8476965e058be8e94c131648e05fdd15f32d5b1e","size":2822,"noattachment":false,"key":"/logfmt/-/logfmt-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/logfmt/download/logfmt-0.1.0.tgz"},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"csquared","email":"christopher.continanza@gmail.com"},"maintainers":[{"name":"csquared","email":"christopher.continanza@gmail.com"}],"directories":{},"publish_time":1367482979332,"_cnpm_publish_time":1367482979332,"_hasShrinkwrap":false}},"readme":"# node-logfmt\n\n[![Build Status](https://travis-ci.org/csquared/node-logfmt.png)](https://travis-ci.org/csquared/node-logfmt)\n\n\n\"logfmt\" is the name for a [key value logging convention](https://github.com/kr/logfmt) we've adopted at Heroku.\n\nThis library is for both converting lines in logfmt format to objects and\nfor logging objects to a stream in logfmt format.\n\nIt provides a logfmt parser, logfmt stringifier, a logging facility,\nand both streaming and non-streaming body parsers for express and restify.\n\nYou should use this library if you're trying to write structured logs or\nif you're consuming them (especially if you're writing a logplex drain).\n\n## install\n\n    npm install logfmt\n\n# use\n\n## node.js\n\nThe `logfmt` module is a singleton that works directly from require.\n\n```javascript\nvar logfmt = require('logfmt');\n\nlogfmt.stringify({foo: 'bar'});\n// 'foo=bar'\n\nlogfmt.parse('foo=bar');\n// {foo: 'bar'}\n```\n\nIt is also a constructor function, so you can use `new logfmt` to create\na new `logfmt` that you can configure differently.\n\n```javascript\nvar logfmt2 = new logfmt;\n\n// replace our stringify with JSON's\nlogfmt2.stringify = JSON.stringify\n\n// now we log JSON!\nlogfmt2.log({foo: 'bar'})\n// {\"foo\":\"bar\"}\n\n// and the original logfmt is untouched\nlogfmt.log({foo: 'bar'})\n// foo=bar\n```\n\n## command line\n\n### logfmt\n\naccepts lines on STDIN and converts them to json\n\n\n    > echo \"foo=bar a=14 baz=\\\"hello kitty\\\" cool%story=bro f %^asdf\" | logfmt\n    { \"foo\": \"bar\", \"a\": 14, \"baz\": \"hello kitty\", \"cool%story\": \"bro\", \"f\": true, \"%^asdf\": true }\n\n### logfmt -r (reverse)\n\naccepts JSON on STDIN and converts them to logfmt\n\n    > echo '{ \"foo\": \"bar\", \"a\": 14, \"baz\": \"hello kitty\", \\\n    \"cool%story\": \"bro\", \"f\": true, \"%^asdf\": true }' | logfmt -r\n    foo=bar a=14 baz=\"hello kitty\" cool%story=bro f=true %^asdf=true\n\nround trips for free!\n\n    > echo \"foo=bar a=14 baz=\\\"hello kitty\\\" cool%story=bro f %^asdf\" | logfmt | logfmt -r | logfmt\n    { \"foo\": \"bar\", \"a\": 14, \"baz\": \"hello kitty\", \"cool%story\": \"bro\", \"f\": true, \"%^asdf\": true }\n\n\n# API\n\n## stringifying\n\nSerialize an object to logfmt format\n\n### `logfmt.stringify(object)`\n\nSerializes a single object.\n\n```javascript\nlogfmt.stringify({foo: \"bar\", a: 14, baz: 'hello kitty'})\n//> 'foo=bar a=14 baz=\"hello kitty\"'\n```\n\n## parsing\n\nParse a line in logfmt format\n\n### `logfmt.parse(string)`\n\n```javascript\nlogfmt.parse(\"foo=bar a=14 baz=\\\"hello kitty\\\" cool%story=bro f %^asdf code=H12\")\n//> { \"foo\": \"bar\", \"a\": '14', \"baz\": \"hello kitty\", \"cool%story\": \"bro\", \"f\": true, \"%^asdf\": true, \"code\" : \"H12\" }\n```\n\nThe only conversions are from the strings `true` and `false` to their proper boolean counterparts.\n\nWe cannot arbitrarily convert numbers because that will drop precision for numbers that require more than 32 bits to represent them.\n\n\n## Streaming\n\nPut this in your pipe and smoke it.\n\n### `logfmt.streamParser()`\n\nCreates a streaming parser that will automatically split and parse incoming lines and\nemit javascript objects.\n\nStream in from STDIN\n\n```javascript\nprocess.stdin.pipe(logfmt.streamParser())\n```\n\nOr pipe from an HTTP request\n\n```javascript\nreq.pipe(logfmt.streamParser())\n```\n\n### `logfmt.streamStringify([options])`\n\nPipe objects into the stream and it will write logfmt.\nYou can customize the delimiter via the `options` object, which\ndefaults to `\\n` (newlines).\n\n```javascript\n  var parseJSON = function(line) {\n    if(!line) return;\n    this.queue(JSON.parse(line.trim()))\n  }\n\n  process.stdin\n    .pipe(split())\n    .pipe(through(parseJSON))\n    .pipe(logfmt.streamStringify())\n    .pipe(process.stdout)\n```\n\n#### Example\n\n\nExample command line of parsing logfmt and echoing objects to STDOUT:\n\n```javascript\nvar logfmt  = require('logfmt');\nvar through = require('through');\n\nprocess.stdin\n  .pipe(logfmt.streamParser())\n  .pipe(through(function(object){\n    console.log(object);\n  }))\n```\n\nExample HTTP request parsing logfmt and echoing objects to STDOUT:\n\n```javascript\nvar http    = require('http');\nvar logfmt  = require('logfmt');\nvar through = require('through');\n\nhttp.createServer(function (req, res) {\n  req.pipe(logfmt.streamParser())\n     .pipe(through(function(object){\n       console.log(object);\n     }))\n\n  res.writeHead(200, {'Content-Type': 'text/plain'});\n  res.end('OK');\n}).listen(3000);\n```\n\n## express/restify parsing middleware\n\n```javascript\n  // streaming\n  app.use(logfmt.bodyParserStream());\n  // buffering\n  app.use(logfmt.bodyParser());\n```\n\n#### `logfmt.bodyParserStream([opts])`\n\nValid Options:\n\n- `contentType`: defaults to `application/logplex-1`\n\nIf you use the `logfmt.bodyParserStream()` for a body parser,\nyou will have a `req.body` that is a readable stream.\n\nPipes FTW:\n\n```javascript\nvar app    = require('express')();\nvar http   = require('http');\nvar through = require('through');\nvar logfmt  = require('logfmt');\n\napp.use(logfmt.bodyParserStream());\n\napp.post('/logs', function(req, res){\n  if(!req.body) return res.send('OK');\n\n  req.body.pipe(through(function(line){\n    console.dir(line);\n  }))\n\n  res.send('OK');\n})\n\nhttp.createServer(app).listen(3000);\n```\n\nOr you can just use the `readable` event:\n\n```javascript\nvar app    = require('express')();\nvar http   = require('http');\nvar logfmt  = require('logfmt');\n\napp.use(logfmt.bodyParserStream());\n\n// req.body is now a Readable Stream\napp.post('/logs', function(req, res){\n  req.body.on('readable', function(){\n    var parsedLine = req.body.read();\n    if(parsedLine) console.log(parsedLine);\n    else res.send('OK');\n  })\n})\n\nhttp.createServer(app).listen(3000);\n```\n\n### Non-Streaming\n\n#### `logfmt.bodyParser([opts])`\n\nValid Options:\n\n- `contentType`: defaults to `application/logplex-1`\n\nIf you use the `logfmt.bodyParser()` for a body parser,\nyou will have a `req.body` that is an array of objects.\n\n```javascript\nvar logfmt   = require('logfmt');\n\napp.use(logfmt.bodyParser());\n\n// req.body is now an array of objects\napp.post('/logs', function(req, res){\n  console.log('BODY: ' + JSON.stringify(req.body));\n  req.body.forEach(function(data){\n    console.log(data);\n  });\n  res.send('OK');\n})\n\nhttp.createServer(app).listen(3000);\n```\n\ntest it:\n\n```bash\ncurl -X POST --header 'Content-Type: application/logplex-1' -d \"foo=bar a=14 baz=\\\"hello kitty\\\" cool%story=bro f %^asdf\" http://localhost:3000/logs\n```\n\n## logging\n\nLog an object to `logfmt.stream` (defaults to STDOUT)\n\nUses the `logfmt.stringify` function to write the result to `logfmt.stream`\n\n```javascript\nlogfmt.log({foo: \"bar\", a: 14, baz: 'hello kitty'})\n//=> foo=bar a=14 baz=\"hello kitty\"\n//> undefined\n```\n\n### `logfmt.log(object, [stream])`\n\nDefaults to logging to `process.stdout`\n\n```javascript\nlogfmt.log({ \"foo\": \"bar\", \"a\": 14, baz: 'hello kitty'})\n//=> foo=bar a=14 baz=\"hello kitty\"\n```\n\n#### customizing logging location\n\n`logfmt.log()` Accepts as 2nd argument anything that responds to `write(string)`\n```javascript\nvar logfmt = require('logfmt');\nlogfmt.log({ \"foo\": \"bar\", \"a\": 14, baz: 'hello kitty'}, process.stderr)\n//=> foo=bar a=14 baz=\"hello kitty\"\n```\n\nOverwrite the default global location by setting `logfmt.stream`\n```javascript\nvar logfmt = require('logfmt');\nlogfmt.stream = process.stderr\n\nlogfmt.log({ \"foo\": \"bar\", \"a\": 14, baz: 'hello kitty'})\n//=> foo=bar a=14 baz=\"hello kitty\"\n```\n\nYou can have multiple, isolated logfmts by using `new`.\n\n```javascript\nvar logfmt = require('logfmt');\nvar errorLogger = new logfmt;\nerrorLogger.stream = process.stderr\n\nlogfmt.log({hello: 'stdout'});\n//=> hello=stdout\n\nerrorLogger.log({hello: 'stderr'});\n//=> hello=stderr\n```\n\n### `logfmt.namespace(object)`\n\nReturns a new `logfmt` with object's data included in every `log` call.\n\n```javascript\nvar logfmt = require('logfmt').namespace({app: 'logfmt'});\n\nlogfmt.log({ \"foo\": \"bar\", \"a\": 14, baz: 'hello kitty'})\n//=> app=logfmt foo=bar a=14 baz=\"hello kitty\"\n\nlogfmt.log({})\n//=> app=logfmt\n\nlogfmt.log({hello: 'world'})\n//=> app=logfmt hello=world\n```\n\n### `logfmt.time([label])`\n\nLog how long something takes.\nReturns a new `logfmt` with elapsed milliseconds included in every `log` call.\n\n- `label`: optional name for the milliseconds key. defaults to: `elapsed=<milliseconds>ms`\n\n```javascript\nvar timer = logfmt.time();\ntimer.log();\n//=> elapsed=1ms\n```\n\nString `label` changes the key to `<string>=<milliseconds>ms`\n\n```javascript\nvar timer = logfmt.time('time');\ntimer.log();\n//=> time=1ms\ntimer.log();\n//=> time=2ms\n```\n\nIf you'd like to include data, just chain a call to namespace.\n\n```javascript\nvar timer = logfmt.time('time').namespace({foo: 'bar'});\ntimer.log();\n//=> time=1ms foo=bar\ntimer.log();\n//=> time=2ms foo=bar\n```\n\n### `logfmt.error(error)`\n\nAccepts a Javascript `Error` object and converts it to logfmt format.\n\nIt will print up to `logfmt.maxErrorLines` lines.\n\n```javascript\nvar logfmt = require('logfmt');\nlogfmt.error(new Error('test error'));\n//=> at=error id=12345 message=\"test error\"\n//=> at=error id=12345 line=0 trace=\"Error: test error\"\n//=> ...\n```\n\n## express/restify logging middleware\n\n```javascript\napp.use(logfmt.requestLogger());\n//=> ip=127.0.0.1 time=2013-08-05T20:50:19.216Z method=POST path=/logs status=200 content_length=337 content_type=application/logplex-1 elapsed=4ms\n```\n\n#### `logfmt.requestLogger([options], [formatter(req, res)])`\n\nIf no formatter is supplied it will default to `logfmt.requestLogger.commonFormatter` which is based\non having similar fields to the Apache Common Log format.\n\nValid Options:\n\n- `immediate`: log before call to `next()` (ie: before the request finishes)\n- `elapsed`: renames the `elapsed` key to a key of your choice when in\n             non-immediate mode\n\nDefaults to `immediate: true` and `elapsed: 'elapsed'`\n\n```javascript\napp.use(logfmt.requestLogger({immediate: true}, function(req, res){\n  return {\n    method: req.method\n  }\n}));\n//=> method=POST\n```\n\n```javascript\napp.use(logfmt.requestLogger({elapsed: 'request.time'}, function(req, res){\n  return {\n    \"request.method\": req.method\n  }\n}));\n//=> request.method=POST request.time=12ms\n```\n\n##### `formatter(req, res)`\n\nA formatter takes the request and response and returns a JSON object for `logfmt.log`\n\n```javascript\napp.use(logfmt.requestLogger(function(req, res){\n  return {\n    method: req.method\n  }\n}));\n//=> method=POST elapsed=4ms\n```\n\nIt's always possible to piggyback on top of the `commonFormatter`\n\n```javascript\napp.use(logfmt.requestLogger(function(req, res){\n  var data = logfmt.requestLogger.commonFormatter(req, res)\n  return {\n    ip: data.ip,\n    time: data.time,\n    foo: 'bar'\n  };\n}));\n//=> ip=127.0.0.1 time=2013-08-05T20:50:19.216Z foo=bar elapsed=4ms\n```\n\n# Development\n\nPull Requests welcome.\n\n## Tests\n\n    > npm test\n\n# License\n\nMIT\n","_attachments":{},"homepage":"https://github.com/csquared/node-logfmt#readme","bugs":{"url":"https://github.com/csquared/node-logfmt/issues"},"license":"MIT"}