Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
276 lines
6.0 KiB
Markdown
276 lines
6.0 KiB
Markdown
# Node.js 蜷守ォッ - pino-pretty 髣ョ鬚倅ソョ螟崎ョー蠖<EFBDB0>
|
||
|
||
> **菫ョ螟肴慮髣エ**<2A>?025-12-24
|
||
> **髣ョ鬚伜次蝗<E6ACA1>**<2A>夂函莠ァ邇ッ蠅<EFBDAF>スソ逕ィ莠<EFBDA8>シ蜿台セ晁オ朴ino-pretty
|
||
> **隗」蜀ウ譁ケ譯<EFBDB9>**<2A>壽<EFBFBD>ケ謐ョ邇ッ蠅<EFBDAF>序驥乗擅莉カ蛹紋スソ逕ィpino-pretty
|
||
|
||
---
|
||
|
||
## <20>菅 髣ョ鬚俶緒霑ー
|
||
|
||
### 髞呵ッッ菫。諱ッ
|
||
```
|
||
Error: unable to determine transport target for "pino-pretty"
|
||
at fixTarget (/app/node_modules/pino/lib/transport.js:160:13)
|
||
```
|
||
|
||
### 譬ケ譛ャ蜴溷屏
|
||
1. `pino-pretty` 譏ッ荳荳?*devDependency**<2A>亥シ蜿台セ晁オ厄シ<E58E84>
|
||
2. Dockerfile菴ソ逕ィ `npm ci --production` 蜿ェ螳芽」<E88ABD>函莠ァ萓晁オ?
|
||
3. `pino-pretty` **荳堺シ夊「ォ螳芽」<E88ABD>芦逕滉コァ邇ッ蠅<EFBDAF>**
|
||
4. 菴?`src/index.ts` 荳ュ遑ャ郛也<E9839B>∽コ?`pino-pretty` 菴應クコ譌・蠢玲<E8A0A2>シ蠑丞喧蟾・蜈?
|
||
5. 逕滉コァ邇ッ蠅<EFBDAF>星蜉ィ譌カ謇セ荳榊芦 `pino-pretty`<EFBFBD>悟ッシ閾エ蟠ゥ貅?
|
||
|
||
---
|
||
|
||
## 笨?隗」蜀ウ譁ケ譯<EFBDB9>
|
||
|
||
### 1. 菫ョ謾ケ莉」遐<EFBDA3> - 譚。莉カ蛹紋スソ逕ィpino-pretty
|
||
|
||
**譁<>サカ**<EFBFBD>啻backend/src/index.ts`
|
||
|
||
**菫ョ謾ケ蜑搾シ育ャ?9-41陦鯉シ<E9AF89>**<2A>?
|
||
```typescript
|
||
const fastify = Fastify({
|
||
logger: {
|
||
level: config.logLevel,
|
||
transport: {
|
||
target: 'pino-pretty', // 笶?遑ャ郛也<E9839B><E4B99F>シ檎函莠ァ邇ッ蠅<EFBDAF>シ壽冠髞?
|
||
options: {
|
||
colorize: true,
|
||
translateTime: 'HH:MM:ss Z',
|
||
ignore: 'pid,hostname',
|
||
},
|
||
},
|
||
},
|
||
});
|
||
```
|
||
|
||
**菫ョ謾ケ蜷?*<2A>?
|
||
```typescript
|
||
// 逕滉コァ邇ッ蠅<EFBDAF>スソ逕ィJSON譬シ蠑乗律蠢暦シ域ァ閭ス譖エ螂ス<E89E82>会シ悟シ蜿醍識蠅<E8AD98>スソ逕ィpino-pretty<74>域<EFBFBD>隸サ<E99AB8><EFBDBB>
|
||
const fastify = Fastify({
|
||
logger: config.nodeEnv === 'production'
|
||
? {
|
||
level: config.logLevel,
|
||
// 逕滉コァ邇ッ蠅<EFBDAF>シ夂ョ蜊慕噪JSON譌・蠢暦シ碁ょ粋譌・蠢玲噺髮<E599BA>ウサ扈<EFBDBB>
|
||
}
|
||
: {
|
||
level: config.logLevel,
|
||
// 蠑蜿醍識蠅<E8AD98>シ壻スソ逕ィpino-pretty鄒主喧霎灘<E99C8E>
|
||
transport: {
|
||
target: 'pino-pretty',
|
||
options: {
|
||
colorize: true,
|
||
translateTime: 'HH:MM:ss Z',
|
||
ignore: 'pid,hostname',
|
||
},
|
||
},
|
||
},
|
||
});
|
||
```
|
||
|
||
**蜈ウ髞ョ謾ケ霑<EFBDB9>**<2A>?
|
||
- 笨?譬ケ謐ョ `NODE_ENV` 譚。莉カ蛹夜<E89BB9>鄂?
|
||
- 笨?逕滉コァ邇ッ蠅<EFBDAF>シ壻スソ逕ィ蜴溽函JSON譌・蠢暦シ域ァ閭ス譖エ螂ス<E89E82>碁ょ粋ELK/Loki遲画律蠢礼ウサ扈滂シ<E6BB82>
|
||
- 笨?蠑蜿醍識蠅<E8AD98>シ壻スソ逕ィpino-pretty<74>域<EFBFBD>隸サ<E99AB8>御セソ莠手ー<E6898B>ッ包シ?
|
||
|
||
### 2. 驥肴眠郛冶ッ禅ypeScript
|
||
|
||
```bash
|
||
cd backend
|
||
npm run build
|
||
```
|
||
|
||
**郛冶ッ醍サ捺棡**<2A>壺怛 謌仙粥
|
||
|
||
### 3. 驥肴眠譫<E79CA0>サコ髟懷ワ v1.2
|
||
|
||
```bash
|
||
docker build -t crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/backend-service:v1.2 .
|
||
```
|
||
|
||
**譫<>サコ扈捺棡**<2A>?
|
||
- 笨?譫<>サコ謌仙粥
|
||
- 笨?閠玲慮<E78EB2>?.4遘抵シ亥ソォ騾滂シ悟、ァ驛ィ蛻<EFBFBD>アゆスソ逕ィ郛灘ュ假シ?
|
||
|
||
### 4. 謗ィ騾∝芦ACR
|
||
|
||
```bash
|
||
docker push crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/backend-service:v1.2
|
||
```
|
||
|
||
**謗ィ騾∫サ捺<EFBDBB>?*<2A>?
|
||
- 笨?謗ィ騾∵<E9A8BE>蜉?
|
||
- 笨?Digest: `sha256:dd48750c5032681613776ea484a2194622e3926c6f49a1d7246105c090ecce35`
|
||
|
||
---
|
||
|
||
## <20>逃 迚域悽蟇ケ豈<EFBDB9>
|
||
|
||
| 鬘ケ逶ョ | v1.0 | v1.1 | v1.2<EFBFBD>域怙譁ー<EFBFBD><EFBFBD> |
|
||
|------|------|------|-------------|
|
||
| **髣ョ鬚<EFBDAE>** | 郛コ蟆祖onfig | 笶?菫ョ螟<EFBDAE> | 笶?菫ョ螟<EFBDAE> |
|
||
| **髣ョ鬚<EFBDAE>** | - | pino-pretty | 笨?菫ョ螟<EFBDAE> |
|
||
| **迥カ諤?* | 笶?蜷ッ蜉ィ螟ア雍・ | 笶?蜷ッ蜉ィ螟ア雍・ | 笨?蠕<>ェ瑚ッ?|
|
||
| **菫ョ謾ケ蜀<EFBDB9>ョケ** | - | +config逶ョ蠖<EFBDAE> | +譚。莉カ蛹匁律蠢鈴<E8A0A2>鄂?|
|
||
| **譫<>サコ譌カ髣エ** | ~5蛻<35>帖 | ~1蛻<31>帖 | ~8遘?|
|
||
|
||
---
|
||
|
||
## <20>識 荳倶ク豁・謫堺ス?
|
||
|
||
### 豁・鬪、1<EFBDA4>夂匳蠖百AE謗ァ蛻カ蜿?
|
||
隶ソ髣ョ<EFBFBD>喇ttps://sae.console.aliyun.com/
|
||
|
||
### 豁・鬪、2<EFBDA4>壽峩譁ー髟懷ワ迚域悽荳コ v1.2
|
||
|
||
1. 謇セ蛻ー蠎皮畑<E79AAE>啻nodejs-backend-test`
|
||
2. 驟咲スョ邂。逅<EFBDA1> 竊?驛ィ鄂イ驟咲スョ 竊?髟懷ワ隶セ鄂ョ
|
||
3. 菫ョ謾ケ髟懷ワ迚域悽<E59F9F>?
|
||
```
|
||
莉趣シ喘ackend-service:v1.1
|
||
謾ケ荳コ<E88DB3>喘ackend-service:v1.2 笨?
|
||
```
|
||
|
||
### 豁・鬪、3<EFBDA4>夐㍾譁ー驛ィ鄂イ蟷カ鬪瑚ッ<E7919A>
|
||
|
||
1. 菫晏ュ伜ケカ驥肴眠驛ィ鄂?
|
||
2. 譟・逵句ョ樊慮譌・蠢<EFBDA5>
|
||
3. **謌仙粥譬<E7B2A5>ソ<EFBFBD>**<2A>?
|
||
|
||
**笨?譛滓悍逧<E6828D>律蠢玲<E8A0A2>シ蠑?*<2A><>SON譬シ蠑擾シ御ク肴弍pretty譬シ蠑擾シ会シ<E4BC9A>
|
||
```json
|
||
{"level":30,"time":1703472498828,"pid":1,"hostname":"xxx","msg":"Server listening at http://0.0.0.0:3001"}
|
||
{"level":30,"time":1703472498830,"pid":1,"hostname":"xxx","msg":"Config loaded: /app/config/agents.yaml"}
|
||
{"level":30,"time":1703472498832,"pid":1,"hostname":"xxx","msg":"Database connected successfully"}
|
||
```
|
||
|
||
**笶?荳榊コ碑ッ・蜃コ邇?*<2A>?
|
||
- `Error: unable to determine transport target for "pino-pretty"`
|
||
- 莉サ菴募<E88FB4>莠姿ino-pretty逧<79>漠隸?
|
||
|
||
---
|
||
|
||
## <20>投 荳コ莉荵育函莠ァ邇ッ蠅<EFBDAF>ク咲畑pino-pretty<74>?
|
||
|
||
### 諤ァ閭ス蟇ケ豈<EFBDB9>
|
||
|
||
| 謖<><E8AC96><EFBFBD> | 蜴溽函JSON | pino-pretty |
|
||
|------|---------|-------------|
|
||
| **蜷槫瑞驥?* | ~30,000 log/s | ~3,000 log/s |
|
||
| **CPU菴ソ逕ィ** | 菴?| 鬮假シ域<EFBDBC>シ蠑丞喧蠑髞<E9AB9E>?|
|
||
| **蜀<>ュ倅スソ逕ィ** | 菴?| 鬮?|
|
||
| **騾ら畑蝨コ譎ッ** | 逕滉コァ邇ッ蠅<EFBDAF> | 蠑蜿醍識蠅?|
|
||
|
||
### 譌・蠢礼ウサ扈滄寔謌<E5AF94>
|
||
|
||
**逕滉コァ邇ッ蠅<EFBDAF>怙菴ウ螳櫁キ?*<2A>?
|
||
```
|
||
蠎皮畑霎灘<EFBFBD>JSON譌・蠢<EFBFBD>
|
||
竊?
|
||
SAE/K8s謾カ髮<EFBDB6>シ<EFBFBD>tdout/stderr<72>?
|
||
竊?
|
||
譌・蠢礼ウサ扈滂シ<EFBFBD>LK/Loki/髦ソ驥御コ全LS<4C>?
|
||
竊?
|
||
蜿ッ隗<EFBFBD>喧蛻<EFBFBD>梵<EFBFBD><EFBFBD>ibana/Grafana<6E>?
|
||
```
|
||
|
||
JSON譬シ蠑乗律蠢玲峩騾ょ粋<EFBFBD>?
|
||
- 笨?扈捺桷蛹匁衍隸「<E99AB8>亥ュ玲ョオ郤ァ謳懃エ「<EFBDB4><EFBDA2>
|
||
- 笨?譌・蠢苓★蜷亥柱蛻<E69FB1><E89BBB>?
|
||
- 笨?蜻願ュヲ隗<EFBDA6><E99A97>驟咲スョ
|
||
- 笨?諤ァ閭ス逶第而
|
||
|
||
---
|
||
|
||
## <20>剥 譛ャ蝨ー豬玖ッ暮ェ瑚ッ<E7919A>
|
||
|
||
螯よ棡諠ウ蝨ィ譛ャ蝨ー鬪瑚ッ∽ソョ螟搾シ悟庄莉・霑呎<EFBFBD>キ豬玖ッ包シ<EFBFBD>
|
||
|
||
### 豬玖ッ慕函莠ァ邇ッ蠅<EFBDAF>律蠢玲<E8A0A2>シ蠑<EFBDBC>
|
||
```bash
|
||
# 隶セ鄂ョ逕滉コァ邇ッ蠅<EFBDAF>序驥<E5BA8F>
|
||
export NODE_ENV=production
|
||
|
||
# 蜷ッ蜉ィ蠎皮畑
|
||
npm run dev
|
||
|
||
# 隗ょッ滓律蠢苓セ灘<EFBDBE>蠎碑ッ・譏ッJSON譬シ蠑<EFBDBC>
|
||
```
|
||
|
||
### 豬玖ッ募シ蜿醍識蠅<E8AD98>律蠢玲<E8A0A2>シ蠑?
|
||
```bash
|
||
# 隶セ鄂ョ蠑蜿醍識蠅<E8AD98>序驥?
|
||
export NODE_ENV=development
|
||
|
||
# 蜷ッ蜉ィ蠎皮畑
|
||
npm run dev
|
||
|
||
# 隗ょッ滓律蠢苓セ灘<EFBDBE>蠎碑ッ・譏ッpretty譬シ蠑擾シ亥スゥ濶イ縲∵<E7B8B2>隸サ<E99AB8><EFBDBB>
|
||
```
|
||
|
||
---
|
||
|
||
## <20>庁 扈城ェ梧蕗隶ュ
|
||
|
||
### 1. 蠑蜿台セ晁オ也ョ。逅?
|
||
- 笨?**DO**<2A>壼ー<E5A3BC><EFBDB0>シ蠑丞喧蟾・蜈キ<E89C88>亥ヲQino-pretty<74>画叛蝨ィdevDependencies
|
||
- 笨?**DO**<2A>夂函莠ァ邇ッ蠅<EFBDAF>スソ逕ィ蜴溽函譌・蠢玲<E8A0A2>シ蠑?
|
||
- 笶?**DON'T**<2A>壼惠逕滉コァ邇ッ蠅<EFBDAF>セ晁オ謀evDependencies
|
||
|
||
### 2. 邇ッ蠅<EFBDAF>る<C280>
|
||
- 笨?**DO**<2A>壽<EFBFBD>ケ謐ョNODE_ENV驟咲スョ荳榊酔逧<E98594>。御ク?
|
||
- 笨?**DO**<2A>夂函莠ァ邇ッ蠅<EFBDAF>シ伜<EFBDBC>閠<EFBFBD>剔諤ァ閭ス
|
||
- 笨?**DO**<2A>壼シ蜿醍識蠅<E8AD98>シ伜<EFBDBC>閠<EFBFBD>剔譏鍋畑諤?
|
||
|
||
### 3. Docker髟懷ワ莨伜喧
|
||
- 笨?**DO**<2A>壻スソ逕?`npm ci --production` 蜃丞ー城復蜒丈ス鍋ァッ
|
||
- 笨?**DO**<2A>壼惠莉」遐∽クュ騾る<E9A8BE>逕滉コァ邇ッ蠅<EFBDAF>
|
||
- 笶?**DON'T**<2A>壻クコ莠<EFBDBA>婿萓ソ蝨ィ逕滉コァ邇ッ蠅<EFBDAF>ョ芽」<E88ABD>園譛我セ晁オ?
|
||
|
||
---
|
||
|
||
## <20>統 菫ョ螟肴サ扈<EFBDBB>
|
||
|
||
**髣ョ鬚俶<E9AC9A>ケ貅<EFBDB9>**<EFBFBD>壻サ」遐∵悴騾る<EFBFBD>逕滉コァ邇ッ蠅<EFBFBD>シ育。ャ郛也<EFBFBD>∝シ蜿大キ・蜈キ<EFBFBD><EFBFBD>
|
||
**菫ョ螟肴婿蠑<E5A9BF>**<EFBFBD>壽キサ蜉<EFBFBD>邇ッ蠅<EFBFBD>愛譁ュ<EFBFBD>梧擅莉カ蛹夜<EFBFBD>鄂?
|
||
**蠖ア蜩崎激蝗エ**<EFBFBD>壻サ<EFBFBD>律蠢苓セ灘<EFBFBD>譬シ蠑擾シ御ク榊スア蜩榊粥閭ス
|
||
**菫ョ螟肴慮髣エ**<EFBFBD>夂コヲ10蛻<EFBFBD>帖<EFBFBD>育シ冶ッ?蛻<>帖 + 譫<>サコ8遘?+ 謗ィ騾?蛻<>帖<EFBFBD>?
|
||
**迚域悽蜿?*<2A>嘛1.2
|
||
|
||
---
|
||
|
||
**譁<>。」蛻帛サコ譌カ髣エ**<EFBFBD>?025-12-24
|
||
**扈エ謚、莠コ蜻<EFBDBA>**<EFBFBD>夊ソ千サエ蝗「髦?
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|