Skip to content

Commit 8acd208

Browse files
committed
1 parent a356803 commit 8acd208

1 file changed

Lines changed: 17 additions & 16 deletions

File tree

src/vs/platform/log/node/spdlogService.ts

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ export class SpdLogService extends AbstractLogService implements ILogService {
4747
_serviceBrand: any;
4848

4949
private buffer: ILog[] = [];
50-
private _loggerPromise: Promise<spdlog.RotatingLogger | null> | undefined = undefined;
50+
private _loggerCreationPromise: Promise<void> | undefined = undefined;
5151
private _logger: spdlog.RotatingLogger | undefined;
5252

5353
constructor(private readonly name: string, private readonly logsFolder: string, level: LogLevel) {
@@ -61,20 +61,21 @@ export class SpdLogService extends AbstractLogService implements ILogService {
6161
}));
6262
}
6363

64-
private _createSpdLogLogger() {
65-
if (!this._loggerPromise) {
66-
this._loggerPromise = createSpdLogLogger(this.name, this.logsFolder);
67-
this._loggerPromise.then(logger => {
68-
if (logger) {
69-
this._logger = logger;
70-
this._logger.setLevel(this.getLevel());
71-
for (const { level, message } of this.buffer) {
72-
log(this._logger, level, message);
64+
private _createSpdLogLogger(): Promise<void> {
65+
if (!this._loggerCreationPromise) {
66+
this._loggerCreationPromise = createSpdLogLogger(this.name, this.logsFolder)
67+
.then(logger => {
68+
if (logger) {
69+
this._logger = logger;
70+
this._logger.setLevel(this.getLevel());
71+
for (const { level, message } of this.buffer) {
72+
log(this._logger, level, message);
73+
}
74+
this.buffer = [];
7375
}
74-
}
75-
});
76+
});
7677
}
77-
this.buffer = [];
78+
return this._loggerCreationPromise;
7879
}
7980

8081
private _log(level: LogLevel, message: string): void {
@@ -132,10 +133,10 @@ export class SpdLogService extends AbstractLogService implements ILogService {
132133
dispose(): void {
133134
if (this._logger) {
134135
this.disposeLogger();
135-
} else if (this._loggerPromise) {
136-
this._loggerPromise.then(() => this.disposeLogger());
136+
} else if (this._loggerCreationPromise) {
137+
this._loggerCreationPromise.then(() => this.disposeLogger());
137138
}
138-
this._loggerPromise = undefined;
139+
this._loggerCreationPromise = undefined;
139140
}
140141

141142
private disposeLogger(): void {

0 commit comments

Comments
 (0)