flatiron/winston — pull request #130 by chjj (2012-05-04 06:23:17+00:00)
Title: Query and streaming support 

This will add `.stream` and `.query` support to winston.

One problem with the additions to the transports in general was the inconsistencies between them. Some transports had json enabled by default, some did not. Some had timestamps enabled by default, others did not. Both of these features are pretty essential if the user ever wants to query logs. There was also some dissonance between property names, e.g. `message` vs. `msg`. In some cases, the log object was being mixed-in with the `meta` object before logging, in other cases it wasn't.

There's also the question of the core transports. [winston-nssocket][1] and [winston-redis][2] were moved here to ease development, but they feel kind of natural as core transports. winston-redis needed some work in areas, and it depended on a much older version of winston. "winston-http" was also added. Nothing like it existed prior. Both winston-nssocket and winston-http will be useful for communication with winstond.

The main thing lacking right now is the loggly transport. Loggly has been given stream/query support, but it is not as well tested as the other transports.

These changes should be compatible with existing winston transports. The `logger.stream` and `logger.query` methods only consider using a transport if it has these methods to begin with.

[1]: https://github.com/mmalecki/winston-nssocket
[2]: https://github.com/indexzero/winston-redis