diff options
Diffstat (limited to 'packages/main/src')
-rw-r--r-- | packages/main/src/controllers/config.ts | 2 | ||||
-rw-r--r-- | packages/main/src/utils/logging.ts | 28 |
2 files changed, 7 insertions, 23 deletions
diff --git a/packages/main/src/controllers/config.ts b/packages/main/src/controllers/config.ts index 7187ab4..564658b 100644 --- a/packages/main/src/controllers/config.ts +++ b/packages/main/src/controllers/config.ts | |||
@@ -70,7 +70,7 @@ export async function initConfig( | |||
70 | logger.info('Config file was not found'); | 70 | logger.info('Config file was not found'); |
71 | try { | 71 | try { |
72 | await writeConfig(); | 72 | await writeConfig(); |
73 | logger.info('Created config file'); | 73 | logger.success('Created config file'); |
74 | } catch (err) { | 74 | } catch (err) { |
75 | logger.error('Failed to initialize config'); | 75 | logger.error('Failed to initialize config'); |
76 | } | 76 | } |
diff --git a/packages/main/src/utils/logging.ts b/packages/main/src/utils/logging.ts index 9f1133f..66f9068 100644 --- a/packages/main/src/utils/logging.ts +++ b/packages/main/src/utils/logging.ts | |||
@@ -18,32 +18,16 @@ | |||
18 | * SPDX-License-Identifier: AGPL-3.0-only | 18 | * SPDX-License-Identifier: AGPL-3.0-only |
19 | */ | 19 | */ |
20 | 20 | ||
21 | import loglevel, { Logger } from 'loglevel'; | 21 | import consola, { BasicReporter, Consola } from 'consola'; |
22 | import prefix from 'loglevel-plugin-prefix'; | ||
23 | 22 | ||
24 | const isDevelopment = import.meta.env.MODE === 'development'; | 23 | const isDevelopment = import.meta.env.MODE === 'development'; |
25 | 24 | ||
26 | if (isDevelopment) { | 25 | if (isDevelopment) { |
27 | loglevel.enableAll(); | 26 | // No fancy console in dev mode. |
27 | consola.setReporters([new BasicReporter()]); | ||
28 | consola.level = 4; | ||
28 | } | 29 | } |
29 | 30 | ||
30 | prefix.reg(loglevel); | 31 | export function getLogger(loggerName: string): Consola { |
31 | prefix.apply(loglevel, { | 32 | return consola.withTag(`sophie:${loggerName}`); |
32 | format(level, name, timestamp) { | ||
33 | let shortName = 'global'; | ||
34 | if (name !== undefined) { | ||
35 | const nameSegments = name.split(':'); | ||
36 | const lastSegment = nameSegments.pop(); | ||
37 | shortName = [...nameSegments.map((segment) => segment[0]), lastSegment].join(':'); | ||
38 | } | ||
39 | if (isDevelopment) { | ||
40 | // `watch.js` already appends timestamps. | ||
41 | return `${level} (${shortName})`; | ||
42 | } | ||
43 | return `[${timestamp}] ${level} (${shortName})`; | ||
44 | }, | ||
45 | }); | ||
46 | |||
47 | export function getLogger(loggerName: string): Logger { | ||
48 | return loglevel.getLogger(`sophie:${loggerName}`); | ||
49 | } | 33 | } |