@a5c-ai/agent-mux-observability 0.4.0
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/dist/index-simple.d.ts +12 -0
- package/dist/index-simple.d.ts.map +1 -0
- package/dist/index-simple.js +23 -0
- package/dist/index-simple.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +85 -0
- package/dist/index.js.map +1 -0
- package/dist/logger-simple.d.ts +18 -0
- package/dist/logger-simple.d.ts.map +1 -0
- package/dist/logger-simple.js +127 -0
- package/dist/logger-simple.js.map +1 -0
- package/dist/logger.d.ts +51 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +205 -0
- package/dist/logger.js.map +1 -0
- package/dist/telemetry-simple.d.ts +31 -0
- package/dist/telemetry-simple.d.ts.map +1 -0
- package/dist/telemetry-simple.js +87 -0
- package/dist/telemetry-simple.js.map +1 -0
- package/dist/telemetry.d.ts +137 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +313 -0
- package/dist/telemetry.js.map +1 -0
- package/dist/types.d.ts +148 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/package.json +35 -0
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common types and interfaces for agent-mux observability.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Log levels supported by the system.
|
|
6
|
+
*/
|
|
7
|
+
export type LogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'fatal';
|
|
8
|
+
/**
|
|
9
|
+
* Cost information structure for tracking LLM usage.
|
|
10
|
+
*/
|
|
11
|
+
export interface CostInfo {
|
|
12
|
+
totalUsd?: number;
|
|
13
|
+
inputTokens?: number;
|
|
14
|
+
outputTokens?: number;
|
|
15
|
+
thinkingTokens?: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Contextual information that can be attached to log entries.
|
|
19
|
+
*/
|
|
20
|
+
export interface LogContext {
|
|
21
|
+
/** Run ID for correlating logs across a single run */
|
|
22
|
+
runId?: string;
|
|
23
|
+
/** Agent name being used */
|
|
24
|
+
agent?: string;
|
|
25
|
+
/** Session ID for multi-turn conversations */
|
|
26
|
+
sessionId?: string;
|
|
27
|
+
/** Model being used */
|
|
28
|
+
model?: string;
|
|
29
|
+
/** User ID or identifier */
|
|
30
|
+
userId?: string;
|
|
31
|
+
/** Request/operation ID for tracing */
|
|
32
|
+
operationId?: string;
|
|
33
|
+
/** Component or module name */
|
|
34
|
+
component?: string;
|
|
35
|
+
/** Duration in milliseconds for performance tracking */
|
|
36
|
+
duration?: number;
|
|
37
|
+
/** Cost information */
|
|
38
|
+
cost?: CostInfo;
|
|
39
|
+
/** Error information */
|
|
40
|
+
error?: {
|
|
41
|
+
code?: string;
|
|
42
|
+
message?: string;
|
|
43
|
+
stack?: string;
|
|
44
|
+
recoverable?: boolean;
|
|
45
|
+
name?: string;
|
|
46
|
+
};
|
|
47
|
+
/** Additional arbitrary metadata */
|
|
48
|
+
[key: string]: unknown;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Logger interface for agent-mux.
|
|
52
|
+
*/
|
|
53
|
+
export interface Logger {
|
|
54
|
+
level: string;
|
|
55
|
+
trace(msg: string): void;
|
|
56
|
+
trace(obj: object, msg?: string): void;
|
|
57
|
+
debug(msg: string): void;
|
|
58
|
+
debug(obj: object, msg?: string): void;
|
|
59
|
+
info(msg: string): void;
|
|
60
|
+
info(obj: object, msg?: string): void;
|
|
61
|
+
warn(msg: string): void;
|
|
62
|
+
warn(obj: object, msg?: string): void;
|
|
63
|
+
error(msg: string): void;
|
|
64
|
+
error(obj: object, msg?: string): void;
|
|
65
|
+
fatal(msg: string): void;
|
|
66
|
+
fatal(obj: object, msg?: string): void;
|
|
67
|
+
/** Create a child logger with additional context */
|
|
68
|
+
child(bindings: LogContext): Logger;
|
|
69
|
+
/** Log agent run start */
|
|
70
|
+
runStart(context: {
|
|
71
|
+
runId: string;
|
|
72
|
+
agent: string;
|
|
73
|
+
prompt: string;
|
|
74
|
+
model?: string;
|
|
75
|
+
}): void;
|
|
76
|
+
/** Log agent run completion */
|
|
77
|
+
runComplete(context: {
|
|
78
|
+
runId: string;
|
|
79
|
+
agent: string;
|
|
80
|
+
duration: number;
|
|
81
|
+
cost?: CostInfo;
|
|
82
|
+
}): void;
|
|
83
|
+
/** Log agent run error */
|
|
84
|
+
runError(context: {
|
|
85
|
+
runId: string;
|
|
86
|
+
agent: string;
|
|
87
|
+
error: Error | LogContext['error'];
|
|
88
|
+
}): void;
|
|
89
|
+
/** Log tool call start */
|
|
90
|
+
toolCallStart(context: {
|
|
91
|
+
runId: string;
|
|
92
|
+
toolName: string;
|
|
93
|
+
toolCallId: string;
|
|
94
|
+
args?: unknown;
|
|
95
|
+
}): void;
|
|
96
|
+
/** Log tool call completion */
|
|
97
|
+
toolCallComplete(context: {
|
|
98
|
+
runId: string;
|
|
99
|
+
toolName: string;
|
|
100
|
+
toolCallId: string;
|
|
101
|
+
duration: number;
|
|
102
|
+
result?: unknown;
|
|
103
|
+
}): void;
|
|
104
|
+
/** Log session events */
|
|
105
|
+
session(message: string, context: LogContext & {
|
|
106
|
+
action?: 'create' | 'resume' | 'fork' | 'end';
|
|
107
|
+
}): void;
|
|
108
|
+
perf?(message: string, context: LogContext & {
|
|
109
|
+
duration: number;
|
|
110
|
+
}): void;
|
|
111
|
+
auth?(message: string, context: LogContext & {
|
|
112
|
+
method?: string;
|
|
113
|
+
success?: boolean;
|
|
114
|
+
}): void;
|
|
115
|
+
config?(message: string, context: LogContext): void;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Telemetry interface for agent-mux.
|
|
119
|
+
*/
|
|
120
|
+
export interface Telemetry {
|
|
121
|
+
/** Record agent run start */
|
|
122
|
+
recordRunStart(agent: string, model?: string): void;
|
|
123
|
+
/** Record agent run completion */
|
|
124
|
+
recordRunComplete(agent: string, model: string | undefined, duration: number, cost?: CostInfo): void;
|
|
125
|
+
/** Record agent run error */
|
|
126
|
+
recordRunError(agent: string, model: string | undefined, error: Error | string, cost?: CostInfo): void;
|
|
127
|
+
/** Record tool call */
|
|
128
|
+
recordToolCall(toolName: string, duration: number, success: boolean): void;
|
|
129
|
+
/** Record authentication event */
|
|
130
|
+
recordAuthEvent(agent: string, method: string, success: boolean): void;
|
|
131
|
+
/** Start tracing an agent run */
|
|
132
|
+
startRunSpan(runId: string, agent: string, model?: string): any;
|
|
133
|
+
/** Start tracing a tool call */
|
|
134
|
+
startToolCallSpan(toolName: string, toolCallId: string, parentSpan?: any): any;
|
|
135
|
+
/** Start tracing a subagent delegation */
|
|
136
|
+
startSubagentSpan(subagentId: string, agentName: string, parentSpan?: any): any;
|
|
137
|
+
/** End a span with success */
|
|
138
|
+
endSpanSuccess(span: any, attributes?: Record<string, string | number | boolean>): void;
|
|
139
|
+
/** End a span with error */
|
|
140
|
+
endSpanError(span: any, error: Error | string, attributes?: Record<string, string | number | boolean>): void;
|
|
141
|
+
/** Initialize telemetry */
|
|
142
|
+
initialize?(): void;
|
|
143
|
+
/** Shutdown telemetry */
|
|
144
|
+
shutdown?(): Promise<void>;
|
|
145
|
+
/** Set active runs gauge */
|
|
146
|
+
setActiveRuns?(count: number): void;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
package/package.json
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@a5c-ai/agent-mux-observability",
|
|
3
|
+
"version": "0.4.0",
|
|
4
|
+
"description": "Logging and telemetry infrastructure for agent-mux",
|
|
5
|
+
"keywords": ["logging", "telemetry", "observability", "opentelemetry", "pino"],
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"main": "dist/index.js",
|
|
9
|
+
"types": "dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"types": "./dist/index.d.ts"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"files": ["dist/"],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"build": "tsc",
|
|
19
|
+
"clean": "rm -rf dist/",
|
|
20
|
+
"test": "vitest"
|
|
21
|
+
},
|
|
22
|
+
"dependencies": {
|
|
23
|
+
"@opentelemetry/api": "^1.9.1",
|
|
24
|
+
"@opentelemetry/auto-instrumentations-node": "^0.72.0",
|
|
25
|
+
"@opentelemetry/resources": "^2.6.1",
|
|
26
|
+
"@opentelemetry/sdk-node": "^0.214.0",
|
|
27
|
+
"@opentelemetry/semantic-conventions": "^1.29.0",
|
|
28
|
+
"pino": "^10.3.1",
|
|
29
|
+
"pino-pretty": "^13.1.3"
|
|
30
|
+
},
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"typescript": "^5.4.5",
|
|
33
|
+
"vitest": "^4.1.4"
|
|
34
|
+
}
|
|
35
|
+
}
|