electron-log
Advanced tools
Comparing version 1.0.1 to 1.0.2
31
index.js
@@ -6,2 +6,3 @@ 'use strict'; | ||
var util = require('util'); | ||
var EOL = require('os').EOL; | ||
@@ -60,4 +61,9 @@ | ||
function log(level, text) { | ||
if (typeof text !== 'string') { | ||
text = util.inspect(text); | ||
var args = Array.prototype.slice.call(arguments, 1); | ||
if (typeof text === 'string') { | ||
if (arguments.length > 2) { | ||
text = util.format.apply(util, args); | ||
} | ||
} else { | ||
text = args.map(util.inspect).join(EOL); | ||
} | ||
@@ -101,7 +107,13 @@ | ||
var text = format(msg, transportFile.format || module.exports.format); | ||
var eol = process.platform === 'win32' ? '\r\n' : '\n'; | ||
if (!transportFile.stream) { | ||
if (undefined === transportFile.stream) { | ||
transportFile.file = transportFile.file || findLogPath(); | ||
if (!transportFile.file) { | ||
transportFile.stream = false; | ||
log('warning', 'electron-log.transports.file: Could not set a log file'); | ||
return; | ||
} | ||
transportFile.stream = fs.createWriteStream( | ||
transportFile.file || findLogPath(), | ||
transportFile.file, | ||
transportFile.streamConfig || { flags: 'a' } | ||
@@ -111,3 +123,7 @@ ); | ||
transportFile.stream.write(text + eol); | ||
if (!transportFile.stream) { | ||
return; | ||
} | ||
transportFile.stream.write(text + EOL); | ||
} | ||
@@ -160,2 +176,3 @@ // endregion transport | ||
function prepareDir(path, appName) { | ||
// jshint -W040 | ||
if (!this || this.or !== prepareDir || !this.result) { | ||
@@ -162,0 +179,0 @@ if (!path) { |
{ | ||
"name": "electron-log", | ||
"version": "1.0.1", | ||
"version": "1.0.2", | ||
"description": "Just a very simple logging module for your Electron application", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -10,5 +10,5 @@ # electron-log | ||
* **on Linux:** ~/.cache/<app name>/log.log | ||
* **on OS X:** ~/Library/Caches/<app name>/log.log | ||
* **on Windows:** $HOME/AppData/Roaming/<app name>/log.log | ||
* **on Linux:** `~/.cache/<app name>/log.log` | ||
* **on OS X:** `~/Library/Caches/<app name>/log.log` | ||
* **on Windows:** `$HOME/AppData/Roaming/<app name>/log.log` | ||
@@ -23,7 +23,8 @@ ## Installation | ||
javascript | ||
var log = require('electron-log'); | ||
```js | ||
var log = require('electron-log'); | ||
log.info('Hello, log'); | ||
``` | ||
log.info('Hello, log'); | ||
@@ -37,43 +38,51 @@ ### Transport | ||
log.transport.file = false; | ||
log.transport.console = false; | ||
```js | ||
log.transport.file = false; | ||
log.transport.console = false; | ||
``` | ||
#### Override transport: | ||
log.transports.console = function(msg) { | ||
console.log(`[${msg.date.toLocaleTimeString()} ${msg.level}] ${msg.text}`); | ||
}; | ||
```js | ||
log.transports.console = function(msg) { | ||
console.log(`[${msg.date.toLocaleTimeString()} ${msg.level}] ${msg.text}`); | ||
}; | ||
``` | ||
#### Console Transport | ||
// Log level | ||
log.transports.console.level = 'warning'; | ||
```js | ||
// Log level | ||
log.transports.console.level = 'warning'; | ||
/** | ||
* Set output format template. Available variables: | ||
* Main: {level}, {text} | ||
* Date: {y},{m},{d},{h},{i},{s},{ms} | ||
*/ | ||
log.transports.console.format = '{h}:{i}:{s}:{ms} {text}'; | ||
// Set a function which formats output | ||
log.transports.console.format = (msg) => msg.text; | ||
``` | ||
/** | ||
* Set output format template. Available variables: | ||
* Main: {level}, {text} | ||
* Date: {y},{m},{d},{h},{i},{s},{ms} | ||
*/ | ||
log.transports.console.format = '{h}:{i}:{s}:{ms} {text}'; | ||
// Set a function which formats output | ||
log.transports.console.format = (msg) => msg.text; | ||
#### File transport | ||
// Same as for console transport | ||
log.transports.file.level = 'warning'; | ||
log.transports.file.format = '{h}:{i}:{s}:{ms} {text}'; | ||
// Write to this file, must be set before first logging | ||
log.transports.file.file = __dirname + '/log.txt'; | ||
// fs.createWriteStream options, must be set before first logging | ||
log.transports.file.streamConfig = { flags: 'w' }; | ||
// set existed file stream | ||
log.transports.file.stream = fs.createWriteStream('log.txt'); | ||
```js | ||
// Same as for console transport | ||
log.transports.file.level = 'warning'; | ||
log.transports.file.format = '{h}:{i}:{s}:{ms} {text}'; | ||
// Write to this file, must be set before first logging | ||
log.transports.file.file = __dirname + '/log.txt'; | ||
// fs.createWriteStream options, must be set before first logging | ||
log.transports.file.streamConfig = { flags: 'w' }; | ||
// set existed file stream | ||
log.transports.file.stream = fs.createWriteStream('log.txt'); | ||
``` | ||
## License | ||
Licensed under MIT. |
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
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
15943
301
86