Centralize log file and refactor desktop logging
- Migrate to `electron-log` v5.X.X, centralizing log files to adhere to best-practices. - Add critical event logging in the log file. - Replace `ElectronLog` type with `LogFunctions` for better abstraction. - Unify log handling in `desktop-runtime-error` by removing `renderer.log` due to `electron-log` v5 changes. - Update and extend logger interfaces, removing 'I' prefix and adding common log levels to abstract `electron-log` completely. - Move logger interfaces to the application layer as it's cross-cutting concern, meanwhile keeping the implementations in the infrastructure layer. - Introduce `useLogger` hook for easier logging in Vue components. - Simplify `WindowVariables` by removing nullable properties. - Improve documentation to clearly differentiate between desktop and web versions, outlining specific features of each.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { OperatingSystem } from '@/domain/OperatingSystem';
|
||||
import { ILogger } from '@/infrastructure/Log/ILogger';
|
||||
import { Logger } from '@/application/Common/Log/Logger';
|
||||
import { ISystemOperations } from '@/infrastructure/SystemOperations/ISystemOperations';
|
||||
import { WindowVariables } from '@/infrastructure/WindowVariables/WindowVariables';
|
||||
import { SystemOperationsStub } from './SystemOperationsStub';
|
||||
@@ -8,18 +8,18 @@ import { LoggerStub } from './LoggerStub';
|
||||
export class WindowVariablesStub implements WindowVariables {
|
||||
public system?: ISystemOperations = new SystemOperationsStub();
|
||||
|
||||
public isDesktop? = false;
|
||||
public isDesktop = false;
|
||||
|
||||
public os?: OperatingSystem = OperatingSystem.BlackBerryOS;
|
||||
|
||||
public log?: ILogger = new LoggerStub();
|
||||
public log: Logger = new LoggerStub();
|
||||
|
||||
public withLog(log?: ILogger): this {
|
||||
public withLog(log: Logger): this {
|
||||
this.log = log;
|
||||
return this;
|
||||
}
|
||||
|
||||
public withIsDesktop(value?: boolean): this {
|
||||
public withIsDesktop(value: boolean): this {
|
||||
this.isDesktop = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user