Name: js-handler/node_modules/restify/node_modules/bunyan/TODO.md 
1:
- need .npmignore? tools dir, etc.
2:
- man page for the bunyan CLI (refer to it in the readme)
3:
- `tail -f`-like support
4:
- 1.0 with `v: 1` in log records. Fwd/bwd compat in `bunyan` CLI
5:
 
6:
 
7:
# someday/maybe
8:
 
9:
- full-on docs
10:
- better examples/
11:
- better coloring
12:
- "template" support for 'rotating-file' stream to get dated rolled files
13:
- "all" or "off" levels? log4j? logging.py?
14:
  logging.py has NOTSET === 0. I think that is only needed/used for
15:
  multi-level hierarchical effective level.
16:
- buffered writes to increase speed:
17:
    - I'd start with a tools/timeoutput.js for some numbers to compare
18:
      before/after. Sustained high output to a file.
19:
    - perhaps this would be a "buffered: true" option on the stream object
20:
    - then wrap the "stream" with a local class that handles the buffering
21:
    - to finish this, need the 'log.close' and `process.on('exit', ...)`
22:
      work that Trent has started.
23:
- "canWrite" handling for full streams. Need to buffer a la log4js
24:
- test file log with logadm rotation: does it handle that?
25:
- test suite:
26:
    - test for a cloned logger double-`stream.end()` causing problems.
27:
      Perhaps the "closeOnExit" for existing streams should be false for
28:
      clones.
29:
    - test that a `log.clone(...)` adding a new field matching a serializer
30:
      works *and* that an existing field in the parent is not *re-serialized*.
31:
- split out `bunyan` cli to a "bunyan" or "bunyan-reader" or "node-bunyan-reader"
32:
  as the basis for tools to consume bunyan logs. It can grow indep of node-bunyan
33:
  for generating the logs.
34:
  It would take a Bunyan log record object and be expected to emit it.
35:
 
36:
        node-bunyan-reader
37:
            .createReadStream(path, [options]) ?
38:
 
39:
- coloring bug: in less the indented extra info lines only have the first
40:
  line colored. Do we need the ANSI char on *each* line? That'll be
41:
  slower.
42:
- document "well-known" keys from bunyan CLI p.o.v.. Add "client_req".
43:
- More `bunyan` output formats and filtering features.
44:
- Think about a bunyan dashboard that supports organizing and viewing logs
45:
  from multiple hosts and services.
46:
- doc the restify RequestCaptureStream usage of RingBuffer. Great example.
47:
- A vim plugin (a la http://vim.cybermirror.org/runtime/autoload/zip.vim ?) to
48:
  allow browsing (read-only) a bunyan log in rendered form.
49:
- Some speed comparisons with others to get a feel for Bunyan's speed.
50:
- what about promoting 'latency' field and making that easier?
51:
- `log.close` to close streams and shutdown and `this.closed`
52:
  process.on('exit', log.close)
53:
  -> 'end' for the name
54:
- bunyan cli: more layouts (http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/EnhancedPatternLayout.html)
55:
  Custom log formats (in config file? in '-f' arg) using printf or hogan.js
56:
  or whatever. Dap wants field width control for lining up. Hogan.js is
57:
  probably overkill for this.
58:
- loggly example using raw streams, hook.io?, whatever.
59:
- serializer support:
60:
    - restify-server.js example -> restifyReq ? or have `req` detect that.
61:
      That is nicer for the "use all standard ones". *Does* restify req
62:
      have anything special?
63:
    - differential HTTP *client* req/res with *server* req/res.
64:
- statsd stream? http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/
65:
  Think about it.