egg-logger
Advanced tools
Comparing version 0.0.1 to 1.0.0
{ | ||
"name": "egg-logger", | ||
"version": "0.0.1", | ||
"description": "egg plugin <egg-logger>", | ||
"keywords": [ | ||
"egg", | ||
"eggjs", | ||
"egg-plugin" | ||
], | ||
"version": "1.0.0", | ||
"description": "egg logger", | ||
"main": "index.js", | ||
"dependencies": { | ||
"chalk": "^1.1.3", | ||
"debug": "^2.2.0", | ||
"iconv-lite": "^0.4.13", | ||
"mkdirp": "^0.5.1", | ||
"utility": "^1.8.0" | ||
}, | ||
"devDependencies": { | ||
"beautify-benchmark": "*", | ||
"benchmark": "2", | ||
"co-sleep": "*", | ||
"coffee": "3", | ||
"egg-bin": "^1.0.1", | ||
"egg-ci": "1", | ||
"eslint": "3", | ||
"eslint-config-egg": "3", | ||
"koa": "1", | ||
"mm": "1", | ||
"rimraf": "2", | ||
"should": "9", | ||
"supertest": "1", | ||
"supertest-as-promised": "3" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/eggjs/egg-logger.git" | ||
}, | ||
"homepage": "https://github.com/eggjs/egg-logger", | ||
"license": "MIT", | ||
"author": "eggjs", | ||
"contributors": [ | ||
"TZ <atian25@qq.com>", | ||
"popomore <sakura9515@gmail.com>", | ||
"fengmk2 <m@fengmk2.com>", | ||
"dead-horse <heyiyu.deadhorse@gmail.com>" | ||
"author": "fengmk2 <fengmk2@gmail.com> (https://fengmk2.com)", | ||
"scripts": { | ||
"lint": "eslint lib test *.js", | ||
"test": "npm run lint && egg-bin test", | ||
"cov": "egg-bin cov", | ||
"ci": "npm run lint && npm run cov" | ||
}, | ||
"engines": { | ||
"node": ">= 4.0.0" | ||
}, | ||
"files": [ | ||
"lib", | ||
"index.js" | ||
], | ||
"repository": { | ||
"type": "git", | ||
"url": "git@github.com:eggjs/egg-logger.git" | ||
"ci": { | ||
"version": "4, 6" | ||
} | ||
} | ||
} |
113
README.md
@@ -1,1 +0,112 @@ | ||
# egg-logger - egg plugin | ||
# egg-logger | ||
[![NPM version][npm-image]][npm-url] | ||
[![build status][travis-image]][travis-url] | ||
[![Test coverage][codecov-image]][codecov-url] | ||
[![David deps][david-image]][david-url] | ||
[![Known Vulnerabilities][snyk-image]][snyk-url] | ||
[![npm download][download-image]][download-url] | ||
[npm-image]: https://img.shields.io/npm/v/egg-logger.svg?style=flat-square | ||
[npm-url]: https://npmjs.org/package/egg-logger | ||
[travis-image]: https://img.shields.io/travis/eggjs/egg-logger.svg?style=flat-square | ||
[travis-url]: https://travis-ci.org/eggjs/egg-logger | ||
[codecov-image]: https://codecov.io/github/eggjs/egg-logger/coverage.svg?branch=master | ||
[codecov-url]: https://codecov.io/github/eggjs/egg-logger?branch=master | ||
[david-image]: https://img.shields.io/david/eggjs/egg-logger.svg?style=flat-square | ||
[david-url]: https://david-dm.org/eggjs/egg-logger | ||
[snyk-image]: https://snyk.io/test/npm/egg-logger/badge.svg?style=flat-square | ||
[snyk-url]: https://snyk.io/test/npm/egg-logger | ||
[download-image]: https://img.shields.io/npm/dm/egg-logger.svg?style=flat-square | ||
[download-url]: https://npmjs.org/package/egg-logger | ||
Egg logger. | ||
![](diagram.png) | ||
Including two base class, `Logger` and `Transport`: | ||
- Transport: Save log to file, stdout/stderr and network. | ||
- Logger: A logger can contains multi transports. | ||
--- | ||
## Install | ||
```bash | ||
$ npm i egg-logger | ||
``` | ||
## Usage | ||
Create a `Logger` and add a file `Transport`. | ||
```js | ||
const Logger = require('egg-logger').Logger; | ||
const FileTransport = require('egg-logger').FileTransport; | ||
const ConsoleTransport = require('egg-logger').ConsoleTransport; | ||
const logger = new Logger(); | ||
logger.set('file', new FileTransport({ | ||
file: '/path/to/file', | ||
level: 'INFO', | ||
})); | ||
logger.set('console', new ConsoleTransport({ | ||
level: 'DEBUG', | ||
})); | ||
logger.debug('debug foo'); // only output to stdout | ||
logger.info('info foo'); | ||
logger.warn('warn foo'); | ||
logger.error(new Error('error foo')); | ||
``` | ||
### Enable / Disable Transport | ||
```js | ||
logger.disable('file'); | ||
logger.info('info'); // output nothing | ||
logger.enable('file'); | ||
logger.info('info'); // output 'info' string | ||
``` | ||
### Redirect | ||
Redirect error log to other logger. | ||
```js | ||
logger.redirect('error', errorLogger); | ||
logger.error(new Error('print to errorLogger')); // equal to `errorLogger.error` | ||
``` | ||
### Reload | ||
```js | ||
logger.reload(); // will end the exists write stream and create a new one. | ||
``` | ||
### Custom Transport | ||
You can make your own `Transport` for logging,e.g.: send log to your logging server. | ||
```js | ||
const urllib = require('urllib'); | ||
const Transport = require('egg-logger').Transport; | ||
class UrllibTransport extends Transport { | ||
log(level, args, meta) { | ||
const msg = super.log(level, args, meta); | ||
return urllib.request('url?msg=' + msg); | ||
} | ||
} | ||
const logger = new Logger(); | ||
logger.set('remote', new UrllibTransport({ | ||
level: 'DEBUG', | ||
})); | ||
logger.info('info'); | ||
``` | ||
## License | ||
[MIT](LICENSE) |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 2 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Empty package
Supply chain riskPackage does not contain any code. It may be removed, is name squatting, or the result of a faulty package publish.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
30956
18
896
0
113
5
14
4
2
+ Addedchalk@^1.1.3
+ Addeddebug@^2.2.0
+ Addediconv-lite@^0.4.13
+ Addedmkdirp@^0.5.1
+ Addedutility@^1.8.0
+ Addedansi-regex@2.1.1(transitive)
+ Addedansi-styles@2.2.1(transitive)
+ Addedany-promise@1.3.0(transitive)
+ Addedchalk@1.1.3(transitive)
+ Addedcopy-to@2.0.1(transitive)
+ Addeddebug@2.6.9(transitive)
+ Addedescape-html@1.0.3(transitive)
+ Addedescape-string-regexp@1.0.5(transitive)
+ Addedextend-shallow@2.0.1(transitive)
+ Addedhas-ansi@2.0.0(transitive)
+ Addediconv-lite@0.4.24(transitive)
+ Addedis-extendable@0.1.1(transitive)
+ Addedminimist@1.2.8(transitive)
+ Addedmkdirp@0.5.6(transitive)
+ Addedms@2.0.0(transitive)
+ Addedmz@2.7.0(transitive)
+ Addedobject-assign@4.1.1(transitive)
+ Addedsafer-buffer@2.1.2(transitive)
+ Addedstrip-ansi@3.0.1(transitive)
+ Addedsupports-color@2.0.0(transitive)
+ Addedthenify@3.3.1(transitive)
+ Addedthenify-all@1.6.0(transitive)
+ Addedunescape@1.0.1(transitive)
+ Addedutility@1.18.0(transitive)