image.png

申请SLS日志服务:

  1. 参照阿里云SLS日志服务文档(https://help.aliyun.com/document_detail/54604.html

为函数绑定SLS日志:

  1. 编写SLS日志函数 ```typescript /* @format /

import SLS from ‘@alicloud/log’; const slsClient = new SLS({ accessKeyId: ‘XXXXXX’, accessKeySecret: ‘AAAAAAAAAA’, region: ‘cn-hangzhou’, }); export const log = async (content: {[x: string]: any; content?: any} | null) => { // 将content中的内容进行正确的格式转换符合阿里云SLS格式的规范要求(必须是字符串的一维数据格式) if (typeof content !== ‘object’ || content === null) { content = {content}; } else { const keys = Object.keys(content); for (const k of keys) { if (typeof content[k] != ‘string’) { content[k] = JSON.stringify(content[k]); } } } const errorStack = new Error().stack; const stack: string | undefined = errorStack && errorStack .toString() .split(‘\n’) .slice(2) .join(‘\n’); console.log(content, stack); // 此处参数是SLS日志的project和log-store的名称 await slsClient.postLogStoreLogs(‘fc-log-test-20191023’, ‘fc-test’, { // TODO 支持buffer缓存的打印提速处理细节实现 logs: [ { content: {…content, stack}, timestamp: Math.floor(new Date().getTime() / 1000), }, ], // 多云的需求进行规避处理掉实现方案的需求,不进行私有逻辑特性的处理,做最小云产品的特性依赖。 // tags: [{tag1: ‘testTag1’, tag2: ‘testTag2’}] }); };

```

  1. 在阿里云SLS日志控制台查看记录

image.png

参考资料:

  1. 《sls日志系统接入与实践》