electron-log
Advanced tools
Comparing version 3.0.0 to 3.0.1
@@ -21,6 +21,25 @@ export type ILogLevel = "error" | "warn" | "info" | "verbose" | "debug" | | ||
export interface ILogMessage { | ||
/** | ||
* Any arguments passed to a log function | ||
*/ | ||
data: any[]; | ||
/** | ||
* When the log entry was created | ||
*/ | ||
date: Date; | ||
/** | ||
* From error to silly | ||
*/ | ||
level: ILogLevel; | ||
/** | ||
* CSS like strings, eg ["color: red"] | ||
*/ | ||
styles: string[]; | ||
/** | ||
* Variables used by formatter | ||
*/ | ||
variables?: IVariables; | ||
@@ -31,2 +50,6 @@ } | ||
(msg: ILogMessage): void; | ||
/** | ||
* Messages with level lower than will be dropped | ||
*/ | ||
level: ILevelOption; | ||
@@ -36,2 +59,5 @@ } | ||
export interface IConsoleTransport extends ITransport { | ||
/** | ||
* String template of function for message serialization | ||
*/ | ||
format: IFormat | string; | ||
@@ -41,37 +67,149 @@ } | ||
export interface IFileTransport extends ITransport { | ||
/** | ||
* Determines a location of log file, something like | ||
* ~/.config/<app name>/log.log depending on OS. By default electron-log | ||
* reads this value from name or productName value in package.json. In most | ||
* cases you should keep a default value | ||
*/ | ||
appName?: string; | ||
/** | ||
* Function which is called on log rotation. You can override it if you need | ||
* custom log rotation behavior. This function should remove old file | ||
* synchronously | ||
*/ | ||
archiveLog: (oldLogPath: string) => void; | ||
/** | ||
* How much bytes were written since transport initialization | ||
*/ | ||
bytesWritten: number; | ||
/** | ||
* The full log file path. I can recommend to change this value only if | ||
* you strongly understand what are you doing. If set, appName and fileName | ||
* options are ignored | ||
*/ | ||
file?: string; | ||
/** | ||
* Filename without path, log.log by default | ||
*/ | ||
fileName: string; | ||
/** | ||
* String template of function for message serialization | ||
*/ | ||
format: IFormat | string; | ||
/** | ||
* Maximum size of log file in bytes, 1048576 (1mb) by default. When a log | ||
* file exceeds this limit, it will be moved to log.old.log file and the | ||
* current file will be cleared. You can set it to 0 to disable rotation | ||
*/ | ||
maxSize: number; | ||
/** | ||
* Whether to write a log file synchronously. Default to true | ||
*/ | ||
sync: boolean; | ||
/** | ||
* Options used when writing a file | ||
*/ | ||
writeOptions?: { | ||
/** | ||
* Default 'a' | ||
*/ | ||
flag?: IFOpenFlags; | ||
/** | ||
* Default 0666 | ||
*/ | ||
mode?: number; | ||
/** | ||
* Default 'utf8' | ||
*/ | ||
encoding?: string; | ||
}; | ||
clear(); | ||
/** | ||
* Clear the current log file | ||
*/ | ||
clear(): void; | ||
/** | ||
* Return full path of the current log file | ||
*/ | ||
findLogPath(appName?: string, fileName?: string): string; | ||
init(); | ||
/** | ||
* In most cases, you don't need to call it manually. Try to call only if | ||
* you change appName, file or fileName property, but it has no effect. | ||
*/ | ||
init(): void; | ||
} | ||
export interface IRemoteTransport extends ITransport { | ||
client: object; | ||
depth: number; | ||
url?: string; | ||
/** | ||
* Client information which will be sent in each request together with | ||
* a message body | ||
*/ | ||
client?: object; | ||
/** | ||
* How deep to serialize complex objects | ||
*/ | ||
depth?: number; | ||
/** | ||
* Server URL | ||
*/ | ||
url: string; | ||
} | ||
declare interface ITransports { | ||
/** | ||
* Writes logs to console | ||
*/ | ||
console: IConsoleTransport; | ||
/** | ||
* Writes logs to a file | ||
*/ | ||
file: IFileTransport; | ||
mainConsole?: ITransport; | ||
/** | ||
* When logging inside renderer process, it shows log in application console | ||
* too. This transport can impact on performance, so it's disabled by default | ||
* for packaged application. | ||
*/ | ||
mainConsole: ITransport | null; | ||
/** | ||
* Sends a JSON POST request with ILogMessage in the body to the specified url | ||
*/ | ||
remote: IRemoteTransport; | ||
rendererConsole?: ITransport; | ||
[key: string]: ITransport; | ||
/** | ||
* When logging inside main process, it shows log in DevTools console too. | ||
* This transport can impact on performance, so it's disabled by default for | ||
* packaged application | ||
*/ | ||
rendererConsole: ITransport | null; | ||
[key: string]: ITransport | null; | ||
} | ||
declare interface ICatchErrorsOptions { | ||
/** | ||
* Default true for the main process. Set it to false to prevent showing a | ||
* default electron error dialog | ||
*/ | ||
showDialog?: boolean; | ||
/** | ||
* Attach a custom error handler. If the handler returns false, this error | ||
* will not be processed | ||
*/ | ||
onError?(error: Error): void; | ||
@@ -81,23 +219,86 @@ } | ||
declare interface IElectronLog { | ||
/** | ||
* Transport instances | ||
*/ | ||
transports: ITransports; | ||
/** | ||
* Array with all attached hooks | ||
*/ | ||
hooks: IHook[]; | ||
/** | ||
* Array with all available levels | ||
*/ | ||
levels: ILevels; | ||
/** | ||
* Variables used by formatters | ||
*/ | ||
variables: IVariables; | ||
/** | ||
* Catch and log unhandled errors/rejected promises | ||
*/ | ||
catchErrors(options?: ICatchErrorsOptions): void | false; | ||
/** | ||
* Log an error message | ||
*/ | ||
error(...params: any[]): void; | ||
/** | ||
* Log a warning message | ||
*/ | ||
warn(...params: any[]): void; | ||
/** | ||
* Log an informational message | ||
*/ | ||
info(...params: any[]): void; | ||
/** | ||
* Log a verbose message | ||
*/ | ||
verbose(...params: any[]): void; | ||
/** | ||
* Log a debug message | ||
*/ | ||
debug(...params: any[]): void; | ||
/** | ||
* Log a silly message | ||
*/ | ||
silly(...params: any[]): void; | ||
/** | ||
* Shortcut to info | ||
*/ | ||
log(...params: any[]): void; | ||
} | ||
/** | ||
* Transport instances | ||
*/ | ||
export declare const transports: ITransports; | ||
/** | ||
* Array with all attached hooks | ||
*/ | ||
export declare const hooks: IHook[]; | ||
/** | ||
* Array with all available levels | ||
*/ | ||
export declare const levels: ILevels; | ||
/** | ||
* Variables used by formatters | ||
*/ | ||
export declare const variables: IVariables; | ||
/** | ||
* Catch and log unhandled errors/rejected promises | ||
*/ | ||
export declare function catchErrors( | ||
@@ -107,8 +308,35 @@ options?: ICatchErrorsOptions, | ||
/** | ||
* Log an error message | ||
*/ | ||
export declare function error(...params: any[]): void; | ||
/** | ||
* Log a warning message | ||
*/ | ||
export declare function warn(...params: any[]): void; | ||
/** | ||
* Log an informational message | ||
*/ | ||
export declare function info(...params: any[]): void; | ||
/** | ||
* Log a verbose message | ||
*/ | ||
export declare function verbose(...params: any[]): void; | ||
/** | ||
* Log a debug message | ||
*/ | ||
export declare function debug(...params: any[]): void; | ||
/** | ||
* Log a silly message | ||
*/ | ||
export declare function silly(...params: any[]): void; | ||
/** | ||
* Shortcut to info | ||
*/ | ||
export declare function log(...params: any[]): void; | ||
@@ -115,0 +343,0 @@ |
{ | ||
"name": "electron-log", | ||
"version": "3.0.0", | ||
"version": "3.0.1", | ||
"description": "Just a very simple logging module for your Electron application", | ||
@@ -11,3 +11,3 @@ "main": "index.js", | ||
"test-projects": "mocha 'test-projects/**/*.spec.js'", | ||
"tslint": "tslint electron-log.d.ts" | ||
"tslint": "tslint -p . -t verbose electron-log.d.ts" | ||
}, | ||
@@ -14,0 +14,0 @@ "typings": "electron-log.d.ts", |
@@ -18,7 +18,2 @@ # electron-log | ||
Documentation on this page is for v3.0.0 beta version, which will be released | ||
in January. Documentation for v2.2.17 is | ||
[here](https://github.com/megahertz/electron-log/tree/v2.2.17) and | ||
[here is a migration guide](doc/migrate-v3.md). | ||
## Installation | ||
@@ -29,7 +24,3 @@ | ||
npm install electron-log | ||
Install v3 beta version: | ||
npm install electron-log@beta | ||
## Usage | ||
@@ -44,2 +35,8 @@ | ||
### electron-log v2.x | ||
Documentation for | ||
[v2.x is here](https://github.com/megahertz/electron-log/tree/v2.2.17). | ||
Read [the migration guide](doc/migrate-v3.md) to update to v3.x | ||
### Log levels | ||
@@ -46,0 +43,0 @@ |
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
37286
1062
165