机器组
一个机器组可以包含多台机器。当应用/服务部署在多台机器上,且这些机器的日志文件路径相同时,便可将其归为一个机器组。这样在控制台只需要配置一次日志数据采集规则,便可批量生效至机器组内的所有机器。
机器组可关联至一个日志主题,即机器组内所有的日志均上报至同一个日志主题;也可以关联至多个日志主题,即机器组内不同路径的日志分别上报至不同的日志主题。
机器组具备两种定义方式:
IP 地址:添加 IP 地址列表到机器组,机器组将自动添加这些IP对应的机器。
标识(Label):安装 LogListener 时为所在机器添加标识,机器组将自动添加包含这些标识的机器。
场景示例
某电商项目,共有6台机器及三个服务。其部署方式如下表:
payService 部署在2台机器上,有2个日志文件路径。userService和stockService 混部在4台机器上,共有4个日志文件路径。每个服务的每类日志(访问日志 access_log 和错误日志 error_log)均需上报至单独的日志主题。
机器 | 部署服务 | 日志文件路径 |
192.168.1.1 | payService | /data/log/payService/access_log.log /data/log/payService/error_log.log |
192.168.1.2 | payService | /data/log/payService/access_log.log /data/log/payService/error_log.log |
192.168.1.3 | userService,stockService | /data/log/userService/access_log.log /data/log/userService/error_log.log /data/log/stockService/access_log.log /data/log/stockService/error_log.log |
192.168.1.4 | userService,stockService | /data/log/userService/access_log.log /data/log/userService/error_log.log /data/log/stockService/access_log.log /data/log/stockService/error_log.log |
192.168.1.5 | userService,stockService | /data/log/userService/access_log.log /data/log/userService/error_log.log /data/log/stockService/access_log.log /data/log/stockService/error_log.log |
192.168.1.6 | userService,stockService | /data/log/userService/access_log.log /data/log/userService/error_log.log /data/log/stockService/access_log.log /data/log/stockService/error_log.log |
在机器上部署 LogListener 时,可为每台机器按其上运行的服务添加标识,具体如下:
机器 | 部署服务 | 标识 |
192.168.1.1 | payService | payService |
192.168.1.2 | payService | payService |
192.168.1.3 | userService,stockService | userService,stockService |
192.168.1.4 | userService,stockService | userService,stockService |
192.168.1.5 | userService,stockService | userService,stockService |
192.168.1.6 | userService,stockService | userService,stockService |
然后在控制台创建3个机器组,采用标识方式进行定义,分别为 payService、userService 和 stockService,再在日志主题中关联该机器组并添加对应的采集配置即可完成日志上报。
日志主题 | 关联机器组 | 采集路径 |
payService_access_log_topic | payService | /data/log/payService/access_log.log |
payService_error_log_topic | payService | /data/log/payService/error_log.log |
userService_access_log_topic | userService | /data/log/userService/access_log.log |
userService_error_log_topic | userService | /data/log/userService/error_log.log |
stockService_access_log_topic | stockService | /data/log/stockService/access_log.log |
stockService_error_log_topic | stockService | /data/log/stockService/error_log.log |
后续服务需要扩容时,只需要在新增的机器上添加部署的服务作为标识,即可自动将新增的机器添加至对应的机器组并采集日志,极大的提升运维部署效率。