node_modules updated, buefy add to lib folder
This commit is contained in:
+7
@@ -0,0 +1,7 @@
|
||||
/tmp
|
||||
/node_modules
|
||||
*.log
|
||||
/examples
|
||||
/test
|
||||
/*.tgz
|
||||
/tools
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
language: node_js
|
||||
|
||||
os:
|
||||
- linux
|
||||
- osx
|
||||
|
||||
env:
|
||||
- SKIP_DTRACE=1
|
||||
|
||||
node_js:
|
||||
- '0.10'
|
||||
- '0.12'
|
||||
- '4'
|
||||
- '5'
|
||||
- '6'
|
||||
- 'node'
|
||||
|
||||
|
||||
# Gives us faster boot time, see https://docs.travis-ci.com/user/ci-environment/
|
||||
sudo: false
|
||||
|
||||
script:
|
||||
- npm test
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
Trent Mick (http://trentm.com)
|
||||
Mark Cavage (https://github.com/mcavage)
|
||||
Dave Pacheco (https://github.com/davepacheco)
|
||||
Michael Hart (https://github.com/mhart)
|
||||
Isaac Schlueter (https://github.com/isaacs)
|
||||
Rob Gulewich (https://github.com/rgulewich)
|
||||
Bryan Cantrill (https://github.com/bcantrill)
|
||||
Michael Hart (https://github.com/mhart)
|
||||
Simon Wade (https://github.com/aexmachina)
|
||||
https://github.com/glenn-murray-bse
|
||||
Chakrit Wichian (https://github.com/chakrit)
|
||||
Patrick Mooney (https://github.com/pfmooney)
|
||||
Johan Nordberg (https://github.com/jnordberg)
|
||||
https://github.com/timborodin
|
||||
Ryan Graham (https://github.com/rmg)
|
||||
Alex Kocharin (https://github.com/rlidwka)
|
||||
Andrei Neculau (https://github.com/andreineculau)
|
||||
Mihai Tomescu (https://github.com/matomesc)
|
||||
Daniel Juhl (https://github.com/danieljuhl)
|
||||
Chris Barber (https://github.com/cb1kenobi)
|
||||
Manuel Schneider (https://github.com/manuelschneider)
|
||||
Martin Gausby (https://github.com/gausby)
|
||||
Stéphan Kochen (https://github.com/stephank)
|
||||
Shakeel Mohamed (https://github.com/shakeelmohamed)
|
||||
Denis Izmaylov (https://github.com/DenisIzmaylov)
|
||||
Guillermo Grau Panea (https://github.com/guigrpa)
|
||||
Mark LeMerise (https://github.com/MarkLeMerise)
|
||||
https://github.com/sometimesalready
|
||||
Charly Koza (https://github.com/Cactusbone)
|
||||
Thomas Heymann (https://github.com/cyberthom)
|
||||
David M. Lee (https://github.com/leedm777)
|
||||
Marc Udoff (https://github.com/mlucool)
|
||||
Mark Stosberg (https://github.com/markstos)
|
||||
Alexander Ray (https://github.com/aray12)
|
||||
Adam Lynch (https://github.com/adam-lynch)
|
||||
Michael Nisi (https://github.com/michaelnisi)
|
||||
Martijn Schrage (https://github.com/Oblosys)
|
||||
Paul Milham (https://github.com/domrein)
|
||||
Frankie O'Rourke (https://github.com/psfrankie)
|
||||
Cody Mello (https://github.com/melloc)
|
||||
Todd Whiteman (https://github.com/twhiteman)
|
||||
Zach Bjornson (https://github.com/zbjornson)
|
||||
+1346
File diff suppressed because it is too large
Load Diff
+205
@@ -0,0 +1,205 @@
|
||||
# Contributing to node-bunyan
|
||||
|
||||
Thanks for using node-bunyan and for considering contributing to it! Or perhaps
|
||||
you are just here to get a sniff for what is going on with node-bunyan
|
||||
development.
|
||||
|
||||
|
||||
## How you can help
|
||||
|
||||
If you want to help me here, great! Thank you! Some ideas:
|
||||
|
||||
- Do you have experience with and/or recommendations for a good automated
|
||||
testing service? Ideally I'd like support for Mac, Linux, SmartOS, and maybe
|
||||
Windows. Also, support for node.js versions 0.10 up to whatever the current
|
||||
latest is. Are those too tall an order? What's more, Bunyan is meant to work
|
||||
(at least partially) in the browser. Is there a good service for that?
|
||||
Please discuss on [issue #342](https://github.com/trentm/node-bunyan/issues/342).
|
||||
|
||||
- Fielding issues labelled with "[Type-Question][Type-Question]", if you are familiar
|
||||
with Bunyan and know how to answer them, would be great.
|
||||
|
||||
- If you want to dive into code, but aren't *that* familiar with node-bunyan,
|
||||
then [issues labelled with Experience-Easy][Experience-Easy] are a good
|
||||
place to start.
|
||||
|
||||
- [Once I've made a once over
|
||||
triaging](https://github.com/trentm/node-bunyan/issues/335) and consolodating
|
||||
issues and PRs, volunteering for issues in a particular
|
||||
[component](#component) with which you have familiarity would be great.
|
||||
|
||||
[Type-Question]: https://github.com/trentm/node-bunyan/issues?q=is%3Aopen+is%3Aissue+label%3AType-Question
|
||||
|
||||
|
||||
## Trent's Biased Rules for Code
|
||||
|
||||
In the hope that it makes it easier to get PRs into Bunyan, here is my biased
|
||||
list of what I typically want. Submitting a PR without all of these is
|
||||
*totally fine*! The only side-effect is that it may take longer for me to
|
||||
provide feedback on it and merge it. I'll politely request missing pieces.
|
||||
|
||||
|
||||
- Please follow existing code style. Contributed code must pass `make check`.
|
||||
(Note: I intended to [change to eslint
|
||||
soon](https://github.com/trentm/node-bunyan/issues/341), so currently `make
|
||||
check` might be a moving target.)
|
||||
|
||||
- Any user visible change in behaviour should almost certainly include an
|
||||
update to the docs. Currently the "docs" is the README.md.
|
||||
|
||||
- Adding a test case for code changes is **stronly recommended**, else I
|
||||
can't easily promise to not break your fix/feature later. If you don't
|
||||
grok the test suite, please ask. We can use it to form the basis for a
|
||||
"test/README.md".
|
||||
|
||||
- Typically a code change should have an associated issue or PR. This allows
|
||||
addition of follow-up issues, discussion, test data, etc. to be associated
|
||||
with the commit. Just using GitHub pull requests makes this easy.
|
||||
|
||||
- All but the most trivial code changes should have an addition to the
|
||||
[changelog](./CHANGES.md). The audience for the changelog is *Bunyan users*.
|
||||
However, because rebasing longer-lived PRs against master is a pain
|
||||
with a change to CHANGES.md, please **do not include a CHANGES.md change
|
||||
in your PR. Instead suggest a CHANGES.md addition in a comment on the
|
||||
PR.**
|
||||
|
||||
- Good commit messages, please:
|
||||
- The first line should be a succinct summary of the issue or fix. A
|
||||
good candidate is to just cut 'n paste the issue title, if there is one.
|
||||
- If the commit is for a particular issue/PR (see previous rule), please
|
||||
list the issue number in the commit message. E.g. "Fixes #123" or "Related
|
||||
to #234".
|
||||
- The audience for commit messages is *Bunyan developers*.
|
||||
|
||||
|
||||
## Pull Request Lifecycle
|
||||
|
||||
(Language adapted from
|
||||
[terraform](https://github.com/hashicorp/terraform/blob/master/CONTRIBUTING.md).)
|
||||
|
||||
- You are welcome to submit your pull request for commentary or review before it
|
||||
is fully completed. Please prefix the title of your pull request with "[WIP]"
|
||||
to indicate this. It's also a good idea to include specific questions or items
|
||||
you'd like feedback on.
|
||||
|
||||
- Once you believe your pull request is ready to be merged, you can remove any
|
||||
"[WIP]" prefix from the title and a core team member will review. See
|
||||
Trent's Biased Rules above to help ensure that your contribution will be
|
||||
merged quickly.
|
||||
|
||||
- Trent or, if things go well, a node-bunyan maintainer will look over your
|
||||
contribution and either provide comments letting you know if there is anything
|
||||
left to do. Please be patient. Unfortunately, I'm not able to carve out
|
||||
a *lot* of time for Bunyan development and maintenance.
|
||||
|
||||
- Once all outstanding comments and checklist items have been addressed, your
|
||||
contribution will be merged. Merged PRs will be included in the next
|
||||
node-bunyan release.
|
||||
|
||||
- In some cases, we might decide that a PR should be closed. We'll make sure to
|
||||
provide clear reasoning when this happens.
|
||||
|
||||
|
||||
## Issue labels
|
||||
|
||||
The point of issue labeling for node-bunyan is to help answer "what should be
|
||||
worked on now? what can be left for later?" I don't want issue labelling to
|
||||
become a burden for anyone, so (a) don't feel obliged to add them yourself and
|
||||
(b) I'm happy to reevaluate their usage.
|
||||
|
||||
Bunyan shall have categories of [issue
|
||||
labels](https://github.com/trentm/node-bunyan/labels) named "$category-$value".
|
||||
An issue should have max *one* label from each set. Users of Google Code's
|
||||
dearly departed issue tracker may remember this kind of thing. This is a
|
||||
poorman's version of structured issue tracker metadata.
|
||||
|
||||
I'm inclined to *not* do priorities right now. *Possibly* we'll use GitHub
|
||||
milestones to basically set targets for upcoming releases. But otherwise my
|
||||
sense is that for smaller OSS projects, assigning prios will get in the way.
|
||||
If people would think it helpful, I'd consider "Difficulty-" or "Experience-"
|
||||
categories (a la Rust's "E-" labels) to mark easier and intermediate tasks
|
||||
that someone interested but maybe not very familiar with Bunyan might want
|
||||
to tackle.
|
||||
|
||||
For now, here are the various labels and their purpose:
|
||||
|
||||
### Meta
|
||||
|
||||
- needstriage: Temporary label to help me do a single triage pass through all
|
||||
current open issues and PRs.
|
||||
See [#335](https://github.com/trentm/node-bunyan/issues/335)
|
||||
where I'm working through this.
|
||||
|
||||
### Type
|
||||
|
||||
Color: green
|
||||
|
||||
- Type-Unknown: If it is still unclear or undecided if an issue is an intended
|
||||
feature (perhaps arguing for better docs or examples to avoid confusion) or a
|
||||
bug, I will use this category.
|
||||
- Type-Question: Asking a question on Bunyan usage, about the project, etc.
|
||||
- Type-Bug: A bug in Bunyan's behaviour.
|
||||
- Type-Improvement: A new feature or other improvement.
|
||||
- Type-Doc: Issues with Bunyan's documentation.
|
||||
- Type-Task: A project task to be done.
|
||||
|
||||
TODO: consider Type-Unknown for the "unclear if bug or feature" tickets.
|
||||
|
||||
### Component
|
||||
|
||||
Color: blue
|
||||
|
||||
- Component-Project: Project meta stuff like testing, linting, build, install,
|
||||
etc.
|
||||
- Component-CLI: The `bunyan` command-line tool.
|
||||
- Component-Lib: catch-all for other library stuff
|
||||
- Component-LibRotation: The bunyan library's log rotation support.
|
||||
- Component-LibBrowser: Bunyan's handling/support for running in the browser.
|
||||
- Component-LibFlush: A separate component for collecting the tickets related
|
||||
to closing/flushing bunyan streams on process shutdown.
|
||||
|
||||
The point of components is to find like issues to help with reference, search
|
||||
and resolving them. If no component fits an issue/PR, then don't add a label.
|
||||
|
||||
### Resolution
|
||||
|
||||
Color: red
|
||||
|
||||
- Resolution-WontFix
|
||||
- Resolution-Duplicate
|
||||
- Resolution-Fixed: Also used to indicate "doc written", "question answered",
|
||||
"feature implemented".
|
||||
- Resolution-CannotRepro: After some reasonable attempt by maintainers to
|
||||
reproduce a bug report, I want it to be non-controversial to close it
|
||||
and mark it with this. If given more info by someone able to repro, we
|
||||
can happy re-open issues.
|
||||
|
||||
### Experience
|
||||
|
||||
Color: yellow
|
||||
|
||||
- Experience-Easy: Relatively little experience with node-bunyan should be
|
||||
required to complete this issue.
|
||||
- Experience-NeedsTest: Typically added to an issue or PR that needs a test
|
||||
case. Someone familiar enough with node-bunyan's test suite could tackle this.
|
||||
- Experience-Hard: At a guess, this is a thorny issue that requires known
|
||||
node-bunyan well, knowing node.js well, requires design review or all of
|
||||
these.
|
||||
|
||||
One of the "Experience-\*" labels can optionally be put on an issue or PR to
|
||||
indicate what kind of experience a contributor would need with node-bunyan
|
||||
(and/or node.js) to complete it. For example, if you're looking for somewhere to
|
||||
start, check out the [Experience-Easy][Experience-Easy] tag. This category idea
|
||||
is borrowed from [rust's E-\* labels][rust-issue-triage].
|
||||
|
||||
[Experience-Easy]: https://github.com/trentm/node-bunyan/issues?q=is%3Aopen+is%3Aissue+label%3AExperience-Easy
|
||||
[rust-issue-triage]: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#issue-triage
|
||||
|
||||
|
||||
## Acknowledgements
|
||||
|
||||
Anything good about this document is thanks to inspiration from
|
||||
[rust](https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md) and, more
|
||||
recently
|
||||
[terraform](https://github.com/hashicorp/terraform/blob/master/CONTRIBUTING.md).
|
||||
Anything bad about it, is my fault.
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
# This is the MIT license
|
||||
|
||||
Copyright 2016 Trent Mick
|
||||
Copyright 2016 Joyent Inc.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
+149
@@ -0,0 +1,149 @@
|
||||
|
||||
#---- Tools
|
||||
|
||||
NODEUNIT := ./node_modules/.bin/nodeunit
|
||||
SUDO := sudo
|
||||
ifeq ($(shell uname -s),SunOS)
|
||||
# On SunOS (e.g. SmartOS) we expect to run the test suite as the
|
||||
# root user -- necessary to run dtrace. Therefore `pfexec` isn't
|
||||
# necessary.
|
||||
SUDO :=
|
||||
endif
|
||||
DTRACE_UP_IN_HERE=
|
||||
ifeq ($(shell uname -s),SunOS)
|
||||
DTRACE_UP_IN_HERE=1
|
||||
endif
|
||||
ifeq ($(shell uname -s),Darwin)
|
||||
DTRACE_UP_IN_HERE=1
|
||||
endif
|
||||
NODEOPT ?= $(HOME)/opt
|
||||
|
||||
|
||||
#---- Files
|
||||
|
||||
JSSTYLE_FILES := $(shell find lib test tools examples -name "*.js") bin/bunyan
|
||||
# All test files *except* dtrace.test.js.
|
||||
NON_DTRACE_TEST_FILES := $(shell ls -1 test/*.test.js | grep -v dtrace | xargs)
|
||||
|
||||
|
||||
#---- Targets
|
||||
|
||||
all $(NODEUNIT):
|
||||
npm install $(NPM_INSTALL_FLAGS)
|
||||
|
||||
# Ensure all version-carrying files have the same version.
|
||||
.PHONY: versioncheck
|
||||
versioncheck:
|
||||
@echo version is: $(shell cat package.json | json version)
|
||||
[[ `cat package.json | json version` == `grep '^## ' CHANGES.md | head -2 | tail -1 | awk '{print $$2}'` ]]
|
||||
[[ `cat package.json | json version` == `grep '^var VERSION' bin/bunyan | awk -F"'" '{print $$2}'` ]]
|
||||
[[ `cat package.json | json version` == `grep '^var VERSION' lib/bunyan.js | awk -F"'" '{print $$2}'` ]]
|
||||
@echo Version check ok.
|
||||
|
||||
.PHONY: cutarelease
|
||||
cutarelease: check
|
||||
[[ -z `git status --short` ]] # If this fails, the working dir is dirty.
|
||||
@which json 2>/dev/null 1>/dev/null && \
|
||||
ver=$(shell json -f package.json version) && \
|
||||
name=$(shell json -f package.json name) && \
|
||||
publishedVer=$(shell npm view -j $(shell json -f package.json name)@$(shell json -f package.json version) version 2>/dev/null) && \
|
||||
if [[ -n "$$publishedVer" ]]; then \
|
||||
echo "error: $$name@$$ver is already published to npm"; \
|
||||
exit 1; \
|
||||
fi && \
|
||||
echo "** Are you sure you want to tag and publish $$name@$$ver to npm?" && \
|
||||
echo "** Enter to continue, Ctrl+C to abort." && \
|
||||
read
|
||||
ver=$(shell cat package.json | json version) && \
|
||||
date=$(shell date -u "+%Y-%m-%d") && \
|
||||
git tag -a "$$ver" -m "version $$ver ($$date)" && \
|
||||
git push --tags origin && \
|
||||
npm publish
|
||||
|
||||
.PHONY: docs
|
||||
docs: toc
|
||||
@[[ `which ronn` ]] || (echo "No 'ronn' on your PATH. Install with 'gem install ronn'" && exit 2)
|
||||
mkdir -p man/man1
|
||||
ronn --style=toc --manual="bunyan manual" --date=$(shell git log -1 --pretty=format:%cd --date=short) --roff --html docs/bunyan.1.ronn
|
||||
python -c 'import sys; h = open("docs/bunyan.1.html").read(); h = h.replace(".mp dt.flush {float:left;width:8ex}", ""); open("docs/bunyan.1.html", "w").write(h)'
|
||||
python -c 'import sys; h = open("docs/bunyan.1.html").read(); h = h.replace("</body>", """<a href="https://github.com/trentm/node-bunyan"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub"></a></body>"""); open("docs/bunyan.1.html", "w").write(h)'
|
||||
@echo "# test with 'man ./docs/bunyan.1' and 'open ./docs/bunyan.1.html'"
|
||||
|
||||
# Re-generate the README.md table of contents.
|
||||
toc:
|
||||
./node_modules/.bin/markdown-toc -i README.md
|
||||
|
||||
|
||||
.PHONY: publish
|
||||
publish:
|
||||
mkdir -p tmp
|
||||
[[ -d tmp/bunyan-gh-pages ]] || git clone git@github.com:trentm/node-bunyan.git tmp/bunyan-gh-pages
|
||||
cd tmp/bunyan-gh-pages && git checkout gh-pages && git pull --rebase origin gh-pages
|
||||
cp docs/index.html tmp/bunyan-gh-pages/index.html
|
||||
cp docs/bunyan.1.html tmp/bunyan-gh-pages/bunyan.1.html
|
||||
(cd tmp/bunyan-gh-pages \
|
||||
&& git commit -a -m "publish latest docs" \
|
||||
&& git push origin gh-pages || true)
|
||||
|
||||
.PHONY: distclean
|
||||
distclean:
|
||||
rm -rf node_modules
|
||||
|
||||
|
||||
#---- test
|
||||
|
||||
.PHONY: test
|
||||
test: $(NODEUNIT)
|
||||
test -z "$(DTRACE_UP_IN_HERE)" || test -n "$(SKIP_DTRACE)" || \
|
||||
(node -e 'require("dtrace-provider").createDTraceProvider("isthisthingon")' && \
|
||||
echo "\nNote: Use 'SKIP_DTRACE=1 make test' to skip parts of the test suite that require root." && \
|
||||
$(SUDO) $(NODEUNIT) test/dtrace.test.js)
|
||||
$(NODEUNIT) $(NON_DTRACE_TEST_FILES)
|
||||
|
||||
# Test will all node supported versions (presumes install locations I use on
|
||||
# my machine -- "~/opt/node-VER"):
|
||||
# Note: 'test4' is last so (if all is well) I end up with a binary
|
||||
# dtrace-provider build for my current default node version.
|
||||
.PHONY: testall
|
||||
testall: test7 test6 test012 test010 test4
|
||||
|
||||
.PHONY: test7
|
||||
test7:
|
||||
@echo "# Test node 7.x (with node `$(NODEOPT)/node-7/bin/node --version`)"
|
||||
@$(NODEOPT)/node-7/bin/node --version | grep '^v7\.'
|
||||
PATH="$(NODEOPT)/node-7/bin:$(PATH)" make distclean all test
|
||||
.PHONY: test6
|
||||
test6:
|
||||
@echo "# Test node 6.x (with node `$(NODEOPT)/node-6/bin/node --version`)"
|
||||
@$(NODEOPT)/node-6/bin/node --version | grep '^v6\.'
|
||||
PATH="$(NODEOPT)/node-6/bin:$(PATH)" make distclean all test
|
||||
.PHONY: test4
|
||||
test4:
|
||||
@echo "# Test node 4.x (with node `$(NODEOPT)/node-4/bin/node --version`)"
|
||||
@$(NODEOPT)/node-4/bin/node --version | grep '^v4\.'
|
||||
PATH="$(NODEOPT)/node-4/bin:$(PATH)" make distclean all test
|
||||
.PHONY: test012
|
||||
test012:
|
||||
@echo "# Test node 0.12.x (with node `$(NODEOPT)/node-0.12/bin/node --version`)"
|
||||
@$(NODEOPT)/node-0.12/bin/node --version | grep '^v0\.12\.'
|
||||
PATH="$(NODEOPT)/node-0.12/bin:$(PATH)" make distclean all test
|
||||
.PHONY: test010
|
||||
test010:
|
||||
@echo "# Test node 0.10.x (with node `$(NODEOPT)/node-0.10/bin/node --version`)"
|
||||
@$(NODEOPT)/node-0.10/bin/node --version | grep '^v0\.10\.'
|
||||
PATH="$(NODEOPT)/node-0.10/bin:$(PATH)" make distclean all test
|
||||
|
||||
|
||||
#---- check
|
||||
|
||||
.PHONY: check-jsstyle
|
||||
check-jsstyle: $(JSSTYLE_FILES)
|
||||
./tools/jsstyle -o indent=4,doxygen,unparenthesized-return=0,blank-after-start-comment=0,leading-right-paren-ok=1 $(JSSTYLE_FILES)
|
||||
|
||||
.PHONY: check
|
||||
check: check-jsstyle versioncheck
|
||||
@echo "Check ok."
|
||||
|
||||
.PHONY: prepush
|
||||
prepush: check testall
|
||||
@echo "Okay to push."
|
||||
+1383
File diff suppressed because it is too large
Load Diff
+137
@@ -0,0 +1,137 @@
|
||||
# higher prio
|
||||
|
||||
- `bunyan` (without redir) ^C should stop, doesn't since recent change
|
||||
- man page for the bunyan CLI (refer to it in the readme)
|
||||
- perhaps wait for a bunyan new version with deps, and use dashdash
|
||||
with a (vapour) man page generator
|
||||
|
||||
# v2
|
||||
|
||||
- ^C fix
|
||||
- node-exeunt
|
||||
- `createLogger(<config-and-fields>, <fields>)` changes (#460)
|
||||
- see section below
|
||||
- the dtrace-provider thing (#487)
|
||||
TODO: answer Cody email
|
||||
- use package.json version for VERSION
|
||||
- use deps
|
||||
- dashdash
|
||||
- assert-plus?
|
||||
- verror?
|
||||
- break out to multiple files
|
||||
- want to work through PRs before that, so don't just break them all
|
||||
- TODO: a quick pass through tickets and pulls for other things to include
|
||||
- get ticket refs for the above, if any
|
||||
- formatters: read up again on `glp master..1.x`
|
||||
- support for customer formatters
|
||||
- for the CLI as well? How? ~/.bunyanrc?
|
||||
|
||||
|
||||
# changes to ctor and log.child to separate fields from config
|
||||
|
||||
<https://github.com/trentm/node-bunyan/issues/460>
|
||||
|
||||
Current:
|
||||
|
||||
createLogger(<config-and-fields>)
|
||||
log.child(<config-and-fields>, <just-fields-bool>)
|
||||
|
||||
Could be:
|
||||
|
||||
createLogger(<config-and-fields>, <fields>)
|
||||
log.child(<config-and-fields>, <fields>)
|
||||
# Still support: log.child(<config-and-fields>, <just-fields-bool>)
|
||||
|
||||
Pros: Compat issues are minimal: a change is only required if there is a
|
||||
collision with used field and a new config var name.
|
||||
Cons: A *slight* con is that my guess is the common usage of child is
|
||||
`log.child(<fields>)`, so the more future-proof common usage becomes:
|
||||
|
||||
log.child(null, <fields>)
|
||||
|
||||
That's not too bad. It is clearer at least than:
|
||||
|
||||
log.child(<fields>, true)
|
||||
|
||||
TODO:
|
||||
|
||||
- is there a ticket for this work already?
|
||||
- make the change
|
||||
- do a migration guide? i.e. provide the grep commands to find all
|
||||
possible calls to inspect. E.g. if don't have `rg logUndefined` in your
|
||||
code, then you are fine. And one time future-proofing via changing
|
||||
to fields in the *second* arg.
|
||||
- list of issues/pulls that wanted to add new config fields
|
||||
|
||||
|
||||
|
||||
# docs
|
||||
|
||||
- document log.addStream() and log.addSerializers()
|
||||
|
||||
|
||||
# someday/maybe
|
||||
|
||||
- 2.0 (?) with `v: 1` in log records. Fwd/bwd compat in `bunyan` CLI
|
||||
- `tail -f`-like support
|
||||
- full-on docs
|
||||
- better examples/
|
||||
- better coloring
|
||||
- look at pino (bunyan style, perf benefits)
|
||||
- would be exciting to have bunyan support in http://lnav.org/ if that
|
||||
made sense
|
||||
- "template" support for 'rotating-file' stream to get dated rolled files
|
||||
- "all" or "off" levels? log4j? logging.py?
|
||||
logging.py has NOTSET === 0. I think that is only needed/used for
|
||||
multi-level hierarchical effective level.
|
||||
- buffered writes to increase speed:
|
||||
- I'd start with a tools/timeoutput.js for some numbers to compare
|
||||
before/after. Sustained high output to a file.
|
||||
- perhaps this would be a "buffered: true" option on the stream object
|
||||
- then wrap the "stream" with a local class that handles the buffering
|
||||
- to finish this, need the 'log.close' and `process.on('exit', ...)`
|
||||
work that Trent has started.
|
||||
- "canWrite" handling for full streams. Need to buffer a la log4js
|
||||
- test file log with logadm rotation: does it handle that?
|
||||
- test suite:
|
||||
- test for a cloned logger double-`stream.end()` causing problems.
|
||||
Perhaps the "closeOnExit" for existing streams should be false for
|
||||
clones.
|
||||
- test that a `log.clone(...)` adding a new field matching a serializer
|
||||
works *and* that an existing field in the parent is not *re-serialized*.
|
||||
- split out `bunyan` cli to a "bunyan" or "bunyan-reader" or "node-bunyan-reader"
|
||||
as the basis for tools to consume bunyan logs. It can grow indep of node-bunyan
|
||||
for generating the logs.
|
||||
It would take a Bunyan log record object and be expected to emit it.
|
||||
|
||||
node-bunyan-reader
|
||||
.createReadStream(path, [options]) ?
|
||||
|
||||
- coloring bug: in less the indented extra info lines only have the first
|
||||
line colored. Do we need the ANSI char on *each* line? That'll be
|
||||
slower.
|
||||
- document "well-known" keys from bunyan CLI p.o.v.. Add "client_req".
|
||||
- More `bunyan` output formats and filtering features.
|
||||
- Think about a bunyan dashboard that supports organizing and viewing logs
|
||||
from multiple hosts and services.
|
||||
- doc the restify RequestCaptureStream usage of RingBuffer. Great example.
|
||||
- A vim plugin (a la http://vim.cybermirror.org/runtime/autoload/zip.vim ?) to
|
||||
allow browsing (read-only) a bunyan log in rendered form.
|
||||
- Some speed comparisons with others to get a feel for Bunyan's speed.
|
||||
- what about promoting 'latency' field and making that easier?
|
||||
- `log.close` to close streams and shutdown and `this.closed`
|
||||
process.on('exit', log.close)
|
||||
-> 'end' for the name
|
||||
- bunyan cli: more layouts (http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/EnhancedPatternLayout.html)
|
||||
Custom log formats (in config file? in '-f' arg) using printf or hogan.js
|
||||
or whatever. Dap wants field width control for lining up. Hogan.js is
|
||||
probably overkill for this.
|
||||
- loggly example using raw streams, hook.io?, whatever.
|
||||
- serializer support:
|
||||
- restify-server.js example -> restifyReq ? or have `req` detect that.
|
||||
That is nicer for the "use all standard ones". *Does* restify req
|
||||
have anything special?
|
||||
- differential HTTP *client* req/res with *server* req/res.
|
||||
- statsd stream? http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/
|
||||
Think about it.
|
||||
- web ui. Ideas: http://googlecloudplatform.blogspot.ca/2014/04/a-new-logs-viewer-for-google-cloud.html
|
||||
+1708
File diff suppressed because it is too large
Load Diff
+235
@@ -0,0 +1,235 @@
|
||||
.\" generated with Ronn/v0.7.3
|
||||
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
||||
.
|
||||
.TH "BUNYAN" "1" "January 2015" "" "bunyan manual"
|
||||
.
|
||||
.SH "NAME"
|
||||
\fBbunyan\fR \- filter and pretty\-print Bunyan log file content
|
||||
.
|
||||
.SH "SYNOPSIS"
|
||||
\fBbunyan\fR [OPTIONS]
|
||||
.
|
||||
.P
|
||||
\&\.\.\. | \fBbunyan\fR [OPTIONS]
|
||||
.
|
||||
.P
|
||||
\fBbunyan\fR [OPTIONS] \-p PID
|
||||
.
|
||||
.SH "DESCRIPTION"
|
||||
"Bunyan" is \fBa simple and fast a JSON logging library\fR for node\.js services, a one\-JSON\-object\-per\-line log format, and \fBa \fBbunyan\fR CLI tool\fR for nicely viewing those logs\. This man page describes the latter\.
|
||||
.
|
||||
.SS "Pretty\-printing"
|
||||
A bunyan log file is a stream of JSON objects, optionally interspersed with non\-JSON log lines\. The primary usage of bunyan(1) is to pretty print, for example:
|
||||
.
|
||||
.IP "" 4
|
||||
.
|
||||
.nf
|
||||
|
||||
$ bunyan foo\.log # or `cat foo\.log | bunyan
|
||||
[2012\-02\-08T22:56:52\.856Z] INFO: myservice/123 on example\.com: My message
|
||||
extra: multi
|
||||
line
|
||||
[2012\-02\-08T22:56:54\.856Z] ERROR: myservice/123 on example\.com: My message
|
||||
\.\.\.
|
||||
.
|
||||
.fi
|
||||
.
|
||||
.IP "" 0
|
||||
.
|
||||
.P
|
||||
By default the "long" output format is used\. Use the \fB\-o FORMAT\fR option to emit other formats\. E\.g\.:
|
||||
.
|
||||
.IP "" 4
|
||||
.
|
||||
.nf
|
||||
|
||||
$ bunyan foo\.log \-o short
|
||||
22:56:52\.856Z INFO myservice: My message
|
||||
extra: multi
|
||||
line
|
||||
22:56:54\.856Z ERROR myservice: My message
|
||||
\.\.\.
|
||||
.
|
||||
.fi
|
||||
.
|
||||
.IP "" 0
|
||||
.
|
||||
.P
|
||||
These will color the output if supported in your terminal\. See "OUTPUT FORMATS" below\.
|
||||
.
|
||||
.SS "Filtering"
|
||||
The \fBbunyan\fR CLI can also be used to filter a bunyan log\. Use \fB\-l LEVEL\fR to filter by level:
|
||||
.
|
||||
.IP "" 4
|
||||
.
|
||||
.nf
|
||||
|
||||
$ bunyan foo\.log \-l error # show only \'error\' level records
|
||||
[2012\-02\-08T22:56:54\.856Z] ERROR: myservice/123 on example\.com: My message
|
||||
.
|
||||
.fi
|
||||
.
|
||||
.IP "" 0
|
||||
.
|
||||
.P
|
||||
Use \fB\-c COND\fR to filter on a JavaScript expression returning true on the record data\. In the COND code, \fBthis\fR refers to the record object:
|
||||
.
|
||||
.IP "" 4
|
||||
.
|
||||
.nf
|
||||
|
||||
$ bunyan foo\.log \-c `this\.three` # show records with the \'extra\' field
|
||||
[2012\-02\-08T22:56:52\.856Z] INFO: myservice/123 on example\.com: My message
|
||||
extra: multi
|
||||
line
|
||||
.
|
||||
.fi
|
||||
.
|
||||
.IP "" 0
|
||||
.
|
||||
.SH "OPTIONS"
|
||||
.
|
||||
.TP
|
||||
\fB\-h\fR, \fB\-\-help\fR
|
||||
Print this help info and exit\.
|
||||
.
|
||||
.TP
|
||||
\fB\-\-version\fR
|
||||
Print version of this command and exit\.
|
||||
.
|
||||
.TP
|
||||
\fB\-q\fR, \fB\-\-quiet\fR
|
||||
Don\'t warn if input isn\'t valid JSON\.
|
||||
.
|
||||
.P
|
||||
Dtrace options (only on dtrace\-supporting platforms):
|
||||
.
|
||||
.TP
|
||||
\fB\-p PID\fR, \fB\-p NAME\fR
|
||||
Process bunyan:log\-* probes from the process with the given PID\. Can be used multiple times, or specify all processes with \'*\', or a set of processes whose command & args match a pattern with \'\-p NAME\'\.
|
||||
.
|
||||
.P
|
||||
Filtering options:
|
||||
.
|
||||
.TP
|
||||
\fB\-l\fR, \fB\-\-level LEVEL\fR
|
||||
Only show messages at or above the specified level\. You can specify level \fInames\fR or numeric values\. (See \'Log Levels\' below\.)
|
||||
.
|
||||
.TP
|
||||
\fB\-c COND\fR, \fB\-\-condition COND\fR
|
||||
Run each log message through the condition and only show those that resolve to a truish value\. E\.g\. \fB\-c \'this\.pid == 123\'\fR\.
|
||||
.
|
||||
.TP
|
||||
\fB\-\-strict\fR
|
||||
Suppress all but legal Bunyan JSON log lines\. By default non\-JSON, and non\-Bunyan lines are passed through\.
|
||||
.
|
||||
.P
|
||||
Output options:
|
||||
.
|
||||
.TP
|
||||
\fB\-\-color\fR
|
||||
Colorize output\. Defaults to try if output stream is a TTY\.
|
||||
.
|
||||
.TP
|
||||
\fB\-\-no\-color\fR
|
||||
Force no coloring (e\.g\. terminal doesn\'t support it)
|
||||
.
|
||||
.TP
|
||||
\fB\-o FORMAT\fR, \fB\-\-output FORMAT\fR
|
||||
Specify an output format\. One of \fBlong\fR (the default), \fBshort\fR, \fBjson\fR, \fBjson\-N\fR, \fBbunyan\fR (the native bunyan 0\-indent JSON output) or \fBinspect\fR\.
|
||||
.
|
||||
.TP
|
||||
\fB\-j\fR
|
||||
Shortcut for \fB\-o json\fR\.
|
||||
.
|
||||
.TP
|
||||
\fB\-L\fR, \fB\-\-time local\fR
|
||||
Display the time field in \fIlocal\fR time, rather than the default UTC time\.
|
||||
.
|
||||
.SH "LOG LEVELS"
|
||||
In Bunyan log records, then \fBlevel\fR field is a number\. For the \fB\-l|\-\-level\fR argument the level \fBnames\fR are supported as shortcuts\. In \fB\-c|\-\-condition\fR scripts, uppercase symbols like "DEBUG" are defined for convenience\.
|
||||
.
|
||||
.IP "" 4
|
||||
.
|
||||
.nf
|
||||
|
||||
Level Name Level Number Symbol in COND Scripts
|
||||
trace 10 TRACE
|
||||
debug 20 DEBUG
|
||||
info 30 INFO
|
||||
warn 40 WARN
|
||||
error 50 ERROR
|
||||
fatal 60 FATAL
|
||||
.
|
||||
.fi
|
||||
.
|
||||
.IP "" 0
|
||||
.
|
||||
.SH "OUTPUT FORMATS"
|
||||
.
|
||||
.nf
|
||||
|
||||
FORMAT NAME DESCRIPTION
|
||||
long (default) The default output\. Long form\. Colored and "pretty"\.
|
||||
\'req\' and \'res\' and \'err\' fields are rendered specially
|
||||
as an HTTP request, HTTP response and exception
|
||||
stack trace, respectively\. For backward compat, the
|
||||
name "paul" also works for this\.
|
||||
short Like the default output, but more concise\. Some
|
||||
typically redundant fields are ellided\.
|
||||
json JSON output, 2\-space indentation\.
|
||||
json\-N JSON output, N\-space indentation, e\.g\. "json\-4"
|
||||
bunyan Alias for "json\-0", the Bunyan "native" format\.
|
||||
inspect Node\.js `util\.inspect` output\.
|
||||
.
|
||||
.fi
|
||||
.
|
||||
.SH "DTRACE SUPPORT"
|
||||
On systems that support DTrace (e\.g\., MacOS, FreeBSD, illumos derivatives like SmartOS and OmniOS), Bunyan will create a DTrace provider (\fBbunyan\fR) that makes available the following probes:
|
||||
.
|
||||
.IP "" 4
|
||||
.
|
||||
.nf
|
||||
|
||||
log\-trace
|
||||
log\-debug
|
||||
log\-info
|
||||
log\-warn
|
||||
log\-error
|
||||
log\-fatal
|
||||
.
|
||||
.fi
|
||||
.
|
||||
.IP "" 0
|
||||
.
|
||||
.P
|
||||
Each of these probes has a single argument: the string that would be written to the log\. Note that when a probe is enabled, it will fire whenever the corresponding function is called, even if the level of the log message is less than that of any stream\.
|
||||
.
|
||||
.P
|
||||
See \fIhttps://github\.com/trentm/node\-bunyan#dtrace\-support\fR for more details and the \'\-p PID\' option above for convenience usage\.
|
||||
.
|
||||
.SH "ENVIRONMENT"
|
||||
.
|
||||
.TP
|
||||
\fBBUNYAN_NO_COLOR\fR
|
||||
Set to a non\-empty value to force no output coloring\. See \'\-\-no\-color\'\.
|
||||
.
|
||||
.SH "PROJECT & BUGS"
|
||||
\fBbunyan\fR is written in JavaScript and requires node\.js (\fBnode\fR)\. The project lives at \fIhttps://github\.com/trentm/node\-bunyan\fR and is published to npm as "bunyan"\.
|
||||
.
|
||||
.IP "\(bu" 4
|
||||
README, Install notes: \fIhttps://github\.com/trentm/node\-bunyan#readme\fR
|
||||
.
|
||||
.IP "\(bu" 4
|
||||
Report bugs to \fIhttps://github\.com/trentm/node\-bunyan/issues\fR\.
|
||||
.
|
||||
.IP "\(bu" 4
|
||||
See the full changelog at: \fIhttps://github\.com/trentm/node\-bunyan/blob/master/CHANGES\.md\fR
|
||||
.
|
||||
.IP "" 0
|
||||
.
|
||||
.SH "LICENSE"
|
||||
MIT License (see \fIhttps://github\.com/trentm/node\-bunyan/blob/master/LICENSE\.txt\fR)
|
||||
.
|
||||
.SH "COPYRIGHT"
|
||||
node\-bunyan is Copyright (c) 2012 Joyent, Inc\. Copyright (c) 2012 Trent Mick\. All rights reserved\.
|
||||
+281
@@ -0,0 +1,281 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv='content-type' value='text/html;charset=utf8'>
|
||||
<meta name='generator' value='Ronn/v0.7.3 (http://github.com/rtomayko/ronn/tree/0.7.3)'>
|
||||
<title>bunyan(1) - filter and pretty-print Bunyan log file content</title>
|
||||
<style type='text/css' media='all'>
|
||||
/* style: man */
|
||||
body#manpage {margin:0}
|
||||
.mp {max-width:100ex;padding:0 9ex 1ex 4ex}
|
||||
.mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
|
||||
.mp h2 {margin:10px 0 0 0}
|
||||
.mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
|
||||
.mp h3 {margin:0 0 0 4ex}
|
||||
.mp dt {margin:0;clear:left}
|
||||
|
||||
.mp dd {margin:0 0 0 9ex}
|
||||
.mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
|
||||
.mp pre {margin-bottom:20px}
|
||||
.mp pre+h2,.mp pre+h3 {margin-top:22px}
|
||||
.mp h2+pre,.mp h3+pre {margin-top:5px}
|
||||
.mp img {display:block;margin:auto}
|
||||
.mp h1.man-title {display:none}
|
||||
.mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
|
||||
.mp h2 {font-size:16px;line-height:1.25}
|
||||
.mp h1 {font-size:20px;line-height:2}
|
||||
.mp {text-align:justify;background:#fff}
|
||||
.mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
|
||||
.mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
|
||||
.mp u {text-decoration:underline}
|
||||
.mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
|
||||
.mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
|
||||
.mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
|
||||
.mp b.man-ref {font-weight:normal;color:#434241}
|
||||
.mp pre {padding:0 4ex}
|
||||
.mp pre code {font-weight:normal;color:#434241}
|
||||
.mp h2+pre,h3+pre {padding-left:0}
|
||||
ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
|
||||
ol.man-decor {width:100%}
|
||||
ol.man-decor li.tl {text-align:left}
|
||||
ol.man-decor li.tc {text-align:center;letter-spacing:4px}
|
||||
ol.man-decor li.tr {text-align:right;float:right}
|
||||
</style>
|
||||
<style type='text/css' media='all'>
|
||||
/* style: toc */
|
||||
.man-navigation {display:block !important;position:fixed;top:0;left:113ex;height:100%;width:100%;padding:48px 0 0 0;border-left:1px solid #dbdbdb;background:#eee}
|
||||
.man-navigation a,.man-navigation a:hover,.man-navigation a:link,.man-navigation a:visited {display:block;margin:0;padding:5px 2px 5px 30px;color:#999;text-decoration:none}
|
||||
.man-navigation a:hover {color:#111;text-decoration:underline}
|
||||
</style>
|
||||
</head>
|
||||
<!--
|
||||
The following styles are deprecated and will be removed at some point:
|
||||
div#man, div#man ol.man, div#man ol.head, div#man ol.man.
|
||||
|
||||
The .man-page, .man-decor, .man-head, .man-foot, .man-title, and
|
||||
.man-navigation should be used instead.
|
||||
-->
|
||||
<body id='manpage'>
|
||||
<div class='mp' id='man'>
|
||||
|
||||
<div class='man-navigation' style='display:none'>
|
||||
<a href="#NAME">NAME</a>
|
||||
<a href="#SYNOPSIS">SYNOPSIS</a>
|
||||
<a href="#DESCRIPTION">DESCRIPTION</a>
|
||||
<a href="#OPTIONS">OPTIONS</a>
|
||||
<a href="#LOG-LEVELS">LOG LEVELS</a>
|
||||
<a href="#OUTPUT-FORMATS">OUTPUT FORMATS</a>
|
||||
<a href="#DTRACE-SUPPORT">DTRACE SUPPORT</a>
|
||||
<a href="#ENVIRONMENT">ENVIRONMENT</a>
|
||||
<a href="#PROJECT-BUGS">PROJECT & BUGS</a>
|
||||
<a href="#LICENSE">LICENSE</a>
|
||||
<a href="#COPYRIGHT">COPYRIGHT</a>
|
||||
</div>
|
||||
|
||||
<ol class='man-decor man-head man head'>
|
||||
<li class='tl'>bunyan(1)</li>
|
||||
<li class='tc'>bunyan manual</li>
|
||||
<li class='tr'>bunyan(1)</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="NAME">NAME</h2>
|
||||
<p class="man-name">
|
||||
<code>bunyan</code> - <span class="man-whatis">filter and pretty-print Bunyan log file content</span>
|
||||
</p>
|
||||
|
||||
<h2 id="SYNOPSIS">SYNOPSIS</h2>
|
||||
|
||||
<p><code>bunyan</code> [OPTIONS]</p>
|
||||
|
||||
<p>... | <code>bunyan</code> [OPTIONS]</p>
|
||||
|
||||
<p><code>bunyan</code> [OPTIONS] -p PID</p>
|
||||
|
||||
<h2 id="DESCRIPTION">DESCRIPTION</h2>
|
||||
|
||||
<p>"Bunyan" is <strong>a simple and fast a JSON logging library</strong> for node.js services,
|
||||
a one-JSON-object-per-line log format, and <strong>a <code>bunyan</code> CLI tool</strong> for nicely
|
||||
viewing those logs. This man page describes the latter.</p>
|
||||
|
||||
<h3 id="Pretty-printing">Pretty-printing</h3>
|
||||
|
||||
<p>A bunyan log file is a stream of JSON objects, optionally interspersed with
|
||||
non-JSON log lines. The primary usage of <a href="bunyan.1.html" class="man-ref">bunyan<span class="s">(1)</span></a> is to pretty print,
|
||||
for example:</p>
|
||||
|
||||
<pre><code>$ bunyan foo.log # or `cat foo.log | bunyan
|
||||
[2012-02-08T22:56:52.856Z] INFO: myservice/123 on example.com: My message
|
||||
extra: multi
|
||||
line
|
||||
[2012-02-08T22:56:54.856Z] ERROR: myservice/123 on example.com: My message
|
||||
...
|
||||
</code></pre>
|
||||
|
||||
<p>By default the "long" output format is used. Use the <code>-o FORMAT</code> option to
|
||||
emit other formats. E.g.:</p>
|
||||
|
||||
<pre><code>$ bunyan foo.log -o short
|
||||
22:56:52.856Z INFO myservice: My message
|
||||
extra: multi
|
||||
line
|
||||
22:56:54.856Z ERROR myservice: My message
|
||||
...
|
||||
</code></pre>
|
||||
|
||||
<p>These will color the output if supported in your terminal.
|
||||
See "OUTPUT FORMATS" below.</p>
|
||||
|
||||
<h3 id="Filtering">Filtering</h3>
|
||||
|
||||
<p>The <code>bunyan</code> CLI can also be used to filter a bunyan log. Use <code>-l LEVEL</code>
|
||||
to filter by level:</p>
|
||||
|
||||
<pre><code>$ bunyan foo.log -l error # show only 'error' level records
|
||||
[2012-02-08T22:56:54.856Z] ERROR: myservice/123 on example.com: My message
|
||||
</code></pre>
|
||||
|
||||
<p>Use <code>-c COND</code> to filter on a JavaScript expression returning true on the
|
||||
record data. In the COND code, <code>this</code> refers to the record object:</p>
|
||||
|
||||
<pre><code>$ bunyan foo.log -c `this.three` # show records with the 'extra' field
|
||||
[2012-02-08T22:56:52.856Z] INFO: myservice/123 on example.com: My message
|
||||
extra: multi
|
||||
line
|
||||
</code></pre>
|
||||
|
||||
<h2 id="OPTIONS">OPTIONS</h2>
|
||||
|
||||
<dl>
|
||||
<dt><code>-h</code>, <code>--help</code></dt><dd><p>Print this help info and exit.</p></dd>
|
||||
<dt><code>--version</code></dt><dd><p>Print version of this command and exit.</p></dd>
|
||||
<dt><code>-q</code>, <code>--quiet</code></dt><dd><p>Don't warn if input isn't valid JSON.</p></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<p>Dtrace options (only on dtrace-supporting platforms):</p>
|
||||
|
||||
<dl>
|
||||
<dt><code>-p PID</code>, <code>-p NAME</code></dt><dd>Process bunyan:log-* probes from the process with the given PID.
|
||||
Can be used multiple times, or specify all processes with '*',
|
||||
or a set of processes whose command & args match a pattern with
|
||||
'-p NAME'.</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<p>Filtering options:</p>
|
||||
|
||||
<dl>
|
||||
<dt><code>-l</code>, <code>--level LEVEL</code></dt><dd><p>Only show messages at or above the specified level. You can specify level
|
||||
<em>names</em> or numeric values. (See 'Log Levels' below.)</p></dd>
|
||||
<dt><code>-c COND</code>, <code>--condition COND</code></dt><dd><p>Run each log message through the condition and only show those that
|
||||
resolve to a truish value. E.g. <code>-c 'this.pid == 123'</code>.</p></dd>
|
||||
<dt><code>--strict</code></dt><dd><p>Suppress all but legal Bunyan JSON log lines. By default non-JSON, and
|
||||
non-Bunyan lines are passed through.</p></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<p>Output options:</p>
|
||||
|
||||
<dl>
|
||||
<dt class="flush"><code>--color</code></dt><dd><p>Colorize output. Defaults to try if output stream is a TTY.</p></dd>
|
||||
<dt><code>--no-color</code></dt><dd><p>Force no coloring (e.g. terminal doesn't support it)</p></dd>
|
||||
<dt><code>-o FORMAT</code>, <code>--output FORMAT</code></dt><dd><p>Specify an output format. One of <code>long</code> (the default), <code>short</code>, <code>json</code>,
|
||||
<code>json-N</code>, <code>bunyan</code> (the native bunyan 0-indent JSON output) or <code>inspect</code>.</p></dd>
|
||||
<dt class="flush"><code>-j</code></dt><dd><p>Shortcut for <code>-o json</code>.</p></dd>
|
||||
<dt><code>-L</code>, <code>--time local</code></dt><dd><p>Display the time field in <em>local</em> time, rather than the default UTC
|
||||
time.</p></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<h2 id="LOG-LEVELS">LOG LEVELS</h2>
|
||||
|
||||
<p>In Bunyan log records, then <code>level</code> field is a number. For the <code>-l|--level</code>
|
||||
argument the level <strong>names</strong> are supported as shortcuts. In <code>-c|--condition</code>
|
||||
scripts, uppercase symbols like "DEBUG" are defined for convenience.</p>
|
||||
|
||||
<pre><code>Level Name Level Number Symbol in COND Scripts
|
||||
trace 10 TRACE
|
||||
debug 20 DEBUG
|
||||
info 30 INFO
|
||||
warn 40 WARN
|
||||
error 50 ERROR
|
||||
fatal 60 FATAL
|
||||
</code></pre>
|
||||
|
||||
<h2 id="OUTPUT-FORMATS">OUTPUT FORMATS</h2>
|
||||
|
||||
<pre><code>FORMAT NAME DESCRIPTION
|
||||
long (default) The default output. Long form. Colored and "pretty".
|
||||
'req' and 'res' and 'err' fields are rendered specially
|
||||
as an HTTP request, HTTP response and exception
|
||||
stack trace, respectively. For backward compat, the
|
||||
name "paul" also works for this.
|
||||
short Like the default output, but more concise. Some
|
||||
typically redundant fields are ellided.
|
||||
json JSON output, 2-space indentation.
|
||||
json-N JSON output, N-space indentation, e.g. "json-4"
|
||||
bunyan Alias for "json-0", the Bunyan "native" format.
|
||||
inspect Node.js `util.inspect` output.
|
||||
</code></pre>
|
||||
|
||||
<h2 id="DTRACE-SUPPORT">DTRACE SUPPORT</h2>
|
||||
|
||||
<p>On systems that support DTrace (e.g., MacOS, FreeBSD, illumos derivatives
|
||||
like SmartOS and OmniOS), Bunyan will create a DTrace provider (<code>bunyan</code>)
|
||||
that makes available the following probes:</p>
|
||||
|
||||
<pre><code>log-trace
|
||||
log-debug
|
||||
log-info
|
||||
log-warn
|
||||
log-error
|
||||
log-fatal
|
||||
</code></pre>
|
||||
|
||||
<p>Each of these probes has a single argument: the string that would be
|
||||
written to the log. Note that when a probe is enabled, it will
|
||||
fire whenever the corresponding function is called, even if the level of
|
||||
the log message is less than that of any stream.</p>
|
||||
|
||||
<p>See <a href="https://github.com/trentm/node-bunyan#dtrace-support" data-bare-link="true">https://github.com/trentm/node-bunyan#dtrace-support</a> for more details
|
||||
and the '-p PID' option above for convenience usage.</p>
|
||||
|
||||
<h2 id="ENVIRONMENT">ENVIRONMENT</h2>
|
||||
|
||||
<dl>
|
||||
<dt><code>BUNYAN_NO_COLOR</code></dt><dd>Set to a non-empty value to force no output coloring. See '--no-color'.</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<h2 id="PROJECT-BUGS">PROJECT & BUGS</h2>
|
||||
|
||||
<p><code>bunyan</code> is written in JavaScript and requires node.js (<code>node</code>). The project
|
||||
lives at <a href="https://github.com/trentm/node-bunyan" data-bare-link="true">https://github.com/trentm/node-bunyan</a> and is published to npm as
|
||||
"bunyan".</p>
|
||||
|
||||
<ul>
|
||||
<li>README, Install notes: <a href="https://github.com/trentm/node-bunyan#readme" data-bare-link="true">https://github.com/trentm/node-bunyan#readme</a></li>
|
||||
<li>Report bugs to <a href="https://github.com/trentm/node-bunyan/issues" data-bare-link="true">https://github.com/trentm/node-bunyan/issues</a>.</li>
|
||||
<li>See the full changelog at: <a href="https://github.com/trentm/node-bunyan/blob/master/CHANGES.md" data-bare-link="true">https://github.com/trentm/node-bunyan/blob/master/CHANGES.md</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2 id="LICENSE">LICENSE</h2>
|
||||
|
||||
<p>MIT License (see <a href="https://github.com/trentm/node-bunyan/blob/master/LICENSE.txt" data-bare-link="true">https://github.com/trentm/node-bunyan/blob/master/LICENSE.txt</a>)</p>
|
||||
|
||||
<h2 id="COPYRIGHT">COPYRIGHT</h2>
|
||||
|
||||
<p>node-bunyan is Copyright (c) 2012 Joyent, Inc. Copyright (c) 2012 Trent Mick.
|
||||
All rights reserved.</p>
|
||||
|
||||
|
||||
<ol class='man-decor man-foot man foot'>
|
||||
<li class='tl'></li>
|
||||
<li class='tc'>January 2015</li>
|
||||
<li class='tr'>bunyan(1)</li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
<a href="https://github.com/trentm/node-bunyan"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub"></a></body>
|
||||
</html>
|
||||
+195
@@ -0,0 +1,195 @@
|
||||
# bunyan(1) -- filter and pretty-print Bunyan log file content
|
||||
|
||||
|
||||
## SYNOPSIS
|
||||
|
||||
`bunyan` \[OPTIONS\]
|
||||
|
||||
... | `bunyan` \[OPTIONS\]
|
||||
|
||||
`bunyan` \[OPTIONS\] -p PID
|
||||
|
||||
|
||||
## DESCRIPTION
|
||||
|
||||
"Bunyan" is **a simple and fast a JSON logging library** for node.js services,
|
||||
a one-JSON-object-per-line log format, and **a `bunyan` CLI tool** for nicely
|
||||
viewing those logs. This man page describes the latter.
|
||||
|
||||
|
||||
### Pretty-printing
|
||||
|
||||
A bunyan log file is a stream of JSON objects, optionally interspersed with
|
||||
non-JSON log lines. The primary usage of bunyan(1) is to pretty print,
|
||||
for example:
|
||||
|
||||
$ bunyan foo.log # or `cat foo.log | bunyan
|
||||
[2012-02-08T22:56:52.856Z] INFO: myservice/123 on example.com: My message
|
||||
extra: multi
|
||||
line
|
||||
[2012-02-08T22:56:54.856Z] ERROR: myservice/123 on example.com: My message
|
||||
...
|
||||
|
||||
By default the "long" output format is used. Use the `-o FORMAT` option to
|
||||
emit other formats. E.g.:
|
||||
|
||||
$ bunyan foo.log -o short
|
||||
22:56:52.856Z INFO myservice: My message
|
||||
extra: multi
|
||||
line
|
||||
22:56:54.856Z ERROR myservice: My message
|
||||
...
|
||||
|
||||
These will color the output if supported in your terminal.
|
||||
See "OUTPUT FORMATS" below.
|
||||
|
||||
|
||||
### Filtering
|
||||
|
||||
The `bunyan` CLI can also be used to filter a bunyan log. Use `-l LEVEL`
|
||||
to filter by level:
|
||||
|
||||
$ bunyan foo.log -l error # show only 'error' level records
|
||||
[2012-02-08T22:56:54.856Z] ERROR: myservice/123 on example.com: My message
|
||||
|
||||
Use `-c COND` to filter on a JavaScript expression returning true on the
|
||||
record data. In the COND code, `this` refers to the record object:
|
||||
|
||||
$ bunyan foo.log -c `this.three` # show records with the 'extra' field
|
||||
[2012-02-08T22:56:52.856Z] INFO: myservice/123 on example.com: My message
|
||||
extra: multi
|
||||
line
|
||||
|
||||
|
||||
## OPTIONS
|
||||
|
||||
* `-h`, `--help`:
|
||||
Print this help info and exit.
|
||||
|
||||
* `--version`:
|
||||
Print version of this command and exit.
|
||||
|
||||
* `-q`, `--quiet`:
|
||||
Don't warn if input isn't valid JSON.
|
||||
|
||||
Dtrace options (only on dtrace-supporting platforms):
|
||||
|
||||
* `-p PID`, `-p NAME`:
|
||||
Process bunyan:log-\* probes from the process with the given PID.
|
||||
Can be used multiple times, or specify all processes with '\*',
|
||||
or a set of processes whose command & args match a pattern with
|
||||
'-p NAME'.
|
||||
|
||||
Filtering options:
|
||||
|
||||
* `-l`, `--level LEVEL`:
|
||||
Only show messages at or above the specified level. You can specify level
|
||||
*names* or numeric values. (See 'Log Levels' below.)
|
||||
|
||||
* `-c COND`, `--condition COND`:
|
||||
Run each log message through the condition and only show those that
|
||||
resolve to a truish value. E.g. `-c 'this.pid == 123'`.
|
||||
|
||||
* `--strict`:
|
||||
Suppress all but legal Bunyan JSON log lines. By default non-JSON, and
|
||||
non-Bunyan lines are passed through.
|
||||
|
||||
Output options:
|
||||
|
||||
* `--color`:
|
||||
Colorize output. Defaults to try if output stream is a TTY.
|
||||
|
||||
* `--no-color`:
|
||||
Force no coloring (e.g. terminal doesn't support it)
|
||||
|
||||
* `-o FORMAT`, `--output FORMAT`:
|
||||
Specify an output format. One of `long` (the default), `short`, `json`,
|
||||
`json-N`, `bunyan` (the native bunyan 0-indent JSON output) or `inspect`.
|
||||
|
||||
* `-j`:
|
||||
Shortcut for `-o json`.
|
||||
|
||||
* `-L`, `--time local`:
|
||||
Display the time field in *local* time, rather than the default UTC
|
||||
time.
|
||||
|
||||
|
||||
## LOG LEVELS
|
||||
|
||||
In Bunyan log records, then `level` field is a number. For the `-l|--level`
|
||||
argument the level **names** are supported as shortcuts. In `-c|--condition`
|
||||
scripts, uppercase symbols like "DEBUG" are defined for convenience.
|
||||
|
||||
Level Name Level Number Symbol in COND Scripts
|
||||
trace 10 TRACE
|
||||
debug 20 DEBUG
|
||||
info 30 INFO
|
||||
warn 40 WARN
|
||||
error 50 ERROR
|
||||
fatal 60 FATAL
|
||||
|
||||
|
||||
## OUTPUT FORMATS
|
||||
|
||||
FORMAT NAME DESCRIPTION
|
||||
long (default) The default output. Long form. Colored and "pretty".
|
||||
'req' and 'res' and 'err' fields are rendered specially
|
||||
as an HTTP request, HTTP response and exception
|
||||
stack trace, respectively. For backward compat, the
|
||||
name "paul" also works for this.
|
||||
short Like the default output, but more concise. Some
|
||||
typically redundant fields are ellided.
|
||||
json JSON output, 2-space indentation.
|
||||
json-N JSON output, N-space indentation, e.g. "json-4"
|
||||
bunyan Alias for "json-0", the Bunyan "native" format.
|
||||
inspect Node.js `util.inspect` output.
|
||||
|
||||
|
||||
## DTRACE SUPPORT
|
||||
|
||||
On systems that support DTrace (e.g., MacOS, FreeBSD, illumos derivatives
|
||||
like SmartOS and OmniOS), Bunyan will create a DTrace provider (`bunyan`)
|
||||
that makes available the following probes:
|
||||
|
||||
log-trace
|
||||
log-debug
|
||||
log-info
|
||||
log-warn
|
||||
log-error
|
||||
log-fatal
|
||||
|
||||
Each of these probes has a single argument: the string that would be
|
||||
written to the log. Note that when a probe is enabled, it will
|
||||
fire whenever the corresponding function is called, even if the level of
|
||||
the log message is less than that of any stream.
|
||||
|
||||
See <https://github.com/trentm/node-bunyan#dtrace-support> for more details
|
||||
and the '-p PID' option above for convenience usage.
|
||||
|
||||
|
||||
## ENVIRONMENT
|
||||
|
||||
* `BUNYAN_NO_COLOR`:
|
||||
Set to a non-empty value to force no output coloring. See '--no-color'.
|
||||
|
||||
|
||||
## PROJECT & BUGS
|
||||
|
||||
`bunyan` is written in JavaScript and requires node.js (`node`). The project
|
||||
lives at <https://github.com/trentm/node-bunyan> and is published to npm as
|
||||
"bunyan".
|
||||
|
||||
* README, Install notes: <https://github.com/trentm/node-bunyan#readme>
|
||||
* Report bugs to <https://github.com/trentm/node-bunyan/issues>.
|
||||
* See the full changelog at: <https://github.com/trentm/node-bunyan/blob/master/CHANGES.md>
|
||||
|
||||
|
||||
## LICENSE
|
||||
|
||||
MIT License (see <https://github.com/trentm/node-bunyan/blob/master/LICENSE.txt>)
|
||||
|
||||
|
||||
## COPYRIGHT
|
||||
|
||||
node-bunyan is Copyright (c) 2012 Joyent, Inc. Copyright (c) 2012 Trent Mick.
|
||||
All rights reserved.
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 194 KiB |
+1
@@ -0,0 +1 @@
|
||||
<a href="bunyan.1.html">bunyan(1) man page</a>
|
||||
+1627
File diff suppressed because it is too large
Load Diff
+250
@@ -0,0 +1,250 @@
|
||||
{
|
||||
"// dtrace-provider": "required for dtrace features",
|
||||
"// moment": "required for local time with CLI",
|
||||
"// mv": "required for RotatingFileStream",
|
||||
"_from": "bunyan@^1.8.3",
|
||||
"_id": "bunyan@1.8.12",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=",
|
||||
"_location": "/bunyan",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "range",
|
||||
"registry": true,
|
||||
"raw": "bunyan@^1.8.3",
|
||||
"name": "bunyan",
|
||||
"escapedName": "bunyan",
|
||||
"rawSpec": "^1.8.3",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "^1.8.3"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/ldapjs"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz",
|
||||
"_shasum": "f150f0f6748abdd72aeae84f04403be2ef113797",
|
||||
"_spec": "bunyan@^1.8.3",
|
||||
"_where": "/home/erik/Documents/workspace_brackets/a1_BME_Project_Ohm/om/node_modules/ldapjs",
|
||||
"author": {
|
||||
"name": "Trent Mick",
|
||||
"email": "trentm@gmail.com",
|
||||
"url": "http://trentm.com"
|
||||
},
|
||||
"bin": {
|
||||
"bunyan": "./bin/bunyan"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/trentm/node-bunyan/issues"
|
||||
},
|
||||
"bundleDependencies": false,
|
||||
"contributors": [
|
||||
{
|
||||
"name": "Trent Mick",
|
||||
"url": "http://trentm.com"
|
||||
},
|
||||
{
|
||||
"name": "Mark Cavage",
|
||||
"url": "https://github.com/mcavage"
|
||||
},
|
||||
{
|
||||
"name": "Dave Pacheco",
|
||||
"url": "https://github.com/davepacheco"
|
||||
},
|
||||
{
|
||||
"name": "Michael Hart",
|
||||
"url": "https://github.com/mhart"
|
||||
},
|
||||
{
|
||||
"name": "Isaac Schlueter",
|
||||
"url": "https://github.com/isaacs"
|
||||
},
|
||||
{
|
||||
"name": "Rob Gulewich",
|
||||
"url": "https://github.com/rgulewich"
|
||||
},
|
||||
{
|
||||
"name": "Bryan Cantrill",
|
||||
"url": "https://github.com/bcantrill"
|
||||
},
|
||||
{
|
||||
"name": "Michael Hart",
|
||||
"url": "https://github.com/mhart"
|
||||
},
|
||||
{
|
||||
"name": "Simon Wade",
|
||||
"url": "https://github.com/aexmachina"
|
||||
},
|
||||
{
|
||||
"name": "https://github.com/glenn-murray-bse"
|
||||
},
|
||||
{
|
||||
"name": "Chakrit Wichian",
|
||||
"url": "https://github.com/chakrit"
|
||||
},
|
||||
{
|
||||
"name": "Patrick Mooney",
|
||||
"url": "https://github.com/pfmooney"
|
||||
},
|
||||
{
|
||||
"name": "Johan Nordberg",
|
||||
"url": "https://github.com/jnordberg"
|
||||
},
|
||||
{
|
||||
"name": "https://github.com/timborodin"
|
||||
},
|
||||
{
|
||||
"name": "Ryan Graham",
|
||||
"url": "https://github.com/rmg"
|
||||
},
|
||||
{
|
||||
"name": "Alex Kocharin",
|
||||
"url": "https://github.com/rlidwka"
|
||||
},
|
||||
{
|
||||
"name": "Andrei Neculau",
|
||||
"url": "https://github.com/andreineculau"
|
||||
},
|
||||
{
|
||||
"name": "Mihai Tomescu",
|
||||
"url": "https://github.com/matomesc"
|
||||
},
|
||||
{
|
||||
"name": "Daniel Juhl",
|
||||
"url": "https://github.com/danieljuhl"
|
||||
},
|
||||
{
|
||||
"name": "Chris Barber",
|
||||
"url": "https://github.com/cb1kenobi"
|
||||
},
|
||||
{
|
||||
"name": "Manuel Schneider",
|
||||
"url": "https://github.com/manuelschneider"
|
||||
},
|
||||
{
|
||||
"name": "Martin Gausby",
|
||||
"url": "https://github.com/gausby"
|
||||
},
|
||||
{
|
||||
"name": "Stéphan Kochen",
|
||||
"url": "https://github.com/stephank"
|
||||
},
|
||||
{
|
||||
"name": "Shakeel Mohamed",
|
||||
"url": "https://github.com/shakeelmohamed"
|
||||
},
|
||||
{
|
||||
"name": "Denis Izmaylov",
|
||||
"url": "https://github.com/DenisIzmaylov"
|
||||
},
|
||||
{
|
||||
"name": "Guillermo Grau Panea",
|
||||
"url": "https://github.com/guigrpa"
|
||||
},
|
||||
{
|
||||
"name": "Mark LeMerise",
|
||||
"url": "https://github.com/MarkLeMerise"
|
||||
},
|
||||
{
|
||||
"name": "https://github.com/sometimesalready"
|
||||
},
|
||||
{
|
||||
"name": "Charly Koza",
|
||||
"url": "https://github.com/Cactusbone"
|
||||
},
|
||||
{
|
||||
"name": "Thomas Heymann",
|
||||
"url": "https://github.com/cyberthom"
|
||||
},
|
||||
{
|
||||
"name": "David M. Lee",
|
||||
"url": "https://github.com/leedm777"
|
||||
},
|
||||
{
|
||||
"name": "Marc Udoff",
|
||||
"url": "https://github.com/mlucool"
|
||||
},
|
||||
{
|
||||
"name": "Mark Stosberg",
|
||||
"url": "https://github.com/markstos"
|
||||
},
|
||||
{
|
||||
"name": "Alexander Ray",
|
||||
"url": "https://github.com/aray12"
|
||||
},
|
||||
{
|
||||
"name": "Adam Lynch",
|
||||
"url": "https://github.com/adam-lynch"
|
||||
},
|
||||
{
|
||||
"name": "Michael Nisi",
|
||||
"url": "https://github.com/michaelnisi"
|
||||
},
|
||||
{
|
||||
"name": "Martijn Schrage",
|
||||
"url": "https://github.com/Oblosys"
|
||||
},
|
||||
{
|
||||
"name": "Paul Milham",
|
||||
"url": "https://github.com/domrein"
|
||||
},
|
||||
{
|
||||
"name": "Frankie O'Rourke",
|
||||
"url": "https://github.com/psfrankie"
|
||||
},
|
||||
{
|
||||
"name": "Cody Mello",
|
||||
"url": "https://github.com/melloc"
|
||||
},
|
||||
{
|
||||
"name": "Todd Whiteman",
|
||||
"url": "https://github.com/twhiteman"
|
||||
},
|
||||
{
|
||||
"name": "Zach Bjornson",
|
||||
"url": "https://github.com/zbjornson"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"dtrace-provider": "~0.8",
|
||||
"moment": "^2.10.6",
|
||||
"mv": "~2",
|
||||
"safe-json-stringify": "~1"
|
||||
},
|
||||
"deprecated": false,
|
||||
"description": "a JSON logging library for node.js services",
|
||||
"devDependencies": {
|
||||
"ben": "0.0.0",
|
||||
"markdown-toc": "0.12.x",
|
||||
"nodeunit": "0.9",
|
||||
"vasync": "1.4.3",
|
||||
"verror": "1.3.3"
|
||||
},
|
||||
"engines": [
|
||||
"node >=0.10.0"
|
||||
],
|
||||
"homepage": "https://github.com/trentm/node-bunyan#readme",
|
||||
"keywords": [
|
||||
"log",
|
||||
"logging",
|
||||
"log4j",
|
||||
"json",
|
||||
"bunyan"
|
||||
],
|
||||
"license": "MIT",
|
||||
"main": "./lib/bunyan.js",
|
||||
"name": "bunyan",
|
||||
"optionalDependencies": {
|
||||
"dtrace-provider": "~0.8",
|
||||
"moment": "^2.10.6",
|
||||
"mv": "~2",
|
||||
"safe-json-stringify": "~1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/trentm/node-bunyan.git"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "make test"
|
||||
},
|
||||
"version": "1.8.12"
|
||||
}
|
||||
Reference in New Issue
Block a user