agents-bridge 0.2.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +3 -0
- package/README.md +2 -0
- package/config.example.json +6 -1
- package/config.multi-agent.example.json +6 -1
- package/dist/agents/cli-runner.d.ts +1 -0
- package/dist/agents/cli-runner.d.ts.map +1 -1
- package/dist/agents/cli-runner.js +9 -3
- package/dist/agents/cli-runner.js.map +1 -1
- package/dist/channels/botlink.d.ts.map +1 -1
- package/dist/channels/botlink.js +37 -1
- package/dist/channels/botlink.js.map +1 -1
- package/dist/cli/cmd-start.d.ts.map +1 -1
- package/dist/cli/cmd-start.js +186 -168
- package/dist/cli/cmd-start.js.map +1 -1
- package/dist/config/env-vars.d.ts +1 -0
- package/dist/config/env-vars.d.ts.map +1 -1
- package/dist/config/env-vars.js +1 -0
- package/dist/config/env-vars.js.map +1 -1
- package/dist/config/logging.d.ts +2 -0
- package/dist/config/logging.d.ts.map +1 -0
- package/dist/config/logging.js +2 -0
- package/dist/config/logging.js.map +1 -0
- package/dist/config/merge-config.d.ts.map +1 -1
- package/dist/config/merge-config.js +6 -3
- package/dist/config/merge-config.js.map +1 -1
- package/dist/config/zod-schema.d.ts +36 -0
- package/dist/config/zod-schema.d.ts.map +1 -1
- package/dist/config/zod-schema.js +10 -0
- package/dist/config/zod-schema.js.map +1 -1
- package/dist/dispatch/session-dispatch-queue.d.ts +31 -0
- package/dist/dispatch/session-dispatch-queue.d.ts.map +1 -0
- package/dist/dispatch/session-dispatch-queue.js +97 -0
- package/dist/dispatch/session-dispatch-queue.js.map +1 -0
- package/dist/logger.d.ts +41 -2
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +134 -13
- package/dist/logger.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-config.d.ts","sourceRoot":"","sources":["../../src/config/merge-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"merge-config.d.ts","sourceRoot":"","sources":["../../src/config/merge-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsCrG"}
|
|
@@ -27,10 +27,13 @@ export function mergeWithEnv(raw, env) {
|
|
|
27
27
|
channels.botlink = botlink;
|
|
28
28
|
merged.channels = channels;
|
|
29
29
|
}
|
|
30
|
-
// logging
|
|
31
|
-
if (env.logLevel) {
|
|
30
|
+
// logging overrides
|
|
31
|
+
if (env.logLevel || env.logRetentionDays) {
|
|
32
32
|
const logging = (merged.logging ?? {});
|
|
33
|
-
|
|
33
|
+
if (env.logLevel)
|
|
34
|
+
logging.level = env.logLevel;
|
|
35
|
+
if (env.logRetentionDays)
|
|
36
|
+
logging.retentionDays = Number(env.logRetentionDays);
|
|
34
37
|
merged.logging = logging;
|
|
35
38
|
}
|
|
36
39
|
// files.temp_dir override
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-config.js","sourceRoot":"","sources":["../../src/config/merge-config.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAA4B,EAAE,GAAiB;IAC1E,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;IAEnC,6BAA6B;IAC7B,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAA4B,CAAA;QACnE,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAA4B,CAAA;QACnE,MAAM,eAAe,GAAG,OAAO,CAAC,QAA+D,CAAA;QAC/F,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,cAAc,GAAG,CAAC,eAAe,CAAC,OAAO,IAAI,EAAE,CAA4B,CAAA;YACjF,IAAI,GAAG,CAAC,UAAU;gBAAE,cAAc,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU,CAAA;YAC/D,IAAI,GAAG,CAAC,QAAQ;gBAAE,cAAc,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAA;YACzD,eAAe,CAAC,OAAO,GAAG,cAAc,CAAA;YACxC,OAAO,CAAC,QAAQ,GAAG,eAAe,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,CAAC,UAAU;gBAAE,OAAO,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU,CAAA;YACxD,IAAI,GAAG,CAAC,QAAQ;gBAAE,OAAO,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAA;QACpD,CAAC;QACD,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAA;QAC1B,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"merge-config.js","sourceRoot":"","sources":["../../src/config/merge-config.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAA4B,EAAE,GAAiB;IAC1E,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;IAEnC,6BAA6B;IAC7B,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAA4B,CAAA;QACnE,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAA4B,CAAA;QACnE,MAAM,eAAe,GAAG,OAAO,CAAC,QAA+D,CAAA;QAC/F,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,cAAc,GAAG,CAAC,eAAe,CAAC,OAAO,IAAI,EAAE,CAA4B,CAAA;YACjF,IAAI,GAAG,CAAC,UAAU;gBAAE,cAAc,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU,CAAA;YAC/D,IAAI,GAAG,CAAC,QAAQ;gBAAE,cAAc,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAA;YACzD,eAAe,CAAC,OAAO,GAAG,cAAc,CAAA;YACxC,OAAO,CAAC,QAAQ,GAAG,eAAe,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,CAAC,UAAU;gBAAE,OAAO,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU,CAAA;YACxD,IAAI,GAAG,CAAC,QAAQ;gBAAE,OAAO,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAA;QACpD,CAAC;QACD,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAA;QAC1B,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED,oBAAoB;IACpB,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAA4B,CAAA;QACjE,IAAI,GAAG,CAAC,QAAQ;YAAE,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA;QAC9C,IAAI,GAAG,CAAC,gBAAgB;YAAE,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;QAC9E,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAED,0BAA0B;IAC1B,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAA4B,CAAA;QAC7D,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAA;QAC5B,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -1384,12 +1384,15 @@ export declare const FilesConfigSchema: z.ZodObject<{
|
|
|
1384
1384
|
export declare const LoggingConfigSchema: z.ZodObject<{
|
|
1385
1385
|
level: z.ZodDefault<z.ZodEnum<["trace", "debug", "info", "warn", "error", "fatal"]>>;
|
|
1386
1386
|
pretty: z.ZodDefault<z.ZodBoolean>;
|
|
1387
|
+
retentionDays: z.ZodDefault<z.ZodNumber>;
|
|
1387
1388
|
}, "strip", z.ZodTypeAny, {
|
|
1388
1389
|
level: "trace" | "debug" | "info" | "warn" | "error" | "fatal";
|
|
1389
1390
|
pretty: boolean;
|
|
1391
|
+
retentionDays: number;
|
|
1390
1392
|
}, {
|
|
1391
1393
|
level?: "trace" | "debug" | "info" | "warn" | "error" | "fatal" | undefined;
|
|
1392
1394
|
pretty?: boolean | undefined;
|
|
1395
|
+
retentionDays?: number | undefined;
|
|
1393
1396
|
}>;
|
|
1394
1397
|
export declare const SkillsConfigSchema: z.ZodObject<{
|
|
1395
1398
|
dirs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
@@ -1398,6 +1401,16 @@ export declare const SkillsConfigSchema: z.ZodObject<{
|
|
|
1398
1401
|
}, {
|
|
1399
1402
|
dirs?: string[] | undefined;
|
|
1400
1403
|
}>;
|
|
1404
|
+
export declare const ConcurrencyConfigSchema: z.ZodObject<{
|
|
1405
|
+
maxGlobal: z.ZodDefault<z.ZodNumber>;
|
|
1406
|
+
maxPerAgent: z.ZodDefault<z.ZodNumber>;
|
|
1407
|
+
}, "strip", z.ZodTypeAny, {
|
|
1408
|
+
maxGlobal: number;
|
|
1409
|
+
maxPerAgent: number;
|
|
1410
|
+
}, {
|
|
1411
|
+
maxGlobal?: number | undefined;
|
|
1412
|
+
maxPerAgent?: number | undefined;
|
|
1413
|
+
}>;
|
|
1401
1414
|
export declare const AppConfigSchema: z.ZodObject<{
|
|
1402
1415
|
channels: z.ZodObject<{
|
|
1403
1416
|
botlink: z.ZodEffects<z.ZodObject<{
|
|
@@ -2764,6 +2777,16 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
2764
2777
|
};
|
|
2765
2778
|
comment?: string | undefined;
|
|
2766
2779
|
}>, "many">>;
|
|
2780
|
+
concurrency: z.ZodDefault<z.ZodObject<{
|
|
2781
|
+
maxGlobal: z.ZodDefault<z.ZodNumber>;
|
|
2782
|
+
maxPerAgent: z.ZodDefault<z.ZodNumber>;
|
|
2783
|
+
}, "strip", z.ZodTypeAny, {
|
|
2784
|
+
maxGlobal: number;
|
|
2785
|
+
maxPerAgent: number;
|
|
2786
|
+
}, {
|
|
2787
|
+
maxGlobal?: number | undefined;
|
|
2788
|
+
maxPerAgent?: number | undefined;
|
|
2789
|
+
}>>;
|
|
2767
2790
|
skills: z.ZodDefault<z.ZodObject<{
|
|
2768
2791
|
dirs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
2769
2792
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -2784,12 +2807,15 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
2784
2807
|
logging: z.ZodDefault<z.ZodObject<{
|
|
2785
2808
|
level: z.ZodDefault<z.ZodEnum<["trace", "debug", "info", "warn", "error", "fatal"]>>;
|
|
2786
2809
|
pretty: z.ZodDefault<z.ZodBoolean>;
|
|
2810
|
+
retentionDays: z.ZodDefault<z.ZodNumber>;
|
|
2787
2811
|
}, "strip", z.ZodTypeAny, {
|
|
2788
2812
|
level: "trace" | "debug" | "info" | "warn" | "error" | "fatal";
|
|
2789
2813
|
pretty: boolean;
|
|
2814
|
+
retentionDays: number;
|
|
2790
2815
|
}, {
|
|
2791
2816
|
level?: "trace" | "debug" | "info" | "warn" | "error" | "fatal" | undefined;
|
|
2792
2817
|
pretty?: boolean | undefined;
|
|
2818
|
+
retentionDays?: number | undefined;
|
|
2793
2819
|
}>>;
|
|
2794
2820
|
}, "strip", z.ZodTypeAny, {
|
|
2795
2821
|
skills: {
|
|
@@ -2961,6 +2987,10 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
2961
2987
|
} | undefined;
|
|
2962
2988
|
}[] | undefined;
|
|
2963
2989
|
};
|
|
2990
|
+
concurrency: {
|
|
2991
|
+
maxGlobal: number;
|
|
2992
|
+
maxPerAgent: number;
|
|
2993
|
+
};
|
|
2964
2994
|
files: {
|
|
2965
2995
|
temp_dir: string;
|
|
2966
2996
|
max_file_size: number;
|
|
@@ -2968,6 +2998,7 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
2968
2998
|
logging: {
|
|
2969
2999
|
level: "trace" | "debug" | "info" | "warn" | "error" | "fatal";
|
|
2970
3000
|
pretty: boolean;
|
|
3001
|
+
retentionDays: number;
|
|
2971
3002
|
};
|
|
2972
3003
|
bindings?: {
|
|
2973
3004
|
agentId: string;
|
|
@@ -3165,6 +3196,10 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
3165
3196
|
};
|
|
3166
3197
|
comment?: string | undefined;
|
|
3167
3198
|
}[] | undefined;
|
|
3199
|
+
concurrency?: {
|
|
3200
|
+
maxGlobal?: number | undefined;
|
|
3201
|
+
maxPerAgent?: number | undefined;
|
|
3202
|
+
} | undefined;
|
|
3168
3203
|
files?: {
|
|
3169
3204
|
temp_dir?: string | undefined;
|
|
3170
3205
|
max_file_size?: number | undefined;
|
|
@@ -3172,6 +3207,7 @@ export declare const AppConfigSchema: z.ZodObject<{
|
|
|
3172
3207
|
logging?: {
|
|
3173
3208
|
level?: "trace" | "debug" | "info" | "warn" | "error" | "fatal" | undefined;
|
|
3174
3209
|
pretty?: boolean | undefined;
|
|
3210
|
+
retentionDays?: number | undefined;
|
|
3175
3211
|
} | undefined;
|
|
3176
3212
|
}>;
|
|
3177
3213
|
export type AppConfig = z.infer<typeof AppConfigSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod-schema.d.ts","sourceRoot":"","sources":["../../src/config/zod-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"zod-schema.d.ts","sourceRoot":"","sources":["../../src/config/zod-schema.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa1B,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
+
import { DEFAULT_LOG_RETENTION_DAYS } from './logging.js';
|
|
2
3
|
// ============================================================
|
|
3
4
|
// Botlink Channel Config
|
|
4
5
|
// ============================================================
|
|
@@ -194,6 +195,7 @@ export const FilesConfigSchema = z.object({
|
|
|
194
195
|
export const LoggingConfigSchema = z.object({
|
|
195
196
|
level: z.enum(['trace', 'debug', 'info', 'warn', 'error', 'fatal']).default('info'),
|
|
196
197
|
pretty: z.boolean().default(false),
|
|
198
|
+
retentionDays: z.number().int().positive().default(DEFAULT_LOG_RETENTION_DAYS),
|
|
197
199
|
});
|
|
198
200
|
// ============================================================
|
|
199
201
|
// Skills Config
|
|
@@ -202,6 +204,13 @@ export const SkillsConfigSchema = z.object({
|
|
|
202
204
|
dirs: z.array(z.string()).default(['./skills']),
|
|
203
205
|
});
|
|
204
206
|
// ============================================================
|
|
207
|
+
// Dispatch Concurrency Config
|
|
208
|
+
// ============================================================
|
|
209
|
+
export const ConcurrencyConfigSchema = z.object({
|
|
210
|
+
maxGlobal: z.number().int().positive().default(4),
|
|
211
|
+
maxPerAgent: z.number().int().positive().default(2),
|
|
212
|
+
});
|
|
213
|
+
// ============================================================
|
|
205
214
|
// Root Config Schema
|
|
206
215
|
// ============================================================
|
|
207
216
|
export const AppConfigSchema = z.object({
|
|
@@ -213,6 +222,7 @@ export const AppConfigSchema = z.object({
|
|
|
213
222
|
list: z.array(AgentConfigSchema).optional(),
|
|
214
223
|
}),
|
|
215
224
|
bindings: z.array(AgentBindingSchema).optional(),
|
|
225
|
+
concurrency: ConcurrencyConfigSchema.default({}),
|
|
216
226
|
skills: SkillsConfigSchema.default({}),
|
|
217
227
|
files: FilesConfigSchema.default({}),
|
|
218
228
|
logging: LoggingConfigSchema.default({}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod-schema.js","sourceRoot":"","sources":["../../src/config/zod-schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"zod-schema.js","sourceRoot":"","sources":["../../src/config/zod-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export interface DispatchConcurrencyLimits {
|
|
2
|
+
maxGlobal: number;
|
|
3
|
+
maxPerAgent: number;
|
|
4
|
+
}
|
|
5
|
+
export interface SessionDispatchTask {
|
|
6
|
+
sessionKey: string;
|
|
7
|
+
agentId: string;
|
|
8
|
+
/** Optional process-local mutex, used by runtimes that are not concurrency-safe. */
|
|
9
|
+
serialGroup?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Preserves arrival order within a session while allowing unrelated sessions
|
|
13
|
+
* to run concurrently under process-wide and per-agent limits.
|
|
14
|
+
*/
|
|
15
|
+
export declare class SessionDispatchQueue {
|
|
16
|
+
private limits;
|
|
17
|
+
private readonly sessionTails;
|
|
18
|
+
private readonly pendingCapacity;
|
|
19
|
+
private readonly activeByAgent;
|
|
20
|
+
private readonly activeSerialGroups;
|
|
21
|
+
private activeGlobal;
|
|
22
|
+
constructor(limits: DispatchConcurrencyLimits);
|
|
23
|
+
updateLimits(limits: DispatchConcurrencyLimits): void;
|
|
24
|
+
enqueue<T>(dispatch: SessionDispatchTask, task: (meta: {
|
|
25
|
+
queueWaitMs: number;
|
|
26
|
+
}) => Promise<T>): Promise<T>;
|
|
27
|
+
private acquireCapacity;
|
|
28
|
+
private drainCapacityQueue;
|
|
29
|
+
private canStart;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=session-dispatch-queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-dispatch-queue.d.ts","sourceRoot":"","sources":["../../src/dispatch/session-dispatch-queue.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAQD;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmC;IAChE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuB;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoB;IACvD,OAAO,CAAC,YAAY,CAAI;gBAEZ,MAAM,EAAE,yBAAyB;IAI7C,YAAY,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IAKrD,OAAO,CAAC,CAAC,EACP,QAAQ,EAAE,mBAAmB,EAC7B,IAAI,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,CAAC,CAAC,GAClD,OAAO,CAAC,CAAC,CAAC;IAyBb,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,QAAQ;CAMjB"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preserves arrival order within a session while allowing unrelated sessions
|
|
3
|
+
* to run concurrently under process-wide and per-agent limits.
|
|
4
|
+
*/
|
|
5
|
+
export class SessionDispatchQueue {
|
|
6
|
+
limits;
|
|
7
|
+
sessionTails = new Map();
|
|
8
|
+
pendingCapacity = [];
|
|
9
|
+
activeByAgent = new Map();
|
|
10
|
+
activeSerialGroups = new Set();
|
|
11
|
+
activeGlobal = 0;
|
|
12
|
+
constructor(limits) {
|
|
13
|
+
this.limits = validateLimits(limits);
|
|
14
|
+
}
|
|
15
|
+
updateLimits(limits) {
|
|
16
|
+
this.limits = validateLimits(limits);
|
|
17
|
+
this.drainCapacityQueue();
|
|
18
|
+
}
|
|
19
|
+
enqueue(dispatch, task) {
|
|
20
|
+
const queuedAt = Date.now();
|
|
21
|
+
const previous = this.sessionTails.get(dispatch.sessionKey) ?? Promise.resolve();
|
|
22
|
+
let releaseSession;
|
|
23
|
+
const current = new Promise((resolve) => {
|
|
24
|
+
releaseSession = resolve;
|
|
25
|
+
});
|
|
26
|
+
const tail = previous.catch(() => undefined).then(() => current);
|
|
27
|
+
this.sessionTails.set(dispatch.sessionKey, tail);
|
|
28
|
+
return (async () => {
|
|
29
|
+
await previous.catch(() => undefined);
|
|
30
|
+
const releaseCapacity = await this.acquireCapacity(dispatch.agentId, dispatch.serialGroup);
|
|
31
|
+
try {
|
|
32
|
+
return await task({ queueWaitMs: Date.now() - queuedAt });
|
|
33
|
+
}
|
|
34
|
+
finally {
|
|
35
|
+
releaseCapacity();
|
|
36
|
+
releaseSession();
|
|
37
|
+
if (this.sessionTails.get(dispatch.sessionKey) === tail) {
|
|
38
|
+
this.sessionTails.delete(dispatch.sessionKey);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
})();
|
|
42
|
+
}
|
|
43
|
+
acquireCapacity(agentId, serialGroup) {
|
|
44
|
+
return new Promise((resolve) => {
|
|
45
|
+
this.pendingCapacity.push({ agentId, serialGroup, resolve });
|
|
46
|
+
this.drainCapacityQueue();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
drainCapacityQueue() {
|
|
50
|
+
while (this.activeGlobal < this.limits.maxGlobal) {
|
|
51
|
+
const nextIndex = this.pendingCapacity.findIndex(waiter => this.canStart(waiter));
|
|
52
|
+
if (nextIndex === -1) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const [waiter] = this.pendingCapacity.splice(nextIndex, 1);
|
|
56
|
+
this.activeGlobal += 1;
|
|
57
|
+
this.activeByAgent.set(waiter.agentId, (this.activeByAgent.get(waiter.agentId) ?? 0) + 1);
|
|
58
|
+
if (waiter.serialGroup) {
|
|
59
|
+
this.activeSerialGroups.add(waiter.serialGroup);
|
|
60
|
+
}
|
|
61
|
+
let released = false;
|
|
62
|
+
waiter.resolve(() => {
|
|
63
|
+
if (released)
|
|
64
|
+
return;
|
|
65
|
+
released = true;
|
|
66
|
+
this.activeGlobal = Math.max(0, this.activeGlobal - 1);
|
|
67
|
+
const nextAgentCount = Math.max(0, (this.activeByAgent.get(waiter.agentId) ?? 1) - 1);
|
|
68
|
+
if (nextAgentCount === 0) {
|
|
69
|
+
this.activeByAgent.delete(waiter.agentId);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
this.activeByAgent.set(waiter.agentId, nextAgentCount);
|
|
73
|
+
}
|
|
74
|
+
if (waiter.serialGroup) {
|
|
75
|
+
this.activeSerialGroups.delete(waiter.serialGroup);
|
|
76
|
+
}
|
|
77
|
+
this.drainCapacityQueue();
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
canStart(waiter) {
|
|
82
|
+
if ((this.activeByAgent.get(waiter.agentId) ?? 0) >= this.limits.maxPerAgent) {
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
return !waiter.serialGroup || !this.activeSerialGroups.has(waiter.serialGroup);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
function validateLimits(limits) {
|
|
89
|
+
if (!Number.isInteger(limits.maxGlobal) || limits.maxGlobal < 1) {
|
|
90
|
+
throw new Error('concurrency.maxGlobal must be a positive integer');
|
|
91
|
+
}
|
|
92
|
+
if (!Number.isInteger(limits.maxPerAgent) || limits.maxPerAgent < 1) {
|
|
93
|
+
throw new Error('concurrency.maxPerAgent must be a positive integer');
|
|
94
|
+
}
|
|
95
|
+
return { ...limits };
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=session-dispatch-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-dispatch-queue.js","sourceRoot":"","sources":["../../src/dispatch/session-dispatch-queue.ts"],"names":[],"mappings":"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"}
|
package/dist/logger.d.ts
CHANGED
|
@@ -1,5 +1,44 @@
|
|
|
1
|
+
import { type DestinationStream } from 'pino';
|
|
1
2
|
import type { Logger } from './types/index.js';
|
|
2
|
-
export
|
|
3
|
-
|
|
3
|
+
export interface CleanupExpiredLogFilesOptions {
|
|
4
|
+
retentionDays?: number;
|
|
5
|
+
date?: Date;
|
|
6
|
+
logsDir?: string;
|
|
7
|
+
excludePaths?: ReadonlySet<string>;
|
|
8
|
+
}
|
|
9
|
+
export interface DailyRotatingDestinationOptions {
|
|
10
|
+
retentionDays?: number;
|
|
11
|
+
now?: () => Date;
|
|
12
|
+
logsDir?: string;
|
|
13
|
+
sync?: boolean;
|
|
14
|
+
onCleanupError?: (error: unknown) => void;
|
|
15
|
+
}
|
|
16
|
+
export interface CreateLoggerOptions extends Omit<DailyRotatingDestinationOptions, 'retentionDays'> {
|
|
17
|
+
stdoutDestination?: DestinationStream;
|
|
18
|
+
}
|
|
19
|
+
export declare function resolveLogFilePath(date?: Date, logsDir?: string): string;
|
|
20
|
+
/**
|
|
21
|
+
* Delete log files older than the configured age. A retention of N days keeps
|
|
22
|
+
* files dated today through today - N, matching the "older than N days" rule.
|
|
23
|
+
*/
|
|
24
|
+
export declare function cleanupExpiredLogFiles({ retentionDays, date, logsDir, excludePaths, }?: CleanupExpiredLogFilesOptions): string[];
|
|
25
|
+
export declare class DailyRotatingDestination implements DestinationStream {
|
|
26
|
+
private readonly retentionDays;
|
|
27
|
+
private readonly now;
|
|
28
|
+
private readonly logsDir;
|
|
29
|
+
private readonly sync;
|
|
30
|
+
private readonly onCleanupError;
|
|
31
|
+
private currentDay;
|
|
32
|
+
private currentFilePath;
|
|
33
|
+
private destination;
|
|
34
|
+
constructor({ retentionDays, now, logsDir, sync, onCleanupError, }?: DailyRotatingDestinationOptions);
|
|
35
|
+
write(message: string): void;
|
|
36
|
+
flushSync(): void;
|
|
37
|
+
end(): void;
|
|
38
|
+
private createDestination;
|
|
39
|
+
private rotate;
|
|
40
|
+
private runCleanup;
|
|
41
|
+
}
|
|
42
|
+
export declare function createLogger(level?: string, pretty?: boolean, retentionDays?: number, options?: CreateLoggerOptions): Logger;
|
|
4
43
|
export declare function getLogger(): Logger;
|
|
5
44
|
//# sourceMappingURL=logger.d.ts.map
|
package/dist/logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAEA,OAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,MAAM,CAAA;AAGnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAQ9C,MAAM,WAAW,6BAA6B;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CACnC;AAED,MAAM,WAAW,+BAA+B;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAC1C;AAED,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,+BAA+B,EAAE,eAAe,CAAC;IACjG,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACtC;AA6BD,wBAAgB,kBAAkB,CAAC,IAAI,OAAa,EAAE,OAAO,SAAgB,GAAG,MAAM,CAErF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,aAA0C,EAC1C,IAAiB,EACjB,OAAuB,EACvB,YAAgC,GACjC,GAAE,6BAAkC,GAAG,MAAM,EAAE,CAoB/C;AAED,qBAAa,wBAAyB,YAAW,iBAAiB;IAChE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IACzD,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,WAAW,CAAiB;gBAExB,EACV,aAA0C,EAC1C,GAAsB,EACtB,OAAuB,EACvB,IAAY,EACZ,cAAmC,GACpC,GAAE,+BAAoC;IAiBvC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAS5B,SAAS,IAAI,IAAI;IAIjB,GAAG,IAAI,IAAI;IAIX,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,MAAM;IAoBd,OAAO,CAAC,UAAU;CAYnB;AAED,wBAAgB,YAAY,CAC1B,KAAK,SAAS,EACd,MAAM,UAAQ,EACd,aAAa,SAA6B,EAC1C,OAAO,GAAE,mBAAwB,GAChC,MAAM,CA8BR;AAED,wBAAgB,SAAS,IAAI,MAAM,CAKlC"}
|
package/dist/logger.js
CHANGED
|
@@ -1,20 +1,141 @@
|
|
|
1
|
-
import { mkdirSync } from 'node:fs';
|
|
1
|
+
import { existsSync, mkdirSync, readdirSync, unlinkSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import pino from 'pino';
|
|
4
|
+
import { DEFAULT_LOG_RETENTION_DAYS } from './config/logging.js';
|
|
4
5
|
import { DATA_LOGS_DIR } from './config/paths.js';
|
|
5
6
|
let _logger = null;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
const LOG_FILE_PATTERN = /^agent-bridge-(\d{4}-\d{2}-\d{2})\.log$/;
|
|
8
|
+
function resolveLogDay(date) {
|
|
9
|
+
return date.toISOString().slice(0, 10);
|
|
10
|
+
}
|
|
11
|
+
function validateRetentionDays(retentionDays) {
|
|
12
|
+
if (!Number.isInteger(retentionDays) || retentionDays <= 0) {
|
|
13
|
+
throw new Error('logging.retentionDays must be a positive integer');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function isValidLogDay(day) {
|
|
17
|
+
const parsed = new Date(`${day}T00:00:00.000Z`);
|
|
18
|
+
return !Number.isNaN(parsed.getTime()) && resolveLogDay(parsed) === day;
|
|
19
|
+
}
|
|
20
|
+
function subtractUtcDays(date, days) {
|
|
21
|
+
const result = new Date(date);
|
|
22
|
+
result.setUTCHours(0, 0, 0, 0);
|
|
23
|
+
result.setUTCDate(result.getUTCDate() - days);
|
|
24
|
+
return result;
|
|
25
|
+
}
|
|
26
|
+
function reportCleanupError(error) {
|
|
27
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
28
|
+
process.stderr.write(`[agents-bridge] Failed to clean up expired log files: ${message}\n`);
|
|
29
|
+
}
|
|
30
|
+
export function resolveLogFilePath(date = new Date(), logsDir = DATA_LOGS_DIR) {
|
|
31
|
+
return join(logsDir, `agent-bridge-${resolveLogDay(date)}.log`);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Delete log files older than the configured age. A retention of N days keeps
|
|
35
|
+
* files dated today through today - N, matching the "older than N days" rule.
|
|
36
|
+
*/
|
|
37
|
+
export function cleanupExpiredLogFiles({ retentionDays = DEFAULT_LOG_RETENTION_DAYS, date = new Date(), logsDir = DATA_LOGS_DIR, excludePaths = new Set(), } = {}) {
|
|
38
|
+
validateRetentionDays(retentionDays);
|
|
39
|
+
if (!existsSync(logsDir))
|
|
40
|
+
return [];
|
|
41
|
+
const cutoffDay = resolveLogDay(subtractUtcDays(date, retentionDays));
|
|
42
|
+
const deletedPaths = [];
|
|
43
|
+
for (const entry of readdirSync(logsDir, { withFileTypes: true })) {
|
|
44
|
+
if (!entry.isFile())
|
|
45
|
+
continue;
|
|
46
|
+
const match = LOG_FILE_PATTERN.exec(entry.name);
|
|
47
|
+
const logDay = match?.[1];
|
|
48
|
+
if (!logDay || !isValidLogDay(logDay) || logDay >= cutoffDay)
|
|
49
|
+
continue;
|
|
50
|
+
const filePath = join(logsDir, entry.name);
|
|
51
|
+
if (excludePaths.has(filePath))
|
|
52
|
+
continue;
|
|
53
|
+
unlinkSync(filePath);
|
|
54
|
+
deletedPaths.push(filePath);
|
|
55
|
+
}
|
|
56
|
+
return deletedPaths;
|
|
57
|
+
}
|
|
58
|
+
export class DailyRotatingDestination {
|
|
59
|
+
retentionDays;
|
|
60
|
+
now;
|
|
61
|
+
logsDir;
|
|
62
|
+
sync;
|
|
63
|
+
onCleanupError;
|
|
64
|
+
currentDay;
|
|
65
|
+
currentFilePath;
|
|
66
|
+
destination;
|
|
67
|
+
constructor({ retentionDays = DEFAULT_LOG_RETENTION_DAYS, now = () => new Date(), logsDir = DATA_LOGS_DIR, sync = false, onCleanupError = reportCleanupError, } = {}) {
|
|
68
|
+
validateRetentionDays(retentionDays);
|
|
69
|
+
mkdirSync(logsDir, { recursive: true });
|
|
70
|
+
this.retentionDays = retentionDays;
|
|
71
|
+
this.now = now;
|
|
72
|
+
this.logsDir = logsDir;
|
|
73
|
+
this.sync = sync;
|
|
74
|
+
this.onCleanupError = onCleanupError;
|
|
75
|
+
const initialDate = this.now();
|
|
76
|
+
this.currentDay = resolveLogDay(initialDate);
|
|
77
|
+
this.currentFilePath = resolveLogFilePath(initialDate, this.logsDir);
|
|
78
|
+
this.runCleanup(initialDate);
|
|
79
|
+
this.destination = this.createDestination(this.currentFilePath);
|
|
80
|
+
}
|
|
81
|
+
write(message) {
|
|
82
|
+
const currentDate = this.now();
|
|
83
|
+
const nextDay = resolveLogDay(currentDate);
|
|
84
|
+
if (nextDay !== this.currentDay) {
|
|
85
|
+
this.rotate(currentDate, nextDay);
|
|
86
|
+
}
|
|
87
|
+
this.destination.write(message);
|
|
88
|
+
}
|
|
89
|
+
flushSync() {
|
|
90
|
+
this.destination.flushSync();
|
|
91
|
+
}
|
|
92
|
+
end() {
|
|
93
|
+
this.destination.end();
|
|
94
|
+
}
|
|
95
|
+
createDestination(filePath) {
|
|
96
|
+
return pino.destination({
|
|
97
|
+
dest: filePath,
|
|
98
|
+
mkdir: true,
|
|
99
|
+
sync: this.sync,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
rotate(currentDate, nextDay) {
|
|
103
|
+
const previousDestination = this.destination;
|
|
104
|
+
const previousFilePath = this.currentFilePath;
|
|
105
|
+
const nextFilePath = resolveLogFilePath(currentDate, this.logsDir);
|
|
106
|
+
const nextDestination = this.createDestination(nextFilePath);
|
|
107
|
+
this.destination = nextDestination;
|
|
108
|
+
this.currentDay = nextDay;
|
|
109
|
+
this.currentFilePath = nextFilePath;
|
|
110
|
+
previousDestination.once('close', () => {
|
|
111
|
+
this.runCleanup(currentDate);
|
|
112
|
+
});
|
|
113
|
+
previousDestination.end();
|
|
114
|
+
// Clean other expired files immediately. The just-closed file is excluded
|
|
115
|
+
// until its descriptor is fully closed, which also works on Windows.
|
|
116
|
+
this.runCleanup(currentDate, new Set([previousFilePath]));
|
|
117
|
+
}
|
|
118
|
+
runCleanup(date, excludePaths) {
|
|
119
|
+
try {
|
|
120
|
+
cleanupExpiredLogFiles({
|
|
121
|
+
retentionDays: this.retentionDays,
|
|
122
|
+
date,
|
|
123
|
+
logsDir: this.logsDir,
|
|
124
|
+
excludePaths,
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
this.onCleanupError(error);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
export function createLogger(level = 'info', pretty = false, retentionDays = DEFAULT_LOG_RETENTION_DAYS, options = {}) {
|
|
133
|
+
const { stdoutDestination: configuredStdoutDestination, ...fileOptions } = options;
|
|
134
|
+
const fileDestination = new DailyRotatingDestination({
|
|
135
|
+
...fileOptions,
|
|
136
|
+
retentionDays,
|
|
16
137
|
});
|
|
17
|
-
const stdoutDestination = pretty
|
|
138
|
+
const stdoutDestination = configuredStdoutDestination ?? (pretty
|
|
18
139
|
? pino.transport({
|
|
19
140
|
target: 'pino-pretty',
|
|
20
141
|
options: {
|
|
@@ -22,7 +143,7 @@ export function createLogger(level = 'info', pretty = false) {
|
|
|
22
143
|
translateTime: 'SYS:standard',
|
|
23
144
|
},
|
|
24
145
|
})
|
|
25
|
-
: pino.destination({ dest: 1, sync: false });
|
|
146
|
+
: pino.destination({ dest: 1, sync: false }));
|
|
26
147
|
const streams = [
|
|
27
148
|
{ stream: stdoutDestination },
|
|
28
149
|
{ stream: fileDestination },
|
package/dist/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,IAAgC,MAAM,MAAM,CAAA;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAGjD,IAAI,OAAO,GAAkB,IAAI,CAAA;AAEjC,MAAM,gBAAgB,GAAG,yCAAyC,CAAA;AAuBlE,SAAS,aAAa,CAAC,IAAU;IAC/B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,qBAAqB,CAAC,aAAqB;IAClD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACrE,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,gBAAgB,CAAC,CAAA;IAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,KAAK,GAAG,CAAA;AACzE,CAAC;AAED,SAAS,eAAe,CAAC,IAAU,EAAE,IAAY;IAC/C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC9B,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAA;IAC7C,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yDAAyD,OAAO,IAAI,CAAC,CAAA;AAC5F,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,EAAE,OAAO,GAAG,aAAa;IAC3E,OAAO,IAAI,CAAC,OAAO,EAAE,gBAAgB,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AACjE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,EACrC,aAAa,GAAG,0BAA0B,EAC1C,IAAI,GAAG,IAAI,IAAI,EAAE,EACjB,OAAO,GAAG,aAAa,EACvB,YAAY,GAAG,IAAI,GAAG,EAAU,MACC,EAAE;IACnC,qBAAqB,CAAC,aAAa,CAAC,CAAA;IACpC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAA;IAEnC,MAAM,SAAS,GAAG,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAA;IACrE,MAAM,YAAY,GAAa,EAAE,CAAA;IAEjC,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAAE,SAAQ;QAC7B,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;QACzB,IAAI,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,SAAS;YAAE,SAAQ;QAEtE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAC1C,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,SAAQ;QACxC,UAAU,CAAC,QAAQ,CAAC,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAED,MAAM,OAAO,wBAAwB;IAClB,aAAa,CAAQ;IACrB,GAAG,CAAY;IACf,OAAO,CAAQ;IACf,IAAI,CAAS;IACb,cAAc,CAA0B;IACjD,UAAU,CAAQ;IAClB,eAAe,CAAQ;IACvB,WAAW,CAAiB;IAEpC,YAAY,EACV,aAAa,GAAG,0BAA0B,EAC1C,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EACtB,OAAO,GAAG,aAAa,EACvB,IAAI,GAAG,KAAK,EACZ,cAAc,GAAG,kBAAkB,MACA,EAAE;QACrC,qBAAqB,CAAC,aAAa,CAAC,CAAA;QACpC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAEvC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QAEpC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC9B,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,CAAA;QAC5C,IAAI,CAAC,eAAe,GAAG,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QACpE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IACjE,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC9B,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,CAAC,CAAA;QAC1C,IAAI,OAAO,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;IAED,SAAS;QACP,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAA;IAC9B,CAAC;IAED,GAAG;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAA;IACxB,CAAC;IAEO,iBAAiB,CAAC,QAAgB;QACxC,OAAO,IAAI,CAAC,WAAW,CAAC;YACtB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAA;IACJ,CAAC;IAEO,MAAM,CAAC,WAAiB,EAAE,OAAe;QAC/C,MAAM,mBAAmB,GAAG,IAAI,CAAC,WAAW,CAAA;QAC5C,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAA;QAC7C,MAAM,YAAY,GAAG,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAClE,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;QAE5D,IAAI,CAAC,WAAW,GAAG,eAAe,CAAA;QAClC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAA;QACzB,IAAI,CAAC,eAAe,GAAG,YAAY,CAAA;QAEnC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;YACrC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QAC9B,CAAC,CAAC,CAAA;QACF,mBAAmB,CAAC,GAAG,EAAE,CAAA;QAEzB,0EAA0E;QAC1E,qEAAqE;QACrE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAEO,UAAU,CAAC,IAAU,EAAE,YAAkC;QAC/D,IAAI,CAAC;YACH,sBAAsB,CAAC;gBACrB,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,IAAI;gBACJ,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,YAAY;aACb,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;IACH,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAC1B,KAAK,GAAG,MAAM,EACd,MAAM,GAAG,KAAK,EACd,aAAa,GAAG,0BAA0B,EAC1C,UAA+B,EAAE;IAEjC,MAAM,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAA;IAClF,MAAM,eAAe,GAAG,IAAI,wBAAwB,CAAC;QACnD,GAAG,WAAW;QACd,aAAa;KACd,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,2BAA2B,IAAI,CAAC,MAAM;QAC9D,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YACf,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,aAAa,EAAE,cAAc;aAC9B;SACF,CAAC;QACF,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAC/C,MAAM,OAAO,GAAG;QACd,EAAE,MAAM,EAAE,iBAAiB,EAAE;QAC7B,EAAE,MAAM,EAAE,eAAe,EAAE;KAC5B,CAAA;IAED,OAAO,GAAG,IAAI,CACZ;QACE,KAAK;QACL,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;KAC3B,EACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAC1B,CAAA;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,YAAY,EAAE,CAAA;IAC1B,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|