aboutsummaryrefslogtreecommitdiff
path: root/deno/base
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-06-14 01:21:11 +0800
committerYuqian Yang <crupest@crupest.life>2025-06-14 02:50:24 +0800
commit6e2894f2c917dfe6c5a03e6453be292118f4ef00 (patch)
treef2fa78e2669ba38fadc88f1b1f33dcbca52335b2 /deno/base
parent8fe85fccf3881114202301ac986073564d5abd3f (diff)
downloadcrupest-6e2894f2c917dfe6c5a03e6453be292118f4ef00.tar.gz
crupest-6e2894f2c917dfe6c5a03e6453be292118f4ef00.tar.bz2
crupest-6e2894f2c917dfe6c5a03e6453be292118f4ef00.zip
deno(mail-server): rename Logger and revise service creation.
Diffstat (limited to 'deno/base')
-rw-r--r--deno/base/log.ts23
1 files changed, 6 insertions, 17 deletions
diff --git a/deno/base/log.ts b/deno/base/log.ts
index 403b9ce..bfd5fae 100644
--- a/deno/base/log.ts
+++ b/deno/base/log.ts
@@ -6,20 +6,12 @@ export interface ExternalLogStream extends Disposable {
stream: WritableStream;
}
-export class Logger {
- #externalLogDir?: string;
+export class LogFileProvider {
+ #directory: string;
- get externalLogDir() {
- return this.#externalLogDir;
- }
-
- set externalLogDir(value: string | undefined) {
- this.#externalLogDir = value;
- if (value != null) {
- Deno.mkdirSync(value, {
- recursive: true,
- });
- }
+ constructor(directory: string) {
+ this.#directory = directory;
+ Deno.mkdirSync(directory, { recursive: true });
}
async createExternalLogStream(
@@ -31,12 +23,9 @@ export class Logger {
if (name.includes("/")) {
throw new Error(`External log stream's name (${name}) contains '/'.`);
}
- if (this.#externalLogDir == null) {
- throw new Error("External log directory is not set.");
- }
const logPath = join(
- this.#externalLogDir,
+ this.#directory,
options?.noTime === true
? name
: `${name}-${toFileNameString(new Date())}`,