diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2022-09-18 23:07:41 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2022-09-18 23:07:41 +0900 |
| commit | dd35f2cce6789ce8a0cdf15f0db86506efb07a8f (patch) | |
| tree | c3a955c056969eb2f1ca45adc584308b75f34cbb /packages/backend/src/core/LoggerService.ts | |
| parent | fix(backend): サービスが二重にインスタンス化されるのを修正 (diff) | |
| download | sharkey-dd35f2cce6789ce8a0cdf15f0db86506efb07a8f.tar.gz sharkey-dd35f2cce6789ce8a0cdf15f0db86506efb07a8f.tar.bz2 sharkey-dd35f2cce6789ce8a0cdf15f0db86506efb07a8f.zip | |
refactor(backend): refactor logger
Diffstat (limited to 'packages/backend/src/core/LoggerService.ts')
| -rw-r--r-- | packages/backend/src/core/LoggerService.ts | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/packages/backend/src/core/LoggerService.ts b/packages/backend/src/core/LoggerService.ts new file mode 100644 index 0000000000..d844b38841 --- /dev/null +++ b/packages/backend/src/core/LoggerService.ts @@ -0,0 +1,33 @@ +import { Inject, Injectable } from '@nestjs/common'; +import * as SyslogPro from 'syslog-pro'; +import { DI } from '@/di-symbols.js'; +import { Config } from '@/config.js'; +import Logger from '@/logger.js'; + +@Injectable() +export class LoggerService { + #syslogClient; + + constructor( + @Inject(DI.config) + private config: Config, + ) { + if (this.config.syslog) { + this.#syslogClient = new SyslogPro.RFC5424({ + applacationName: 'Misskey', + timestamp: true, + encludeStructuredData: true, + color: true, + extendedColor: true, + server: { + target: config.syslog.host, + port: config.syslog.port, + }, + }); + } + } + + public getLogger(domain: string, color?: string | undefined, store?: boolean) { + return new Logger(domain, color, store, this.#syslogClient); + } +} |