observability-toolkit 1.3.0 → 1.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/README.md +52 -3
- package/dist/backends/index.d.ts +15 -0
- package/dist/backends/index.d.ts.map +1 -1
- package/dist/backends/local-jsonl.d.ts +27 -0
- package/dist/backends/local-jsonl.d.ts.map +1 -1
- package/dist/backends/local-jsonl.js +202 -30
- package/dist/backends/local-jsonl.js.map +1 -1
- package/dist/backends/local-jsonl.test.js +1081 -1
- package/dist/backends/local-jsonl.test.js.map +1 -1
- package/dist/backends/signoz-api.d.ts.map +1 -1
- package/dist/backends/signoz-api.integration.test.d.ts +8 -0
- package/dist/backends/signoz-api.integration.test.d.ts.map +1 -0
- package/dist/backends/signoz-api.integration.test.js +137 -0
- package/dist/backends/signoz-api.integration.test.js.map +1 -0
- package/dist/backends/signoz-api.js +58 -42
- package/dist/backends/signoz-api.js.map +1 -1
- package/dist/backends/signoz-api.test.js +504 -328
- package/dist/backends/signoz-api.test.js.map +1 -1
- package/dist/lib/constants.d.ts +27 -0
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +70 -0
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/constants.test.js +183 -1
- package/dist/lib/constants.test.js.map +1 -1
- package/dist/lib/file-utils.d.ts +53 -1
- package/dist/lib/file-utils.d.ts.map +1 -1
- package/dist/lib/file-utils.js +142 -3
- package/dist/lib/file-utils.js.map +1 -1
- package/dist/lib/file-utils.test.js +228 -1
- package/dist/lib/file-utils.test.js.map +1 -1
- package/dist/server.js +48 -65
- package/dist/server.js.map +1 -1
- package/dist/server.test.d.ts +5 -0
- package/dist/server.test.d.ts.map +1 -0
- package/dist/server.test.js +547 -0
- package/dist/server.test.js.map +1 -0
- package/dist/tools/context-stats.test.js +126 -0
- package/dist/tools/context-stats.test.js.map +1 -1
- package/dist/tools/get-trace-url.d.ts.map +1 -1
- package/dist/tools/get-trace-url.js +5 -1
- package/dist/tools/get-trace-url.js.map +1 -1
- package/dist/tools/get-trace-url.test.js +12 -6
- package/dist/tools/get-trace-url.test.js.map +1 -1
- package/dist/tools/health-check.d.ts +9 -2
- package/dist/tools/health-check.d.ts.map +1 -1
- package/dist/tools/health-check.js +66 -27
- package/dist/tools/health-check.js.map +1 -1
- package/dist/tools/health-check.test.js +89 -96
- package/dist/tools/health-check.test.js.map +1 -1
- package/dist/tools/query-llm-events.d.ts +2 -2
- package/dist/tools/query-llm-events.js +3 -3
- package/dist/tools/query-llm-events.js.map +1 -1
- package/dist/tools/query-logs.d.ts +8 -6
- package/dist/tools/query-logs.d.ts.map +1 -1
- package/dist/tools/query-logs.js +5 -5
- package/dist/tools/query-logs.js.map +1 -1
- package/dist/tools/query-logs.test.js +22 -2
- package/dist/tools/query-logs.test.js.map +1 -1
- package/dist/tools/query-metrics.d.ts +12 -14
- package/dist/tools/query-metrics.d.ts.map +1 -1
- package/dist/tools/query-metrics.js +11 -13
- package/dist/tools/query-metrics.js.map +1 -1
- package/dist/tools/query-metrics.test.js +134 -96
- package/dist/tools/query-metrics.test.js.map +1 -1
- package/dist/tools/query-traces.d.ts +16 -17
- package/dist/tools/query-traces.d.ts.map +1 -1
- package/dist/tools/query-traces.js +11 -14
- package/dist/tools/query-traces.js.map +1 -1
- package/dist/tools/query-traces.test.js +144 -48
- package/dist/tools/query-traces.test.js.map +1 -1
- package/dist/tools/setup-claudeignore.d.ts +36 -10
- package/dist/tools/setup-claudeignore.d.ts.map +1 -1
- package/dist/tools/setup-claudeignore.js +193 -33
- package/dist/tools/setup-claudeignore.js.map +1 -1
- package/dist/tools/setup-claudeignore.test.js +286 -41
- package/dist/tools/setup-claudeignore.test.js.map +1 -1
- package/dist/tools/signoz.integration.test.d.ts +8 -0
- package/dist/tools/signoz.integration.test.d.ts.map +1 -0
- package/dist/tools/signoz.integration.test.js +141 -0
- package/dist/tools/signoz.integration.test.js.map +1 -0
- package/package.json +6 -3
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration tests for SigNoz-dependent tools
|
|
3
|
+
*
|
|
4
|
+
* These tests connect to a real SigNoz instance when configured.
|
|
5
|
+
* They skip gracefully when SIGNOZ_URL and SIGNOZ_API_KEY are not set.
|
|
6
|
+
*/
|
|
7
|
+
import { describe, it } from 'node:test';
|
|
8
|
+
import assert from 'node:assert';
|
|
9
|
+
import { SIGNOZ_URL, SIGNOZ_API_KEY, SIGNOZ_QUERY_URL } from '../lib/constants.js';
|
|
10
|
+
import { healthCheck } from './health-check.js';
|
|
11
|
+
import { getTraceUrl } from './get-trace-url.js';
|
|
12
|
+
import { queryTraces } from './query-traces.js';
|
|
13
|
+
import { queryLogs } from './query-logs.js';
|
|
14
|
+
import { queryMetrics } from './query-metrics.js';
|
|
15
|
+
// Check if SigNoz Query API is configured (SIGNOZ_QUERY_URL required for queries)
|
|
16
|
+
const SIGNOZ_QUERY_CONFIGURED = !!(SIGNOZ_QUERY_URL && SIGNOZ_API_KEY);
|
|
17
|
+
// Check if SigNoz ingest is configured (for health check)
|
|
18
|
+
const SIGNOZ_CONFIGURED = !!(SIGNOZ_URL && SIGNOZ_API_KEY);
|
|
19
|
+
describe('Tool Integration Tests (SigNoz)', { skip: !SIGNOZ_QUERY_CONFIGURED }, () => {
|
|
20
|
+
describe('healthCheck with SigNoz', () => {
|
|
21
|
+
it('should include SigNoz status in health check', async () => {
|
|
22
|
+
const result = await healthCheck({ verbose: true });
|
|
23
|
+
assert.strictEqual(typeof result, 'object');
|
|
24
|
+
assert('backends' in result);
|
|
25
|
+
assert('signoz' in result.backends);
|
|
26
|
+
assert.strictEqual(result.backends.signoz.configured, true);
|
|
27
|
+
assert(['ok', 'error'].includes(result.backends.signoz.status));
|
|
28
|
+
console.log(` SigNoz status: ${result.backends.signoz.status}`);
|
|
29
|
+
if (result.backends.signoz.message) {
|
|
30
|
+
console.log(` Message: ${result.backends.signoz.message}`);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
it('should report degraded status if SigNoz fails', async () => {
|
|
34
|
+
const result = await healthCheck({ verbose: false });
|
|
35
|
+
// When SigNoz is configured, overall status depends on both backends
|
|
36
|
+
assert(['healthy', 'degraded', 'unhealthy'].includes(result.status));
|
|
37
|
+
console.log(` Overall status: ${result.status}`);
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
describe('getTraceUrl with SigNoz', () => {
|
|
41
|
+
it('should generate trace URL for valid trace ID', async () => {
|
|
42
|
+
// First, get a real trace ID from SigNoz
|
|
43
|
+
const traces = await queryTraces({ backend: 'signoz', limit: 1 });
|
|
44
|
+
if (traces.count > 0 && traces.traces.length > 0) {
|
|
45
|
+
const traceId = traces.traces[0].traceId;
|
|
46
|
+
const result = await getTraceUrl({ traceId });
|
|
47
|
+
assert('url' in result);
|
|
48
|
+
assert(result.url && result.url.includes(traceId));
|
|
49
|
+
console.log(` Generated URL for trace: ${traceId.substring(0, 16)}...`);
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
console.log(' No traces found to test URL generation');
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
it('should handle non-existent trace ID gracefully', async () => {
|
|
56
|
+
const result = await getTraceUrl({ traceId: 'nonexistent-trace-id-12345' });
|
|
57
|
+
// Should still return a URL (validation happens on SigNoz side)
|
|
58
|
+
assert('url' in result || 'error' in result);
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
describe('queryTraces with SigNoz backend', () => {
|
|
62
|
+
it('should query traces from SigNoz', async () => {
|
|
63
|
+
const result = await queryTraces({ backend: 'signoz', limit: 5 });
|
|
64
|
+
assert.strictEqual(result.backend, 'signoz');
|
|
65
|
+
assert(typeof result.count === 'number');
|
|
66
|
+
assert(Array.isArray(result.traces));
|
|
67
|
+
console.log(` Found ${result.count} traces via SigNoz`);
|
|
68
|
+
});
|
|
69
|
+
it('should filter traces by duration', async () => {
|
|
70
|
+
const result = await queryTraces({
|
|
71
|
+
backend: 'signoz',
|
|
72
|
+
minDurationMs: 100,
|
|
73
|
+
limit: 5,
|
|
74
|
+
});
|
|
75
|
+
assert.strictEqual(result.backend, 'signoz');
|
|
76
|
+
console.log(` Found ${result.count} traces with duration >= 100ms`);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
describe('queryLogs with SigNoz backend', () => {
|
|
80
|
+
it('should query logs from SigNoz', async () => {
|
|
81
|
+
const result = await queryLogs({ backend: 'signoz', limit: 5 });
|
|
82
|
+
assert.strictEqual(result.backend, 'signoz');
|
|
83
|
+
assert(typeof result.count === 'number');
|
|
84
|
+
assert(Array.isArray(result.logs));
|
|
85
|
+
console.log(` Found ${result.count} logs via SigNoz`);
|
|
86
|
+
});
|
|
87
|
+
it('should filter logs by severity', async () => {
|
|
88
|
+
const result = await queryLogs({
|
|
89
|
+
backend: 'signoz',
|
|
90
|
+
severity: 'INFO',
|
|
91
|
+
limit: 5,
|
|
92
|
+
});
|
|
93
|
+
assert.strictEqual(result.backend, 'signoz');
|
|
94
|
+
console.log(` Found ${result.count} INFO logs`);
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
describe('queryMetrics with SigNoz backend', () => {
|
|
98
|
+
it('should query metrics from SigNoz', async () => {
|
|
99
|
+
const result = await queryMetrics({
|
|
100
|
+
backend: 'signoz',
|
|
101
|
+
metricName: 'signoz_calls_total',
|
|
102
|
+
limit: 5,
|
|
103
|
+
});
|
|
104
|
+
assert.strictEqual(result.backend, 'signoz');
|
|
105
|
+
assert(typeof result.count === 'number');
|
|
106
|
+
console.log(` Found ${result.count} metric data points via SigNoz`);
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
describe('Tool Integration (No SigNoz Query)', { skip: SIGNOZ_QUERY_CONFIGURED || !SIGNOZ_CONFIGURED }, () => {
|
|
111
|
+
// This test only runs when ingest is configured but query is not
|
|
112
|
+
it('should show SigNoz configured but query unavailable', async () => {
|
|
113
|
+
const result = await healthCheck({ verbose: false });
|
|
114
|
+
// Ingest URL is configured, so healthCheck shows it as configured
|
|
115
|
+
// But query operations will fail without SIGNOZ_QUERY_URL
|
|
116
|
+
console.log(` SigNoz ingest configured: ${result.backends.signoz.configured}`);
|
|
117
|
+
console.log(` SigNoz status: ${result.backends.signoz.status}`);
|
|
118
|
+
assert(true);
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
describe('Tool Integration (No SigNoz At All)', { skip: SIGNOZ_CONFIGURED }, () => {
|
|
122
|
+
it('should handle missing SigNoz configuration gracefully', async () => {
|
|
123
|
+
const result = await healthCheck({ verbose: false });
|
|
124
|
+
assert.strictEqual(result.backends.signoz.configured, false);
|
|
125
|
+
assert.strictEqual(result.backends.signoz.status, 'not_configured');
|
|
126
|
+
console.log(' SigNoz not configured - tools handle gracefully');
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
describe('SigNoz Tool Configuration Check', () => {
|
|
130
|
+
it('should report SigNoz configuration status', () => {
|
|
131
|
+
if (SIGNOZ_QUERY_CONFIGURED) {
|
|
132
|
+
console.log(' SigNoz Query API configured - tool integration tests will run');
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
console.log(' SigNoz Query API not configured - tool integration tests skipped');
|
|
136
|
+
console.log(' Set SIGNOZ_QUERY_URL and SIGNOZ_API_KEY to enable');
|
|
137
|
+
}
|
|
138
|
+
assert(true);
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
//# sourceMappingURL=signoz.integration.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signoz.integration.test.js","sourceRoot":"","sources":["../../src/tools/signoz.integration.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "observability-toolkit",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "MCP server for observability tooling - query traces, metrics, logs from local JSONL or SigNoz",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/server.js",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"build": "tsc",
|
|
12
12
|
"watch": "tsc --watch",
|
|
13
13
|
"start": "node dist/server.js",
|
|
14
|
-
"test": "node --test dist/**/*.test.js"
|
|
14
|
+
"test": "node --test dist/*.test.js dist/**/*.test.js"
|
|
15
15
|
},
|
|
16
16
|
"keywords": [
|
|
17
17
|
"mcp",
|
|
@@ -26,8 +26,11 @@
|
|
|
26
26
|
"author": "Alyshia Ledlie",
|
|
27
27
|
"license": "MIT",
|
|
28
28
|
"dependencies": {
|
|
29
|
+
"@modelcontextprotocol/ext-apps": "^1.0.1",
|
|
29
30
|
"@modelcontextprotocol/sdk": "^1.11.2",
|
|
30
|
-
"
|
|
31
|
+
"mcp-remote": "^0.1.37",
|
|
32
|
+
"zod": "^3.24.2",
|
|
33
|
+
"zod-to-json-schema": "^3.25.1"
|
|
31
34
|
},
|
|
32
35
|
"devDependencies": {
|
|
33
36
|
"@types/node": "^22.15.21",
|