# 自定义日志系统开发 **CustomLogFunction 参数说明** `CustomLogFunction` 是用户自定义处理日志的方法,如需将日志输出到外部服务器,需先了解埋点在组件中的输出日志的方法提供的数据类型,开发者可根据日志数据类型自定义进行服务端日志系统构建; | 参数 | 类型 | 说明 | | ---- | ------- | ------------ | | name | string | 组件名称 | | data | LogData | 单条日志数据 | ## `LogData`类型说明 `LogData`为四个组件关键点埋点日志的类型,分别为`ExchangeLogData`、`QueueLogData`、`NewsLogData`、`ConsumerLogData`; **BaseLogData 公共类型说明** | 名称 | 类型 | 说明 | | ----------- | ------ | --------------------------------------------------------- | | id | string | 组件的唯一 id,每条日志都会输出 | | createdTime | number | 组件的创建时间戳,每条日志都会输出 | | name | number | `Exchange`和`Queue`组件可能存在 name,如有 name,则会输出 | | message | string | 文本说明日志,error 也会使用 message 字段输出 | **ExchangeLogData 类型说明** | 名称 | 类型 | 说明 | | ---------- | -------- | ----------------------------------------------------------------------------------- | | accepted | number | 接收消息的数量,仅当有消息传入进来时才会输出 1 ,开发者可根据此字段统计接收消息总量 | | send | number | 消息路由到队列的队列数量 ,开发者可根据此字段统计路由总次数 | | queueNames | string[] | 消息路由到队列的队列名称数组,开发者可对此字段进行统计分组 | **QueueLogData 类型说明** | 名称 | 类型 | 说明 | | ----------- | -------- | -------------------- | | newsNum | number | 当前队列消息总数 | | newsIds | string[] | 当前队列消息 id 数组 | | consumerNum | number | 当前消费者数量 | | consumerIds | string[] | 当前消费者 id 数组 | **ConsumerLogData 类型说明** | 名称 | 类型 | 说明 | | -------- | ------ | ------------------------------------------------------------------------------- | | accepted | number | 消费消息的数量,仅当消费时才会输出 1 ,开发者可根据此字段统计单个消费者消费总数 |