@xiaohao0725/logs-sdk 0.3.3 → 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/client.d.ts CHANGED
@@ -16,6 +16,8 @@ export declare class LogSDK {
16
16
  expressMiddleware(): any;
17
17
  /** 获取 Koa 中间件 */
18
18
  koaMiddleware(): any;
19
+ /** 获取 Fastify 插件 */
20
+ fastifyPlugin(): any;
19
21
  /** 异步发送一批日志(包装重试) */
20
22
  private flushEntries;
21
23
  /** 重传离线缓存的日志 */
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAItE,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,UAAU,CAA+C;IACjE,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,GAAG,CAAS;gBAER,MAAM,EAAE,YAAY;IAsBhC,wBAAwB;IACxB,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAe3B,sBAAsB;IAChB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB5B,6CAA6C;IAC7C,iBAAiB;IAMjB,iBAAiB;IACjB,aAAa;IAQb,qBAAqB;YACP,YAAY;IAW1B,gBAAgB;IACV,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAOnC,uBAAuB;YACT,SAAS;IA6BvB,4BAA4B;IAC5B,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF;AAmBD,+BAA+B;AAC/B,wBAAgB,UAAU,IAAI,MAAM,CAEnC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAKtE,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,UAAU,CAA+C;IACjE,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,GAAG,CAAS;gBAER,MAAM,EAAE,YAAY;IAsBhC,wBAAwB;IACxB,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAe3B,sBAAsB;IAChB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB5B,6CAA6C;IAC7C,iBAAiB;IAMjB,iBAAiB;IACjB,aAAa;IAMb,oBAAoB;IACpB,aAAa;IAQb,qBAAqB;YACP,YAAY;IAW1B,gBAAgB;IACV,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAOnC,uBAAuB;YACT,SAAS;IA8BvB,4BAA4B;IAC5B,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF;AAmBD,+BAA+B;AAC/B,wBAAgB,UAAU,IAAI,MAAM,CAEnC"}
package/dist/client.js CHANGED
@@ -42,6 +42,7 @@ const buffer_1 = require("./buffer");
42
42
  const offline_1 = require("./offline");
43
43
  const retry_1 = require("./retry");
44
44
  const VERSION = '0.1.0';
45
+ const hash_1 = require("./hash");
45
46
  class LogSDK {
46
47
  config;
47
48
  buffer;
@@ -116,6 +117,12 @@ class LogSDK {
116
117
  const { createKoaMiddleware } = require('./middleware/koa');
117
118
  return createKoaMiddleware(this);
118
119
  }
120
+ /** 获取 Fastify 插件 */
121
+ fastifyPlugin() {
122
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
123
+ const { createFastifyPlugin } = require('./middleware/fastify');
124
+ return createFastifyPlugin(this);
125
+ }
119
126
  // ──────────────── 内部方法 ────────────────
120
127
  /** 异步发送一批日志(包装重试) */
121
128
  async flushEntries(entries) {
@@ -151,6 +158,7 @@ class LogSDK {
151
158
  'X-API-Secret': this.config.apiSecret,
152
159
  'X-SDK-Version': VERSION,
153
160
  'X-SDK-Type': 'node',
161
+ 'X-SDK-Hash': hash_1.SDK_HASH,
154
162
  'User-Agent': `logs-sdk-js/${VERSION}`,
155
163
  },
156
164
  body,
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/hash.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare const SDK_HASH = "f6ef931d86a279ee59f04686d99ee8d41771193a";
2
+ //# sourceMappingURL=hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../src/hash.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,6CAA6C,CAAC"}
package/dist/hash.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SDK_HASH = void 0;
4
+ exports.SDK_HASH = 'f6ef931d86a279ee59f04686d99ee8d41771193a';
5
+ //# sourceMappingURL=hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../src/hash.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG,0CAA0C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,SAAS,EACT,cAAc,GACf,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,SAAS,EACT,cAAc,GACf,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  // 日志管理平台 Node.js SDK 入口
3
- // 提供 Express/Koa 中间件,一行代码接入日志采集
3
+ // 提供 Express/Koa/Fastify 中间件,一行代码接入日志采集
4
4
  //
5
5
  // 使用方法:
6
6
  //
@@ -14,8 +14,9 @@
14
14
  // environment: 'production',
15
15
  // });
16
16
  //
17
- // app.use(logger.expressMiddleware()); // Express
18
- // app.use(logger.koaMiddleware()); // Koa
17
+ // app.use(logger.expressMiddleware()); // Express
18
+ // app.use(logger.koaMiddleware()); // Koa
19
+ // app.register(logger.fastifyPlugin()); // Fastify
19
20
  Object.defineProperty(exports, "__esModule", { value: true });
20
21
  exports.retryWithBackoff = exports.OfflineCache = exports.RingBuffer = exports.newLogUUID = exports.LogSDK = void 0;
21
22
  var client_1 = require("./client");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,wBAAwB;AACxB,gCAAgC;AAChC,EAAE;AACF,QAAQ;AACR,EAAE;AACF,oDAAoD;AACpD,EAAE;AACF,gCAAgC;AAChC,iEAAiE;AACjE,6BAA6B;AAC7B,gCAAgC;AAChC,iCAAiC;AACjC,iCAAiC;AACjC,QAAQ;AACR,EAAE;AACF,qDAAqD;AACrD,iDAAiD;;;AAEjD,mCAA8C;AAArC,gGAAA,MAAM,OAAA;AAAE,oGAAA,UAAU,OAAA;AAC3B,mCAAsC;AAA7B,oGAAA,UAAU,OAAA;AACnB,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AACrB,iCAA2C;AAAlC,yGAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,wBAAwB;AACxB,wCAAwC;AACxC,EAAE;AACF,QAAQ;AACR,EAAE;AACF,oDAAoD;AACpD,EAAE;AACF,gCAAgC;AAChC,iEAAiE;AACjE,6BAA6B;AAC7B,gCAAgC;AAChC,iCAAiC;AACjC,iCAAiC;AACjC,QAAQ;AACR,EAAE;AACF,0DAA0D;AAC1D,sDAAsD;AACtD,0DAA0D;;;AAE1D,mCAA8C;AAArC,gGAAA,MAAM,OAAA;AAAE,oGAAA,UAAU,OAAA;AAC3B,mCAAsC;AAA7B,oGAAA,UAAU,OAAA;AACnB,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AACrB,iCAA2C;AAAlC,yGAAA,gBAAgB,OAAA"}
@@ -0,0 +1,8 @@
1
+ import type { FastifyInstance, HookHandlerDoneFunction } from 'fastify';
2
+ import type { LogSDK } from '../client';
3
+ /**
4
+ * 创建 Fastify 日志采集插件。
5
+ * 自动采集:请求头/体、响应头/体、客户端信息、错误堆栈、耗时统计。
6
+ */
7
+ export declare function createFastifyPlugin(sdk: LogSDK): (fastify: FastifyInstance, _opts: Record<string, unknown>, done: HookHandlerDoneFunction) => void;
8
+ //# sourceMappingURL=fastify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fastify.d.ts","sourceRoot":"","sources":["../../src/middleware/fastify.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAgC,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACtG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAIxC;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,IAI3C,SAAS,eAAe,EACxB,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,MAAM,uBAAuB,UA8ChC"}
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createFastifyPlugin = createFastifyPlugin;
4
+ const client_1 = require("../client");
5
+ /**
6
+ * 创建 Fastify 日志采集插件。
7
+ * 自动采集:请求头/体、响应头/体、客户端信息、错误堆栈、耗时统计。
8
+ */
9
+ function createFastifyPlugin(sdk) {
10
+ const config = sdk.configResolved;
11
+ return function fastifyLogsPlugin(fastify, _opts, done) {
12
+ // 记录请求开始时间
13
+ fastify.decorateRequest('_logsStartTime', 0);
14
+ fastify.decorateRequest('_logsUUID', '');
15
+ fastify.addHook('onRequest', async (request) => {
16
+ request._logsStartTime = Date.now();
17
+ request._logsStartHrTime = process.hrtime.bigint();
18
+ request._logsUUID = (0, client_1.newLogUUID)();
19
+ });
20
+ // 响应发送时采集日志
21
+ fastify.addHook('onSend', async (request, reply, payload) => {
22
+ const startTime = request._logsStartTime;
23
+ const startHrTime = request._logsStartHrTime;
24
+ const entryUUID = request._logsUUID;
25
+ if (!startTime)
26
+ return payload;
27
+ const durationMs = Number(process.hrtime.bigint() - startHrTime) / 1_000_000;
28
+ const reqBody = captureFastifyBody(request, config.maxBodySize);
29
+ const respBody = captureFastifyResponse(payload, config.maxBodySize);
30
+ const entry = buildFastifyEntry(request, reply, entryUUID, startTime, durationMs, reqBody, respBody, config, sdk.host);
31
+ if (reply.statusCode >= 500) {
32
+ entry.is_error = true;
33
+ entry.tls_version = request.raw.socket?.getProtocol?.() || '';
34
+ entry.tls_cipher = request.raw.socket?.getCipher?.()?.name || '';
35
+ entry.proto = request.raw.httpVersion;
36
+ entry.api_version = extractFastifyVersion(request.routeOptions?.url || request.url);
37
+ entry.referer = request.headers.referer || '';
38
+ entry.request_id = entryUUID.slice(0, 8);
39
+ entry.error_type = 'http_error';
40
+ }
41
+ sdk.send(entry);
42
+ return payload;
43
+ });
44
+ done();
45
+ };
46
+ }
47
+ /** 从 Fastify Request 构建 LogEntry */
48
+ function buildFastifyEntry(request, reply, uuid, startTime, durationMs, reqBody, respBody, config, host) {
49
+ const scheme = request.protocol;
50
+ const fullURL = `${scheme}://${request.hostname}${request.url}`;
51
+ return {
52
+ uuid,
53
+ timestamp: new Date(startTime).toISOString(),
54
+ duration_ms: Math.round(durationMs),
55
+ method: request.method,
56
+ scheme,
57
+ full_url: fullURL,
58
+ host_header: request.hostname || '',
59
+ path: request.routeOptions?.url || request.url.split('?')[0],
60
+ query_string: JSON.stringify(request.query),
61
+ origin: detectFastifyOrigin(request),
62
+ request_headers: sanitizeFastifyHeaders(request.headers),
63
+ request_body: truncate(reqBody, config.maxBodySize),
64
+ request_body_size: Buffer.byteLength(reqBody),
65
+ content_type: request.headers['content-type'] || '',
66
+ status_code: reply.statusCode,
67
+ response_headers: sanitizeFastifyHeaders(reply.getHeaders()),
68
+ response_body: truncate(respBody, config.maxBodySize),
69
+ response_body_size: Buffer.byteLength(respBody),
70
+ client_ip: request.ip,
71
+ client_ip_chain: request.headers['x-forwarded-for'] || '',
72
+ client_type: detectFastifyClientType(request),
73
+ client_port: 0,
74
+ user_agent: request.headers['user-agent'] || '',
75
+ is_error: false,
76
+ error_message: '',
77
+ error_type: '',
78
+ error_stack: '',
79
+ trace_id: request.headers['x-trace-id'] || uuid,
80
+ span_id: uuid,
81
+ parent_span_id: request.headers['x-parent-span-id'] || '',
82
+ user_id: request.headers['x-user-id'] || '',
83
+ session_id: request.headers['x-session-id'] || '',
84
+ project_slug: config.projectSlug,
85
+ environment: config.environment,
86
+ service_name: config.serviceName || '',
87
+ host,
88
+ process_id: String(process.pid),
89
+ tags: {},
90
+ };
91
+ }
92
+ function detectFastifyClientType(request) {
93
+ const ct = request.headers['x-client-type'];
94
+ if (ct)
95
+ return ct;
96
+ const ua = (request.headers['user-agent'] || '').toLowerCase();
97
+ if (ua.includes('micromessenger') || ua.includes('miniprogram'))
98
+ return 'miniprogram';
99
+ if (request.headers['x-caller-service'])
100
+ return 'server';
101
+ const referer = request.headers.referer;
102
+ const origin = request.headers.origin;
103
+ if ((referer || origin) && (ua.includes('mozilla') || ua.includes('chrome') || ua.includes('safari') || ua.includes('firefox'))) {
104
+ return 'web';
105
+ }
106
+ return 'other';
107
+ }
108
+ function detectFastifyOrigin(request) {
109
+ switch (detectFastifyClientType(request)) {
110
+ case 'web': return (request.headers.referer || request.headers.origin || '');
111
+ case 'miniprogram': return `miniprogram:${request.headers['x-miniprogram-appid'] || ''}${request.headers['x-miniprogram-path'] || ''}`;
112
+ case 'app': return `app:${request.headers['x-app-name'] || ''}/${request.headers['x-app-version'] || ''}/${request.headers['x-app-scene'] || ''}`;
113
+ case 'server': return `server:${request.headers['x-caller-service'] || ''}/${request.headers['x-caller-version'] || ''}`;
114
+ default: return 'unknown';
115
+ }
116
+ }
117
+ function sanitizeFastifyHeaders(headers) {
118
+ const safe = {};
119
+ for (const [k, v] of Object.entries(headers)) {
120
+ if (v === undefined || v === null)
121
+ continue;
122
+ const val = Array.isArray(v) ? v.join(', ') : String(v);
123
+ if (['authorization', 'cookie', 'set-cookie'].includes(k.toLowerCase())) {
124
+ safe[k] = val.length > 20 ? val.slice(0, 15) + '...' : '***';
125
+ continue;
126
+ }
127
+ safe[k] = val;
128
+ }
129
+ return JSON.stringify(safe);
130
+ }
131
+ function captureFastifyBody(request, maxSize) {
132
+ try {
133
+ if (request.body) {
134
+ if (typeof request.body === 'string')
135
+ return truncate(request.body, maxSize);
136
+ return truncate(JSON.stringify(request.body), maxSize);
137
+ }
138
+ }
139
+ catch { /* 忽略无法读取的请求体 */ }
140
+ return '';
141
+ }
142
+ function captureFastifyResponse(payload, maxSize) {
143
+ try {
144
+ if (typeof payload === 'string')
145
+ return truncate(payload, maxSize);
146
+ if (Buffer.isBuffer(payload))
147
+ return truncate(payload.toString('utf-8'), maxSize);
148
+ if (payload && typeof payload === 'object')
149
+ return truncate(JSON.stringify(payload), maxSize);
150
+ return truncate(String(payload || ''), maxSize);
151
+ }
152
+ catch {
153
+ return '';
154
+ }
155
+ }
156
+ function truncate(s, maxLen) {
157
+ if (s.length <= maxLen)
158
+ return s;
159
+ return s.slice(0, maxLen) + '...[truncated]';
160
+ }
161
+ function extractFastifyVersion(path) {
162
+ if (!path)
163
+ return '';
164
+ const m = path.match(/\/api\/(v\d+)\//);
165
+ return m ? m[1] : '';
166
+ }
167
+ //# sourceMappingURL=fastify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../src/middleware/fastify.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@xiaohao0725/logs-sdk",
3
- "version": "0.3.3",
4
- "description": "日志管理平台 Node.js SDK,提供 Express/Koa 中间件,自动采集 HTTP 请求日志并上报",
3
+ "version": "0.4.0",
4
+ "description": "日志管理平台 Node.js SDK,提供 Express/Koa/Fastify 中间件,自动采集 HTTP 请求日志并上报",
5
5
  "publishConfig": {
6
6
  "access": "public",
7
7
  "registry": "https://registry.npmjs.org"
@@ -22,6 +22,7 @@
22
22
  "middleware",
23
23
  "express",
24
24
  "koa",
25
+ "fastify",
25
26
  "logging"
26
27
  ],
27
28
  "license": "UNLICENSED",
@@ -33,10 +34,12 @@
33
34
  "@types/koa": "^2.15.0",
34
35
  "@types/node": "^24.12.3",
35
36
  "@types/uuid": "^10.0.0",
37
+ "fastify": "^5.9.0",
36
38
  "typescript": "~5.8.0"
37
39
  },
38
40
  "peerDependencies": {
39
41
  "express": "^4.0.0 || ^5.0.0",
42
+ "fastify": "^4.0.0 || ^5.0.0",
40
43
  "koa": "^2.0.0"
41
44
  },
42
45
  "peerDependenciesMeta": {
@@ -45,6 +48,9 @@
45
48
  },
46
49
  "koa": {
47
50
  "optional": true
51
+ },
52
+ "fastify": {
53
+ "optional": true
48
54
  }
49
55
  },
50
56
  "engines": {