aboutsummaryrefslogtreecommitdiff
path: root/deno/base/log.ts
diff options
context:
space:
mode:
Diffstat (limited to 'deno/base/log.ts')
-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())}`,