|
@@ -26,6 +26,14 @@ export class HomeServer implements HomeServerInterface {
|
|
private serverInstance: http.Server | undefined
|
|
private serverInstance: http.Server | undefined
|
|
private authService: AuthServiceInterface | undefined
|
|
private authService: AuthServiceInterface | undefined
|
|
private logStream: PassThrough | undefined
|
|
private logStream: PassThrough | undefined
|
|
|
|
+ private readonly loggerNames = [
|
|
|
|
+ 'auth-server',
|
|
|
|
+ 'syncing-server',
|
|
|
|
+ 'revisions-server',
|
|
|
|
+ 'files-server',
|
|
|
|
+ 'api-gateway',
|
|
|
|
+ 'home-server',
|
|
|
|
+ ]
|
|
|
|
|
|
async start(configuration: HomeServerConfiguration): Promise<Result<string>> {
|
|
async start(configuration: HomeServerConfiguration): Promise<Result<string>> {
|
|
try {
|
|
try {
|
|
@@ -165,15 +173,19 @@ export class HomeServer implements HomeServerInterface {
|
|
return Result.fail('Home server is not running.')
|
|
return Result.fail('Home server is not running.')
|
|
}
|
|
}
|
|
|
|
|
|
- this.serverInstance.close()
|
|
|
|
- this.serverInstance.unref()
|
|
|
|
-
|
|
|
|
- this.serverInstance = undefined
|
|
|
|
|
|
+ for (const loggerName of this.loggerNames) {
|
|
|
|
+ winston.loggers.close(loggerName)
|
|
|
|
+ }
|
|
|
|
|
|
if (this.logStream) {
|
|
if (this.logStream) {
|
|
this.logStream.end()
|
|
this.logStream.end()
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ this.serverInstance.close()
|
|
|
|
+ this.serverInstance.unref()
|
|
|
|
+
|
|
|
|
+ this.serverInstance = undefined
|
|
|
|
+
|
|
return Result.ok('Server stopped.')
|
|
return Result.ok('Server stopped.')
|
|
} catch (error) {
|
|
} catch (error) {
|
|
return Result.fail((error as Error).message)
|
|
return Result.fail((error as Error).message)
|
|
@@ -207,14 +219,7 @@ export class HomeServer implements HomeServerInterface {
|
|
|
|
|
|
const level = env.get('LOG_LEVEL', true) || 'info'
|
|
const level = env.get('LOG_LEVEL', true) || 'info'
|
|
|
|
|
|
- for (const loggerName of [
|
|
|
|
- 'auth-server',
|
|
|
|
- 'syncing-server',
|
|
|
|
- 'revisions-server',
|
|
|
|
- 'files-server',
|
|
|
|
- 'api-gateway',
|
|
|
|
- 'home-server',
|
|
|
|
- ]) {
|
|
|
|
|
|
+ for (const loggerName of this.loggerNames) {
|
|
winston.loggers.add(loggerName, {
|
|
winston.loggers.add(loggerName, {
|
|
level,
|
|
level,
|
|
format: winston.format.combine(...winstonFormatters),
|
|
format: winston.format.combine(...winstonFormatters),
|