@lleverage-ai/agent-sdk 0.0.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/LICENSE +21 -0
- package/README.md +2321 -0
- package/dist/agent.d.ts +52 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +2122 -0
- package/dist/agent.js.map +1 -0
- package/dist/backend.d.ts +378 -0
- package/dist/backend.d.ts.map +1 -0
- package/dist/backend.js +71 -0
- package/dist/backend.js.map +1 -0
- package/dist/backends/composite.d.ts +258 -0
- package/dist/backends/composite.d.ts.map +1 -0
- package/dist/backends/composite.js +437 -0
- package/dist/backends/composite.js.map +1 -0
- package/dist/backends/filesystem.d.ts +268 -0
- package/dist/backends/filesystem.d.ts.map +1 -0
- package/dist/backends/filesystem.js +623 -0
- package/dist/backends/filesystem.js.map +1 -0
- package/dist/backends/index.d.ts +14 -0
- package/dist/backends/index.d.ts.map +1 -0
- package/dist/backends/index.js +14 -0
- package/dist/backends/index.js.map +1 -0
- package/dist/backends/persistent.d.ts +312 -0
- package/dist/backends/persistent.d.ts.map +1 -0
- package/dist/backends/persistent.js +519 -0
- package/dist/backends/persistent.js.map +1 -0
- package/dist/backends/sandbox.d.ts +315 -0
- package/dist/backends/sandbox.d.ts.map +1 -0
- package/dist/backends/sandbox.js +490 -0
- package/dist/backends/sandbox.js.map +1 -0
- package/dist/backends/state.d.ts +225 -0
- package/dist/backends/state.d.ts.map +1 -0
- package/dist/backends/state.js +396 -0
- package/dist/backends/state.js.map +1 -0
- package/dist/checkpointer/file-saver.d.ts +182 -0
- package/dist/checkpointer/file-saver.d.ts.map +1 -0
- package/dist/checkpointer/file-saver.js +298 -0
- package/dist/checkpointer/file-saver.js.map +1 -0
- package/dist/checkpointer/index.d.ts +40 -0
- package/dist/checkpointer/index.d.ts.map +1 -0
- package/dist/checkpointer/index.js +40 -0
- package/dist/checkpointer/index.js.map +1 -0
- package/dist/checkpointer/kv-saver.d.ts +142 -0
- package/dist/checkpointer/kv-saver.d.ts.map +1 -0
- package/dist/checkpointer/kv-saver.js +176 -0
- package/dist/checkpointer/kv-saver.js.map +1 -0
- package/dist/checkpointer/memory-saver.d.ts +158 -0
- package/dist/checkpointer/memory-saver.d.ts.map +1 -0
- package/dist/checkpointer/memory-saver.js +222 -0
- package/dist/checkpointer/memory-saver.js.map +1 -0
- package/dist/checkpointer/types.d.ts +353 -0
- package/dist/checkpointer/types.d.ts.map +1 -0
- package/dist/checkpointer/types.js +159 -0
- package/dist/checkpointer/types.js.map +1 -0
- package/dist/context-manager.d.ts +627 -0
- package/dist/context-manager.d.ts.map +1 -0
- package/dist/context-manager.js +1039 -0
- package/dist/context-manager.js.map +1 -0
- package/dist/context.d.ts +57 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +76 -0
- package/dist/context.js.map +1 -0
- package/dist/errors/index.d.ts +611 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +1023 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/generation-helpers.d.ts +126 -0
- package/dist/generation-helpers.d.ts.map +1 -0
- package/dist/generation-helpers.js +181 -0
- package/dist/generation-helpers.js.map +1 -0
- package/dist/hooks/audit.d.ts +210 -0
- package/dist/hooks/audit.d.ts.map +1 -0
- package/dist/hooks/audit.js +305 -0
- package/dist/hooks/audit.js.map +1 -0
- package/dist/hooks/cache.d.ts +180 -0
- package/dist/hooks/cache.d.ts.map +1 -0
- package/dist/hooks/cache.js +273 -0
- package/dist/hooks/cache.js.map +1 -0
- package/dist/hooks/guardrails.d.ts +145 -0
- package/dist/hooks/guardrails.d.ts.map +1 -0
- package/dist/hooks/guardrails.js +326 -0
- package/dist/hooks/guardrails.js.map +1 -0
- package/dist/hooks/index.d.ts +18 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +32 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/logging.d.ts +193 -0
- package/dist/hooks/logging.d.ts.map +1 -0
- package/dist/hooks/logging.js +345 -0
- package/dist/hooks/logging.js.map +1 -0
- package/dist/hooks/parallel-guardrails.d.ts +268 -0
- package/dist/hooks/parallel-guardrails.d.ts.map +1 -0
- package/dist/hooks/parallel-guardrails.js +416 -0
- package/dist/hooks/parallel-guardrails.js.map +1 -0
- package/dist/hooks/rate-limit.d.ts +305 -0
- package/dist/hooks/rate-limit.d.ts.map +1 -0
- package/dist/hooks/rate-limit.js +372 -0
- package/dist/hooks/rate-limit.js.map +1 -0
- package/dist/hooks/retry.d.ts +144 -0
- package/dist/hooks/retry.d.ts.map +1 -0
- package/dist/hooks/retry.js +210 -0
- package/dist/hooks/retry.js.map +1 -0
- package/dist/hooks/secrets.d.ts +174 -0
- package/dist/hooks/secrets.d.ts.map +1 -0
- package/dist/hooks/secrets.js +306 -0
- package/dist/hooks/secrets.js.map +1 -0
- package/dist/hooks.d.ts +229 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +352 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.d.ts +97 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +182 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/env.d.ts +25 -0
- package/dist/mcp/env.d.ts.map +1 -0
- package/dist/mcp/env.js +18 -0
- package/dist/mcp/env.js.map +1 -0
- package/dist/mcp/index.d.ts +16 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +17 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/manager.d.ts +184 -0
- package/dist/mcp/manager.d.ts.map +1 -0
- package/dist/mcp/manager.js +446 -0
- package/dist/mcp/manager.js.map +1 -0
- package/dist/mcp/types.d.ts +58 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +7 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/mcp/validation.d.ts +119 -0
- package/dist/mcp/validation.d.ts.map +1 -0
- package/dist/mcp/validation.js +407 -0
- package/dist/mcp/validation.js.map +1 -0
- package/dist/mcp/virtual-server.d.ts +78 -0
- package/dist/mcp/virtual-server.d.ts.map +1 -0
- package/dist/mcp/virtual-server.js +137 -0
- package/dist/mcp/virtual-server.js.map +1 -0
- package/dist/memory/filesystem-store.d.ts +217 -0
- package/dist/memory/filesystem-store.d.ts.map +1 -0
- package/dist/memory/filesystem-store.js +343 -0
- package/dist/memory/filesystem-store.js.map +1 -0
- package/dist/memory/index.d.ts +46 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +46 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/loader.d.ts +396 -0
- package/dist/memory/loader.d.ts.map +1 -0
- package/dist/memory/loader.js +419 -0
- package/dist/memory/loader.js.map +1 -0
- package/dist/memory/permissions.d.ts +282 -0
- package/dist/memory/permissions.d.ts.map +1 -0
- package/dist/memory/permissions.js +297 -0
- package/dist/memory/permissions.js.map +1 -0
- package/dist/memory/rules.d.ts +249 -0
- package/dist/memory/rules.d.ts.map +1 -0
- package/dist/memory/rules.js +362 -0
- package/dist/memory/rules.js.map +1 -0
- package/dist/memory/store.d.ts +286 -0
- package/dist/memory/store.d.ts.map +1 -0
- package/dist/memory/store.js +263 -0
- package/dist/memory/store.js.map +1 -0
- package/dist/middleware/apply.d.ts +73 -0
- package/dist/middleware/apply.d.ts.map +1 -0
- package/dist/middleware/apply.js +219 -0
- package/dist/middleware/apply.js.map +1 -0
- package/dist/middleware/context.d.ts +33 -0
- package/dist/middleware/context.d.ts.map +1 -0
- package/dist/middleware/context.js +176 -0
- package/dist/middleware/context.js.map +1 -0
- package/dist/middleware/index.d.ts +31 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +32 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/logging.d.ts +137 -0
- package/dist/middleware/logging.d.ts.map +1 -0
- package/dist/middleware/logging.js +374 -0
- package/dist/middleware/logging.js.map +1 -0
- package/dist/middleware/types.d.ts +183 -0
- package/dist/middleware/types.d.ts.map +1 -0
- package/dist/middleware/types.js +11 -0
- package/dist/middleware/types.js.map +1 -0
- package/dist/observability/events.d.ts +183 -0
- package/dist/observability/events.d.ts.map +1 -0
- package/dist/observability/events.js +305 -0
- package/dist/observability/events.js.map +1 -0
- package/dist/observability/index.d.ts +55 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +87 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/logger.d.ts +318 -0
- package/dist/observability/logger.d.ts.map +1 -0
- package/dist/observability/logger.js +436 -0
- package/dist/observability/logger.js.map +1 -0
- package/dist/observability/metrics.d.ts +341 -0
- package/dist/observability/metrics.d.ts.map +1 -0
- package/dist/observability/metrics.js +490 -0
- package/dist/observability/metrics.js.map +1 -0
- package/dist/observability/preset.d.ts +161 -0
- package/dist/observability/preset.d.ts.map +1 -0
- package/dist/observability/preset.js +133 -0
- package/dist/observability/preset.js.map +1 -0
- package/dist/observability/streaming.d.ts +113 -0
- package/dist/observability/streaming.d.ts.map +1 -0
- package/dist/observability/streaming.js +114 -0
- package/dist/observability/streaming.js.map +1 -0
- package/dist/observability/tracing.d.ts +378 -0
- package/dist/observability/tracing.d.ts.map +1 -0
- package/dist/observability/tracing.js +539 -0
- package/dist/observability/tracing.js.map +1 -0
- package/dist/plugins.d.ts +55 -0
- package/dist/plugins.d.ts.map +1 -0
- package/dist/plugins.js +63 -0
- package/dist/plugins.js.map +1 -0
- package/dist/presets/index.d.ts +7 -0
- package/dist/presets/index.d.ts.map +1 -0
- package/dist/presets/index.js +7 -0
- package/dist/presets/index.js.map +1 -0
- package/dist/presets/production.d.ts +262 -0
- package/dist/presets/production.d.ts.map +1 -0
- package/dist/presets/production.js +295 -0
- package/dist/presets/production.js.map +1 -0
- package/dist/security/index.d.ts +179 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +323 -0
- package/dist/security/index.js.map +1 -0
- package/dist/subagents/advanced.d.ts +413 -0
- package/dist/subagents/advanced.d.ts.map +1 -0
- package/dist/subagents/advanced.js +396 -0
- package/dist/subagents/advanced.js.map +1 -0
- package/dist/subagents/index.d.ts +14 -0
- package/dist/subagents/index.d.ts.map +1 -0
- package/dist/subagents/index.js +15 -0
- package/dist/subagents/index.js.map +1 -0
- package/dist/subagents.d.ts +73 -0
- package/dist/subagents.d.ts.map +1 -0
- package/dist/subagents.js +213 -0
- package/dist/subagents.js.map +1 -0
- package/dist/task-store/file-store.d.ts +76 -0
- package/dist/task-store/file-store.d.ts.map +1 -0
- package/dist/task-store/file-store.js +190 -0
- package/dist/task-store/file-store.js.map +1 -0
- package/dist/task-store/index.d.ts +11 -0
- package/dist/task-store/index.d.ts.map +1 -0
- package/dist/task-store/index.js +10 -0
- package/dist/task-store/index.js.map +1 -0
- package/dist/task-store/kv-store.d.ts +140 -0
- package/dist/task-store/kv-store.d.ts.map +1 -0
- package/dist/task-store/kv-store.js +169 -0
- package/dist/task-store/kv-store.js.map +1 -0
- package/dist/task-store/memory-store.d.ts +66 -0
- package/dist/task-store/memory-store.d.ts.map +1 -0
- package/dist/task-store/memory-store.js +125 -0
- package/dist/task-store/memory-store.js.map +1 -0
- package/dist/task-store/types.d.ts +235 -0
- package/dist/task-store/types.d.ts.map +1 -0
- package/dist/task-store/types.js +110 -0
- package/dist/task-store/types.js.map +1 -0
- package/dist/testing/assertions.d.ts +401 -0
- package/dist/testing/assertions.d.ts.map +1 -0
- package/dist/testing/assertions.js +630 -0
- package/dist/testing/assertions.js.map +1 -0
- package/dist/testing/index.d.ts +343 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +360 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-agent.d.ts +214 -0
- package/dist/testing/mock-agent.d.ts.map +1 -0
- package/dist/testing/mock-agent.js +448 -0
- package/dist/testing/mock-agent.js.map +1 -0
- package/dist/testing/recorder.d.ts +288 -0
- package/dist/testing/recorder.d.ts.map +1 -0
- package/dist/testing/recorder.js +499 -0
- package/dist/testing/recorder.js.map +1 -0
- package/dist/tools/execute.d.ts +104 -0
- package/dist/tools/execute.d.ts.map +1 -0
- package/dist/tools/execute.js +191 -0
- package/dist/tools/execute.js.map +1 -0
- package/dist/tools/factory.d.ts +260 -0
- package/dist/tools/factory.d.ts.map +1 -0
- package/dist/tools/factory.js +241 -0
- package/dist/tools/factory.js.map +1 -0
- package/dist/tools/filesystem.d.ts +215 -0
- package/dist/tools/filesystem.d.ts.map +1 -0
- package/dist/tools/filesystem.js +311 -0
- package/dist/tools/filesystem.js.map +1 -0
- package/dist/tools/index.d.ts +33 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +33 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/search.d.ts +59 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +94 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/skills.d.ts +354 -0
- package/dist/tools/skills.d.ts.map +1 -0
- package/dist/tools/skills.js +413 -0
- package/dist/tools/skills.js.map +1 -0
- package/dist/tools/task.d.ts +272 -0
- package/dist/tools/task.d.ts.map +1 -0
- package/dist/tools/task.js +521 -0
- package/dist/tools/task.js.map +1 -0
- package/dist/tools/todos.d.ts +131 -0
- package/dist/tools/todos.d.ts.map +1 -0
- package/dist/tools/todos.js +120 -0
- package/dist/tools/todos.js.map +1 -0
- package/dist/tools/tool-registry.d.ts +424 -0
- package/dist/tools/tool-registry.d.ts.map +1 -0
- package/dist/tools/tool-registry.js +607 -0
- package/dist/tools/tool-registry.js.map +1 -0
- package/dist/tools/user-interaction.d.ts +116 -0
- package/dist/tools/user-interaction.d.ts.map +1 -0
- package/dist/tools/user-interaction.js +147 -0
- package/dist/tools/user-interaction.js.map +1 -0
- package/dist/tools/utils.d.ts +124 -0
- package/dist/tools/utils.d.ts.map +1 -0
- package/dist/tools/utils.js +189 -0
- package/dist/tools/utils.js.map +1 -0
- package/dist/tools.d.ts +74 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +73 -0
- package/dist/tools.js.map +1 -0
- package/dist/types.d.ts +2421 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +55 -0
- package/dist/types.js.map +1 -0
- package/package.json +81 -0
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Observability event types and exporters for MCP and tool registry lifecycle events.
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*/
|
|
6
|
+
import type { MCPConnectionFailedInput, MCPConnectionRestoredInput, PostCompactInput, PreCompactInput, ToolLoadErrorInput, ToolRegisteredInput } from "../types.js";
|
|
7
|
+
/**
|
|
8
|
+
* Union type of all observability events.
|
|
9
|
+
* @category Observability
|
|
10
|
+
*/
|
|
11
|
+
export type ObservabilityEvent = MCPConnectionFailedInput | MCPConnectionRestoredInput | ToolRegisteredInput | ToolLoadErrorInput | PreCompactInput | PostCompactInput;
|
|
12
|
+
/**
|
|
13
|
+
* Event severity levels for alerting.
|
|
14
|
+
* @category Observability
|
|
15
|
+
*/
|
|
16
|
+
export type EventSeverity = "info" | "warning" | "error" | "critical";
|
|
17
|
+
/**
|
|
18
|
+
* Structured event for export with standardized fields.
|
|
19
|
+
* @category Observability
|
|
20
|
+
*/
|
|
21
|
+
export interface StructuredEvent {
|
|
22
|
+
/** Timestamp in ISO format */
|
|
23
|
+
timestamp: string;
|
|
24
|
+
/** Event type */
|
|
25
|
+
event_type: string;
|
|
26
|
+
/** Severity level */
|
|
27
|
+
severity: EventSeverity;
|
|
28
|
+
/** Human-readable message */
|
|
29
|
+
message: string;
|
|
30
|
+
/** Structured metadata */
|
|
31
|
+
metadata: Record<string, unknown>;
|
|
32
|
+
/** Session ID (if available) */
|
|
33
|
+
session_id?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Options for event exporters.
|
|
37
|
+
* @category Observability
|
|
38
|
+
*/
|
|
39
|
+
export interface EventExporterOptions {
|
|
40
|
+
/** Minimum severity to export */
|
|
41
|
+
minSeverity?: EventSeverity;
|
|
42
|
+
/** Whether to include full error stack traces */
|
|
43
|
+
includeStackTraces?: boolean;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Convert an observability event to a structured event.
|
|
47
|
+
*
|
|
48
|
+
* @param event - The hook input event
|
|
49
|
+
* @returns Structured event ready for export
|
|
50
|
+
*
|
|
51
|
+
* @category Observability
|
|
52
|
+
*/
|
|
53
|
+
export declare function toStructuredEvent(event: ObservabilityEvent): StructuredEvent;
|
|
54
|
+
/**
|
|
55
|
+
* Export events as JSON Lines format for log aggregation tools.
|
|
56
|
+
*
|
|
57
|
+
* @param events - Array of observability events
|
|
58
|
+
* @param options - Export options
|
|
59
|
+
* @returns JSON Lines string (one JSON object per line)
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const events = [mcpFailedEvent, toolRegisteredEvent];
|
|
64
|
+
* const jsonl = exportEventsJSONLines(events);
|
|
65
|
+
* await fs.writeFile("events.jsonl", jsonl);
|
|
66
|
+
* ```
|
|
67
|
+
*
|
|
68
|
+
* @category Observability
|
|
69
|
+
*/
|
|
70
|
+
export declare function exportEventsJSONLines(events: ObservabilityEvent[], options?: EventExporterOptions): string;
|
|
71
|
+
/**
|
|
72
|
+
* Export events in a format suitable for Prometheus/OpenMetrics.
|
|
73
|
+
*
|
|
74
|
+
* @param events - Array of observability events
|
|
75
|
+
* @returns Metrics in Prometheus text format
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```typescript
|
|
79
|
+
* const events = [mcpFailedEvent, mcpRestoredEvent];
|
|
80
|
+
* const metrics = exportEventsPrometheus(events);
|
|
81
|
+
* // Send to Pushgateway or expose via /metrics endpoint
|
|
82
|
+
* ```
|
|
83
|
+
*
|
|
84
|
+
* @category Observability
|
|
85
|
+
*/
|
|
86
|
+
export declare function exportEventsPrometheus(events: ObservabilityEvent[]): string;
|
|
87
|
+
/**
|
|
88
|
+
* In-memory store for collecting observability events.
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```typescript
|
|
92
|
+
* const store = createObservabilityEventStore({ maxSize: 1000 });
|
|
93
|
+
*
|
|
94
|
+
* // Add events
|
|
95
|
+
* store.add(mcpFailedEvent);
|
|
96
|
+
* store.add(toolRegisteredEvent);
|
|
97
|
+
*
|
|
98
|
+
* // Export periodically
|
|
99
|
+
* setInterval(() => {
|
|
100
|
+
* const jsonl = exportEventsJSONLines(store.getAll());
|
|
101
|
+
* await sendToLogAggregator(jsonl);
|
|
102
|
+
* store.clear();
|
|
103
|
+
* }, 60000);
|
|
104
|
+
* ```
|
|
105
|
+
*
|
|
106
|
+
* @category Observability
|
|
107
|
+
*/
|
|
108
|
+
export interface ObservabilityEventStore {
|
|
109
|
+
/** Add an event to the store */
|
|
110
|
+
add: (event: ObservabilityEvent) => void;
|
|
111
|
+
/** Get all events */
|
|
112
|
+
getAll: () => ObservabilityEvent[];
|
|
113
|
+
/** Get events by type */
|
|
114
|
+
getByType: (type: ObservabilityEvent["hook_event_name"]) => ObservabilityEvent[];
|
|
115
|
+
/** Clear all events */
|
|
116
|
+
clear: () => void;
|
|
117
|
+
/** Get current event count */
|
|
118
|
+
size: () => number;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Options for creating an observability event store.
|
|
122
|
+
* @category Observability
|
|
123
|
+
*/
|
|
124
|
+
export interface ObservabilityEventStoreOptions {
|
|
125
|
+
/** Maximum number of events to store (LRU eviction) */
|
|
126
|
+
maxSize?: number;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Create an in-memory observability event store.
|
|
130
|
+
*
|
|
131
|
+
* @param options - Store configuration
|
|
132
|
+
* @returns Event store instance
|
|
133
|
+
*
|
|
134
|
+
* @category Observability
|
|
135
|
+
*/
|
|
136
|
+
export declare function createObservabilityEventStore(options?: ObservabilityEventStoreOptions): ObservabilityEventStore;
|
|
137
|
+
/**
|
|
138
|
+
* Create hooks for collecting observability events.
|
|
139
|
+
*
|
|
140
|
+
* @param store - Event store to collect events in
|
|
141
|
+
* @returns Hook callbacks for all observability event types
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* ```typescript
|
|
145
|
+
* const store = createObservabilityEventStore();
|
|
146
|
+
* const hooks = createObservabilityEventHooks(store);
|
|
147
|
+
*
|
|
148
|
+
* const agent = createAgent({
|
|
149
|
+
* model,
|
|
150
|
+
* hooks: {
|
|
151
|
+
* MCPConnectionFailed: hooks.MCPConnectionFailed,
|
|
152
|
+
* MCPConnectionRestored: hooks.MCPConnectionRestored,
|
|
153
|
+
* ToolRegistered: hooks.ToolRegistered,
|
|
154
|
+
* ToolLoadError: hooks.ToolLoadError,
|
|
155
|
+
* PreCompact: hooks.PreCompact,
|
|
156
|
+
* PostCompact: hooks.PostCompact,
|
|
157
|
+
* },
|
|
158
|
+
* });
|
|
159
|
+
* ```
|
|
160
|
+
*
|
|
161
|
+
* @category Observability
|
|
162
|
+
*/
|
|
163
|
+
export declare function createObservabilityEventHooks(store: ObservabilityEventStore): {
|
|
164
|
+
MCPConnectionFailed: ((input: MCPConnectionFailedInput) => Promise<{
|
|
165
|
+
continue: boolean;
|
|
166
|
+
}>)[];
|
|
167
|
+
MCPConnectionRestored: ((input: MCPConnectionRestoredInput) => Promise<{
|
|
168
|
+
continue: boolean;
|
|
169
|
+
}>)[];
|
|
170
|
+
ToolRegistered: ((input: ToolRegisteredInput) => Promise<{
|
|
171
|
+
continue: boolean;
|
|
172
|
+
}>)[];
|
|
173
|
+
ToolLoadError: ((input: ToolLoadErrorInput) => Promise<{
|
|
174
|
+
continue: boolean;
|
|
175
|
+
}>)[];
|
|
176
|
+
PreCompact: ((input: PreCompactInput) => Promise<{
|
|
177
|
+
continue: boolean;
|
|
178
|
+
}>)[];
|
|
179
|
+
PostCompact: ((input: PostCompactInput) => Promise<{
|
|
180
|
+
continue: boolean;
|
|
181
|
+
}>)[];
|
|
182
|
+
};
|
|
183
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/observability/events.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAC1B,wBAAwB,GACxB,0BAA0B,GAC1B,mBAAmB,GACnB,kBAAkB,GAClB,eAAe,GACf,gBAAgB,CAAC;AAErB;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAEtE;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAElB,iBAAiB;IACjB,UAAU,EAAE,MAAM,CAAC;IAEnB,qBAAqB;IACrB,QAAQ,EAAE,aAAa,CAAC;IAExB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAEhB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,iCAAiC;IACjC,WAAW,CAAC,EAAE,aAAa,CAAC;IAE5B,iDAAiD;IACjD,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,GAAG,eAAe,CAqG5E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,OAAO,GAAE,oBAAyB,GACjC,MAAM,CAmBR;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAqE3E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,uBAAuB;IACtC,gCAAgC;IAChC,GAAG,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAEzC,qBAAqB;IACrB,MAAM,EAAE,MAAM,kBAAkB,EAAE,CAAC;IAEnC,yBAAyB;IACzB,SAAS,EAAE,CAAC,IAAI,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,KAAK,kBAAkB,EAAE,CAAC;IAEjF,uBAAuB;IACvB,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,GAAE,8BAAmC,GAC3C,uBAAuB,CAwBzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,uBAAuB;kCAGxD,wBAAwB,KAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;oCAOzD,0BAA0B,KAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;6BAO3D,mBAAmB,KAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;4BAOpD,kBAAkB,KAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;yBAOnD,eAAe,KAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;0BAOhD,gBAAgB,KAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;EAMpE"}
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Observability event types and exporters for MCP and tool registry lifecycle events.
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Convert an observability event to a structured event.
|
|
8
|
+
*
|
|
9
|
+
* @param event - The hook input event
|
|
10
|
+
* @returns Structured event ready for export
|
|
11
|
+
*
|
|
12
|
+
* @category Observability
|
|
13
|
+
*/
|
|
14
|
+
export function toStructuredEvent(event) {
|
|
15
|
+
const timestamp = new Date().toISOString();
|
|
16
|
+
switch (event.hook_event_name) {
|
|
17
|
+
case "MCPConnectionFailed": {
|
|
18
|
+
return {
|
|
19
|
+
timestamp,
|
|
20
|
+
event_type: "mcp_connection_failed",
|
|
21
|
+
severity: "error",
|
|
22
|
+
message: `MCP server '${event.server_name}' failed to connect: ${event.error.message}`,
|
|
23
|
+
metadata: {
|
|
24
|
+
server_name: event.server_name,
|
|
25
|
+
config_type: event.config.type,
|
|
26
|
+
error_name: event.error.name,
|
|
27
|
+
error_message: event.error.message,
|
|
28
|
+
},
|
|
29
|
+
session_id: event.session_id,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
case "MCPConnectionRestored": {
|
|
33
|
+
return {
|
|
34
|
+
timestamp,
|
|
35
|
+
event_type: "mcp_connection_restored",
|
|
36
|
+
severity: "info",
|
|
37
|
+
message: `MCP server '${event.server_name}' connected successfully with ${event.tool_count} tools`,
|
|
38
|
+
metadata: {
|
|
39
|
+
server_name: event.server_name,
|
|
40
|
+
tool_count: event.tool_count,
|
|
41
|
+
},
|
|
42
|
+
session_id: event.session_id,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
case "ToolRegistered": {
|
|
46
|
+
return {
|
|
47
|
+
timestamp,
|
|
48
|
+
event_type: "tool_registered",
|
|
49
|
+
severity: "info",
|
|
50
|
+
message: `Tool '${event.tool_name}' registered${event.source ? ` from ${event.source}` : ""}`,
|
|
51
|
+
metadata: {
|
|
52
|
+
tool_name: event.tool_name,
|
|
53
|
+
description: event.description,
|
|
54
|
+
source: event.source,
|
|
55
|
+
},
|
|
56
|
+
session_id: event.session_id,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
case "ToolLoadError": {
|
|
60
|
+
return {
|
|
61
|
+
timestamp,
|
|
62
|
+
event_type: "tool_load_error",
|
|
63
|
+
severity: "warning",
|
|
64
|
+
message: `Failed to load tool '${event.tool_name}': ${event.error.message}`,
|
|
65
|
+
metadata: {
|
|
66
|
+
tool_name: event.tool_name,
|
|
67
|
+
error_name: event.error.name,
|
|
68
|
+
error_message: event.error.message,
|
|
69
|
+
source: event.source,
|
|
70
|
+
},
|
|
71
|
+
session_id: event.session_id,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
case "PreCompact": {
|
|
75
|
+
return {
|
|
76
|
+
timestamp,
|
|
77
|
+
event_type: "context_compaction_started",
|
|
78
|
+
severity: "info",
|
|
79
|
+
message: `Context compaction started: ${event.message_count} messages, ${event.tokens_before} tokens`,
|
|
80
|
+
metadata: {
|
|
81
|
+
message_count: event.message_count,
|
|
82
|
+
tokens_before: event.tokens_before,
|
|
83
|
+
},
|
|
84
|
+
session_id: event.session_id,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
case "PostCompact": {
|
|
88
|
+
const reductionPercent = event.tokens_before > 0
|
|
89
|
+
? ((event.tokens_saved / event.tokens_before) * 100).toFixed(1)
|
|
90
|
+
: "0.0";
|
|
91
|
+
return {
|
|
92
|
+
timestamp,
|
|
93
|
+
event_type: "context_compaction_completed",
|
|
94
|
+
severity: "info",
|
|
95
|
+
message: `Context compaction completed: ${event.messages_before} → ${event.messages_after} messages, saved ${event.tokens_saved} tokens (${reductionPercent}%)`,
|
|
96
|
+
metadata: {
|
|
97
|
+
messages_before: event.messages_before,
|
|
98
|
+
messages_after: event.messages_after,
|
|
99
|
+
tokens_before: event.tokens_before,
|
|
100
|
+
tokens_after: event.tokens_after,
|
|
101
|
+
tokens_saved: event.tokens_saved,
|
|
102
|
+
reduction_percent: Number.parseFloat(reductionPercent),
|
|
103
|
+
},
|
|
104
|
+
session_id: event.session_id,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Export events as JSON Lines format for log aggregation tools.
|
|
111
|
+
*
|
|
112
|
+
* @param events - Array of observability events
|
|
113
|
+
* @param options - Export options
|
|
114
|
+
* @returns JSON Lines string (one JSON object per line)
|
|
115
|
+
*
|
|
116
|
+
* @example
|
|
117
|
+
* ```typescript
|
|
118
|
+
* const events = [mcpFailedEvent, toolRegisteredEvent];
|
|
119
|
+
* const jsonl = exportEventsJSONLines(events);
|
|
120
|
+
* await fs.writeFile("events.jsonl", jsonl);
|
|
121
|
+
* ```
|
|
122
|
+
*
|
|
123
|
+
* @category Observability
|
|
124
|
+
*/
|
|
125
|
+
export function exportEventsJSONLines(events, options = {}) {
|
|
126
|
+
const { minSeverity = "info" } = options;
|
|
127
|
+
const severityLevels = ["info", "warning", "error", "critical"];
|
|
128
|
+
const minLevel = severityLevels.indexOf(minSeverity);
|
|
129
|
+
return events
|
|
130
|
+
.map((event) => {
|
|
131
|
+
const structured = toStructuredEvent(event);
|
|
132
|
+
// Filter by severity
|
|
133
|
+
const eventLevel = severityLevels.indexOf(structured.severity);
|
|
134
|
+
if (eventLevel < minLevel) {
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
137
|
+
return JSON.stringify(structured);
|
|
138
|
+
})
|
|
139
|
+
.filter((line) => line !== null)
|
|
140
|
+
.join("\n");
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Export events in a format suitable for Prometheus/OpenMetrics.
|
|
144
|
+
*
|
|
145
|
+
* @param events - Array of observability events
|
|
146
|
+
* @returns Metrics in Prometheus text format
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```typescript
|
|
150
|
+
* const events = [mcpFailedEvent, mcpRestoredEvent];
|
|
151
|
+
* const metrics = exportEventsPrometheus(events);
|
|
152
|
+
* // Send to Pushgateway or expose via /metrics endpoint
|
|
153
|
+
* ```
|
|
154
|
+
*
|
|
155
|
+
* @category Observability
|
|
156
|
+
*/
|
|
157
|
+
export function exportEventsPrometheus(events) {
|
|
158
|
+
const metrics = new Map();
|
|
159
|
+
for (const event of events) {
|
|
160
|
+
switch (event.hook_event_name) {
|
|
161
|
+
case "MCPConnectionFailed": {
|
|
162
|
+
const key = `mcp_connection_failures_total{server="${event.server_name}"}`;
|
|
163
|
+
metrics.set(key, (metrics.get(key) ?? 0) + 1);
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
case "MCPConnectionRestored": {
|
|
167
|
+
const key = `mcp_connections_total{server="${event.server_name}"}`;
|
|
168
|
+
metrics.set(key, (metrics.get(key) ?? 0) + 1);
|
|
169
|
+
const toolKey = `mcp_tools_available{server="${event.server_name}"}`;
|
|
170
|
+
metrics.set(toolKey, event.tool_count);
|
|
171
|
+
break;
|
|
172
|
+
}
|
|
173
|
+
case "ToolRegistered": {
|
|
174
|
+
const source = event.source ?? "unknown";
|
|
175
|
+
const key = `tools_registered_total{source="${source}"}`;
|
|
176
|
+
metrics.set(key, (metrics.get(key) ?? 0) + 1);
|
|
177
|
+
break;
|
|
178
|
+
}
|
|
179
|
+
case "ToolLoadError": {
|
|
180
|
+
const source = event.source ?? "unknown";
|
|
181
|
+
const key = `tool_load_errors_total{source="${source}"}`;
|
|
182
|
+
metrics.set(key, (metrics.get(key) ?? 0) + 1);
|
|
183
|
+
break;
|
|
184
|
+
}
|
|
185
|
+
case "PreCompact": {
|
|
186
|
+
// Track compaction starts (for in-progress monitoring)
|
|
187
|
+
const key = `context_compactions_started_total`;
|
|
188
|
+
metrics.set(key, (metrics.get(key) ?? 0) + 1);
|
|
189
|
+
break;
|
|
190
|
+
}
|
|
191
|
+
case "PostCompact": {
|
|
192
|
+
// Track completed compactions
|
|
193
|
+
const compactKey = `context_compactions_total`;
|
|
194
|
+
metrics.set(compactKey, (metrics.get(compactKey) ?? 0) + 1);
|
|
195
|
+
// Track tokens saved
|
|
196
|
+
const tokensSavedKey = `context_compaction_tokens_saved_total`;
|
|
197
|
+
metrics.set(tokensSavedKey, (metrics.get(tokensSavedKey) ?? 0) + event.tokens_saved);
|
|
198
|
+
// Track messages compacted
|
|
199
|
+
const messagesCompactedKey = `context_compaction_messages_removed_total`;
|
|
200
|
+
const messagesRemoved = event.messages_before - event.messages_after;
|
|
201
|
+
metrics.set(messagesCompactedKey, (metrics.get(messagesCompactedKey) ?? 0) + messagesRemoved);
|
|
202
|
+
break;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
const lines = [];
|
|
207
|
+
for (const [metric, value] of metrics) {
|
|
208
|
+
lines.push(`${metric} ${value}`);
|
|
209
|
+
}
|
|
210
|
+
return lines.join("\n");
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Create an in-memory observability event store.
|
|
214
|
+
*
|
|
215
|
+
* @param options - Store configuration
|
|
216
|
+
* @returns Event store instance
|
|
217
|
+
*
|
|
218
|
+
* @category Observability
|
|
219
|
+
*/
|
|
220
|
+
export function createObservabilityEventStore(options = {}) {
|
|
221
|
+
const { maxSize = 10000 } = options;
|
|
222
|
+
const events = [];
|
|
223
|
+
return {
|
|
224
|
+
add: (event) => {
|
|
225
|
+
events.push(event);
|
|
226
|
+
// LRU eviction
|
|
227
|
+
if (events.length > maxSize) {
|
|
228
|
+
events.shift();
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
getAll: () => [...events],
|
|
232
|
+
getByType: (type) => events.filter((e) => e.hook_event_name === type),
|
|
233
|
+
clear: () => {
|
|
234
|
+
events.length = 0;
|
|
235
|
+
},
|
|
236
|
+
size: () => events.length,
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Create hooks for collecting observability events.
|
|
241
|
+
*
|
|
242
|
+
* @param store - Event store to collect events in
|
|
243
|
+
* @returns Hook callbacks for all observability event types
|
|
244
|
+
*
|
|
245
|
+
* @example
|
|
246
|
+
* ```typescript
|
|
247
|
+
* const store = createObservabilityEventStore();
|
|
248
|
+
* const hooks = createObservabilityEventHooks(store);
|
|
249
|
+
*
|
|
250
|
+
* const agent = createAgent({
|
|
251
|
+
* model,
|
|
252
|
+
* hooks: {
|
|
253
|
+
* MCPConnectionFailed: hooks.MCPConnectionFailed,
|
|
254
|
+
* MCPConnectionRestored: hooks.MCPConnectionRestored,
|
|
255
|
+
* ToolRegistered: hooks.ToolRegistered,
|
|
256
|
+
* ToolLoadError: hooks.ToolLoadError,
|
|
257
|
+
* PreCompact: hooks.PreCompact,
|
|
258
|
+
* PostCompact: hooks.PostCompact,
|
|
259
|
+
* },
|
|
260
|
+
* });
|
|
261
|
+
* ```
|
|
262
|
+
*
|
|
263
|
+
* @category Observability
|
|
264
|
+
*/
|
|
265
|
+
export function createObservabilityEventHooks(store) {
|
|
266
|
+
return {
|
|
267
|
+
MCPConnectionFailed: [
|
|
268
|
+
async (input) => {
|
|
269
|
+
store.add(input);
|
|
270
|
+
return { continue: true };
|
|
271
|
+
},
|
|
272
|
+
],
|
|
273
|
+
MCPConnectionRestored: [
|
|
274
|
+
async (input) => {
|
|
275
|
+
store.add(input);
|
|
276
|
+
return { continue: true };
|
|
277
|
+
},
|
|
278
|
+
],
|
|
279
|
+
ToolRegistered: [
|
|
280
|
+
async (input) => {
|
|
281
|
+
store.add(input);
|
|
282
|
+
return { continue: true };
|
|
283
|
+
},
|
|
284
|
+
],
|
|
285
|
+
ToolLoadError: [
|
|
286
|
+
async (input) => {
|
|
287
|
+
store.add(input);
|
|
288
|
+
return { continue: true };
|
|
289
|
+
},
|
|
290
|
+
],
|
|
291
|
+
PreCompact: [
|
|
292
|
+
async (input) => {
|
|
293
|
+
store.add(input);
|
|
294
|
+
return { continue: true };
|
|
295
|
+
},
|
|
296
|
+
],
|
|
297
|
+
PostCompact: [
|
|
298
|
+
async (input) => {
|
|
299
|
+
store.add(input);
|
|
300
|
+
return { continue: true };
|
|
301
|
+
},
|
|
302
|
+
],
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/observability/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Observability Module.
|
|
3
|
+
*
|
|
4
|
+
* Provides comprehensive observability features for the agent SDK:
|
|
5
|
+
* - **Logging**: Structured logging with levels, formatters, and transports
|
|
6
|
+
* - **Metrics**: Counters, gauges, histograms for performance tracking
|
|
7
|
+
* - **Tracing**: OpenTelemetry-compatible distributed tracing
|
|
8
|
+
* - **Hooks**: Pre-built hooks for integrating observability with agents
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import {
|
|
13
|
+
* createLogger,
|
|
14
|
+
* createMetricsRegistry,
|
|
15
|
+
* createAgentMetrics,
|
|
16
|
+
* createTracer,
|
|
17
|
+
* createObservabilityHooks,
|
|
18
|
+
* registerObservabilityHooks,
|
|
19
|
+
* } from "@lleverage-ai/agent-sdk";
|
|
20
|
+
*
|
|
21
|
+
* // Set up observability
|
|
22
|
+
* const logger = createLogger({ name: "my-agent", level: "info" });
|
|
23
|
+
* const registry = createMetricsRegistry();
|
|
24
|
+
* const metrics = createAgentMetrics(registry);
|
|
25
|
+
* const tracer = createTracer({
|
|
26
|
+
* name: "my-agent",
|
|
27
|
+
* exporters: [createConsoleSpanExporter()],
|
|
28
|
+
* });
|
|
29
|
+
*
|
|
30
|
+
* // Create and register hooks
|
|
31
|
+
* const observabilityHooks = createObservabilityHooks({
|
|
32
|
+
* logger,
|
|
33
|
+
* metrics,
|
|
34
|
+
* tracer,
|
|
35
|
+
* });
|
|
36
|
+
*
|
|
37
|
+
* const hookManager = createHookManager();
|
|
38
|
+
* registerObservabilityHooks(hookManager, observabilityHooks);
|
|
39
|
+
*
|
|
40
|
+
* // Create agent with observability
|
|
41
|
+
* const agent = createAgent({
|
|
42
|
+
* model,
|
|
43
|
+
* hooks: hookManager,
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* @packageDocumentation
|
|
48
|
+
*/
|
|
49
|
+
export { createObservabilityEventHooks, createObservabilityEventStore, type EventExporterOptions, type EventSeverity, exportEventsJSONLines, exportEventsPrometheus, type ObservabilityEvent, type ObservabilityEventStore, type ObservabilityEventStoreOptions, type StructuredEvent, toStructuredEvent, } from "./events.js";
|
|
50
|
+
export { createCallbackTransport, createConsoleTransport, createFilteredTransport, createJsonFormatter, createLogger, createMemoryTransport, createPrettyFormatter, defaultLogger, LOG_LEVEL_VALUES, type LogEntry, type LogFormatter, type Logger, type LoggerOptions, type LogLevel, type LogTimer, type LogTransport, setDefaultLogger, } from "./logger.js";
|
|
51
|
+
export { type AgentMetrics, type Counter, createAgentMetrics, createCallbackMetricsExporter, createConsoleMetricsExporter, createMemoryMetricsExporter, createMetricsRegistry, DEFAULT_LATENCY_BUCKETS, DEFAULT_TOKEN_BUCKETS, defaultMetricsRegistry, type Gauge, type Histogram, type HistogramBucket, type HistogramData, type MetricLabels, type MetricPoint, type MetricsExporter, type MetricsRegistry, type MetricsRegistryOptions, type MetricType, setDefaultMetricsRegistry, } from "./metrics.js";
|
|
52
|
+
export { createObservabilityPreset, type ObservabilityPreset, type ObservabilityPresetOptions, } from "./preset.js";
|
|
53
|
+
export { createStreamingLogTransport, createStreamingObservability, type StreamingLogTransportOptions, type StreamingObservabilityOptions, } from "./streaming.js";
|
|
54
|
+
export { createCallbackSpanExporter, createConsoleSpanExporter, createMemorySpanExporter, createOTLPSpanExporter, createTracer, defaultTracer, SemanticAttributes, type Span, type SpanAttributes, type SpanContext, type SpanData, type SpanEvent, type SpanExporter, type SpanKind, type SpanLink, type SpanStatus, type SpanStatusCode, type StartSpanOptions, setDefaultTracer, type Tracer, type TracerOptions, } from "./tracing.js";
|
|
55
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/observability/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAGH,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,qBAAqB,EACrB,sBAAsB,EAEtB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,eAAe,EAEpB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EAEvB,sBAAsB,EACtB,uBAAuB,EAEvB,mBAAmB,EAEnB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,aAAa,EAElB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EAEZ,kBAAkB,EAClB,6BAA6B,EAE7B,4BAA4B,EAC5B,2BAA2B,EAE3B,qBAAqB,EAErB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAE3B,KAAK,UAAU,EACf,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,yBAAyB,EACzB,KAAK,mBAAmB,EACxB,KAAK,0BAA0B,GAChC,MAAM,aAAa,CAAC;AAGrB,OAAO,EAEL,2BAA2B,EAC3B,4BAA4B,EAE5B,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,GACnC,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,0BAA0B,EAE1B,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EAEtB,YAAY,EAEZ,aAAa,EAEb,kBAAkB,EAClB,KAAK,IAAI,EACT,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EAEf,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,gBAAgB,EAChB,KAAK,MAAM,EACX,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Observability Module.
|
|
3
|
+
*
|
|
4
|
+
* Provides comprehensive observability features for the agent SDK:
|
|
5
|
+
* - **Logging**: Structured logging with levels, formatters, and transports
|
|
6
|
+
* - **Metrics**: Counters, gauges, histograms for performance tracking
|
|
7
|
+
* - **Tracing**: OpenTelemetry-compatible distributed tracing
|
|
8
|
+
* - **Hooks**: Pre-built hooks for integrating observability with agents
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import {
|
|
13
|
+
* createLogger,
|
|
14
|
+
* createMetricsRegistry,
|
|
15
|
+
* createAgentMetrics,
|
|
16
|
+
* createTracer,
|
|
17
|
+
* createObservabilityHooks,
|
|
18
|
+
* registerObservabilityHooks,
|
|
19
|
+
* } from "@lleverage-ai/agent-sdk";
|
|
20
|
+
*
|
|
21
|
+
* // Set up observability
|
|
22
|
+
* const logger = createLogger({ name: "my-agent", level: "info" });
|
|
23
|
+
* const registry = createMetricsRegistry();
|
|
24
|
+
* const metrics = createAgentMetrics(registry);
|
|
25
|
+
* const tracer = createTracer({
|
|
26
|
+
* name: "my-agent",
|
|
27
|
+
* exporters: [createConsoleSpanExporter()],
|
|
28
|
+
* });
|
|
29
|
+
*
|
|
30
|
+
* // Create and register hooks
|
|
31
|
+
* const observabilityHooks = createObservabilityHooks({
|
|
32
|
+
* logger,
|
|
33
|
+
* metrics,
|
|
34
|
+
* tracer,
|
|
35
|
+
* });
|
|
36
|
+
*
|
|
37
|
+
* const hookManager = createHookManager();
|
|
38
|
+
* registerObservabilityHooks(hookManager, observabilityHooks);
|
|
39
|
+
*
|
|
40
|
+
* // Create agent with observability
|
|
41
|
+
* const agent = createAgent({
|
|
42
|
+
* model,
|
|
43
|
+
* hooks: hookManager,
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* @packageDocumentation
|
|
48
|
+
*/
|
|
49
|
+
// Events
|
|
50
|
+
export { createObservabilityEventHooks, createObservabilityEventStore, exportEventsJSONLines, exportEventsPrometheus,
|
|
51
|
+
// Functions
|
|
52
|
+
toStructuredEvent, } from "./events.js";
|
|
53
|
+
// Logger
|
|
54
|
+
export { createCallbackTransport,
|
|
55
|
+
// Transports
|
|
56
|
+
createConsoleTransport, createFilteredTransport,
|
|
57
|
+
// Formatters
|
|
58
|
+
createJsonFormatter,
|
|
59
|
+
// Logger
|
|
60
|
+
createLogger, createMemoryTransport, createPrettyFormatter, defaultLogger, LOG_LEVEL_VALUES, setDefaultLogger, } from "./logger.js";
|
|
61
|
+
// Metrics
|
|
62
|
+
export {
|
|
63
|
+
// Agent Metrics
|
|
64
|
+
createAgentMetrics, createCallbackMetricsExporter,
|
|
65
|
+
// Exporters
|
|
66
|
+
createConsoleMetricsExporter, createMemoryMetricsExporter,
|
|
67
|
+
// Registry
|
|
68
|
+
createMetricsRegistry,
|
|
69
|
+
// Constants
|
|
70
|
+
DEFAULT_LATENCY_BUCKETS, DEFAULT_TOKEN_BUCKETS, defaultMetricsRegistry, setDefaultMetricsRegistry, } from "./metrics.js";
|
|
71
|
+
// Preset
|
|
72
|
+
export { createObservabilityPreset, } from "./preset.js";
|
|
73
|
+
// Streaming
|
|
74
|
+
export {
|
|
75
|
+
// Factories
|
|
76
|
+
createStreamingLogTransport, createStreamingObservability, } from "./streaming.js";
|
|
77
|
+
// Tracing
|
|
78
|
+
export { createCallbackSpanExporter,
|
|
79
|
+
// Exporters
|
|
80
|
+
createConsoleSpanExporter, createMemorySpanExporter, createOTLPSpanExporter,
|
|
81
|
+
// Tracer
|
|
82
|
+
createTracer,
|
|
83
|
+
// Default
|
|
84
|
+
defaultTracer,
|
|
85
|
+
// Semantic Conventions
|
|
86
|
+
SemanticAttributes, setDefaultTracer, } from "./tracing.js";
|
|
87
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/observability/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,SAAS;AACT,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAG7B,qBAAqB,EACrB,sBAAsB;AAMtB,YAAY;AACZ,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,SAAS;AACT,OAAO,EACL,uBAAuB;AACvB,aAAa;AACb,sBAAsB,EACtB,uBAAuB;AACvB,aAAa;AACb,mBAAmB;AACnB,SAAS;AACT,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAShB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,UAAU;AACV,OAAO;AAGL,gBAAgB;AAChB,kBAAkB,EAClB,6BAA6B;AAC7B,YAAY;AACZ,4BAA4B,EAC5B,2BAA2B;AAC3B,WAAW;AACX,qBAAqB;AACrB,YAAY;AACZ,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EAYtB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AACtB,SAAS;AACT,OAAO,EACL,yBAAyB,GAG1B,MAAM,aAAa,CAAC;AAErB,YAAY;AACZ,OAAO;AACL,YAAY;AACZ,2BAA2B,EAC3B,4BAA4B,GAI7B,MAAM,gBAAgB,CAAC;AAExB,UAAU;AACV,OAAO,EACL,0BAA0B;AAC1B,YAAY;AACZ,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB;AACtB,SAAS;AACT,YAAY;AACZ,UAAU;AACV,aAAa;AACb,uBAAuB;AACvB,kBAAkB,EAalB,gBAAgB,GAGjB,MAAM,cAAc,CAAC"}
|