aboutsummaryrefslogtreecommitdiff
path: root/node_modules/glogg
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/glogg')
-rw-r--r--node_modules/glogg/LICENSE22
-rw-r--r--node_modules/glogg/README.md92
-rw-r--r--node_modules/glogg/index.js34
-rw-r--r--node_modules/glogg/package.json38
4 files changed, 186 insertions, 0 deletions
diff --git a/node_modules/glogg/LICENSE b/node_modules/glogg/LICENSE
new file mode 100644
index 000000000..2d92a2b7f
--- /dev/null
+++ b/node_modules/glogg/LICENSE
@@ -0,0 +1,22 @@
+The MIT License (MIT)
+
+Copyright (c) 2014 Blaine Bublitz
+
+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.
+
diff --git a/node_modules/glogg/README.md b/node_modules/glogg/README.md
new file mode 100644
index 000000000..319f03e48
--- /dev/null
+++ b/node_modules/glogg/README.md
@@ -0,0 +1,92 @@
+# glogg
+
+[![Travis Build Status](https://img.shields.io/travis/undertakerjs/glogg/master.svg?label=travis&style=flat-square)](https://travis-ci.org/undertakerjs/glogg)
+
+Global logging utility
+
+## Usage
+
+```js
+var getLogger = require('glogg');
+
+var logger = getLogger('my-namespace');
+
+// logs strings
+logger.debug('The MOST verbose!');
+logger.info('Some important info');
+logger.warn('All the warnings to you');
+logger.error('OH NO! SOMETHING HAPPENED!');
+
+// supports util.format!
+logger.info('%s style!', 'printf');
+
+// log anything
+logger.debug({ my: 'obj' });
+logger.info([1, 2, 3]);
+
+// somewhere else
+logger.on('info', function(msg){
+ // do something with msg
+});
+
+// must be handled to avoid crashing process
+logger.on('error', function(msg){
+ // now it won't crash
+});
+```
+
+## API
+
+__Note: This module makes no assumptions about the log levels and they will always
+be emitted. If you are looking to filter some out, your listeners will need to have
+extra logic.__
+
+### getLogger([namespace])
+
+Create a new logger at the given namespace (or the default if no namespace is provided).
+Returns an augmented [`sparkles`](https://github.com/phated/sparkles) EventEmitter object
+with 4 methods: `debug()`, `info()`, `warn()` and `error()`. When called, these methods emit
+an event with the same name. If the first argument is a string, the arguments
+are passed through node's `util.format()` before being emitted. Other parts
+of a node program can get the logger by namespace and listen for the events to
+be emitted.
+
+#### logger.debug(msg)
+
+Emits a `debug` event with the given `msg`.
+
+If the first argument is a string, all arguments are passed to node's
+`util.format()` before being emitted.
+
+#### logger.info(msg)
+
+Emits a `info` event with the given `msg`.
+
+If the first argument is a string, all arguments are passed to node's
+`util.format()` before being emitted.
+
+#### logger.warn(msg)
+
+Emits a `warn` event with the given `msg`.
+
+If the first argument is a string, all arguments are passed to node's
+`util.format()` before being emitted.
+
+#### logger.error(msg)
+
+Emits a `error` event with the given `msg`.
+
+If the first argument is a string, all arguments are passed to node's
+`util.format()` before being emitted.
+
+__Note: You must handle this event in some way or the node process will crash
+when an `error` event is emitted.__
+
+#### logger.on(event, fn)
+
+Standard API from node's `EventEmitter`. Use this to listen for events from
+the logger methods.
+
+## License
+
+MIT
diff --git a/node_modules/glogg/index.js b/node_modules/glogg/index.js
new file mode 100644
index 000000000..9d0b16d7e
--- /dev/null
+++ b/node_modules/glogg/index.js
@@ -0,0 +1,34 @@
+'use strict';
+
+var format = require('util').format;
+
+var sparkles = require('sparkles');
+
+var levels = [
+ 'debug',
+ 'info',
+ 'warn',
+ 'error'
+];
+
+function getLogger(namespace){
+ var logger = sparkles(namespace);
+
+ levels.forEach(function(level){
+ logger[level] = makeLogLevel(level);
+ });
+
+ return logger;
+}
+
+function makeLogLevel(level){
+ return function(msg){
+ if(typeof msg === 'string'){
+ msg = format.apply(null, arguments);
+ }
+
+ this.emit(level, msg);
+ };
+}
+
+module.exports = getLogger;
diff --git a/node_modules/glogg/package.json b/node_modules/glogg/package.json
new file mode 100644
index 000000000..7ddcccc73
--- /dev/null
+++ b/node_modules/glogg/package.json
@@ -0,0 +1,38 @@
+{
+ "name": "glogg",
+ "version": "1.0.0",
+ "description": "Global logging utility",
+ "author": "Blaine Bublitz <blaine@iceddev.com> (http://iceddev.com/)",
+ "contributors": [],
+ "repository": "undertakerjs/glogg",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.10"
+ },
+ "main": "index.js",
+ "files": [
+ "LICENSE",
+ "index.js"
+ ],
+ "scripts": {
+ "test": "lab -cvL --globals store@sparkles"
+ },
+ "dependencies": {
+ "sparkles": "^1.0.0"
+ },
+ "devDependencies": {
+ "@phated/eslint-config-iceddev": "^0.2.1",
+ "code": "^1.5.0",
+ "eslint": "^1.3.1",
+ "eslint-plugin-mocha": "^0.5.1",
+ "eslint-plugin-react": "^3.3.2",
+ "lab": "^5.16.0"
+ },
+ "keywords": [
+ "global",
+ "log",
+ "logger",
+ "logging",
+ "shared"
+ ]
+}