Appearance
Web 项目
适用于普通网页、SPA 应用、Node.js 服务端等可直接发起 HTTP 请求的环境。
导入
ts
import { createLogger } from '@duty/logs-sdk/web';初始化
ts
const logger = createLogger({
appId: 'crm-web',
appName: 'CRM 管理系统',
version: '2.1.0',
apiKey: 'your-api-key',
});记录日志
ts
// 普通信息
logger.info('页面加载完成', { route: '/dashboard', loadTime: 1200 });
// 警告
logger.warn('API 响应慢', { url: '/api/users', duration: 3500 });
// 错误
logger.error('请求失败', {
url: '/api/orders',
status: 500,
message: 'Internal Server Error'
});携带结构化数据
data 参数接受任意可序列化对象:
ts
logger.error('表单提交失败', {
formId: 'user-registration',
fields: { name: 'test', email: 'test@example.com' },
validationErrors: ['邮箱格式不正确'],
});数据清洗
SDK 会自动处理 data 字段:
- 超过 4KB 的数据会被截断
- base64 编码的内容(如图片)会被移除,替换为大小标记
销毁
在应用卸载或不再需要日志时,调用 destroy() 释放资源:
ts
logger.destroy();destroy() 会尝试发送队列中剩余的日志,然后停止所有定时器。