本文介绍跨阿里云账号采集服务器日志的操作步骤。
背景信息
您要通过Logtail采集服务器日志时,在服务器上安装Logtail后,还需配置日志服务所在阿里云账号ID为用户标识,表示该账号有权限通过Logtail采集该服务器日志。否则在机器组中会显示服务器心跳失败,导致Logtail无法采集日志到日志服务。
例如某电商公司拥有两个电商应用,部署在阿里云杭州地域的ECS集群上,并使用杭州地域的日志服务进行日志管理。
- 应用A部署在阿里云账号A(12****456)下的ECS集群(Linux系统)上,并使用该账号下的日志服务进行日志管理。 
- 应用B部署在阿里云账号B(17****397)下的ECS集群(Linux系统)上,并使用该账号下的日志服务进行日志管理。 
现公司业务调整,计划将两个应用的日志集中采集到阿里云账号A(12****456)下的日志服务中,即将两个应用的日志分别采集到同一个日志服务Project下的不同Logstore中。因此您需要新增一个Logtail采集配置、机器组和Logstore,用于采集和存储应用B相关的日志。应用A相关的日志采集保持不变(使用原有的Logtail采集配置、机器组和Logstore)。

步骤一:创建用户标识文件
- 登录阿里云账号B下的ECS服务器。 重要- 您需要在ECS集群B的每台ECS服务器中创建用户标识文件。 
- 执行如下命令创建用户标识文件。 - 您需要配置阿里云账号A为用户标识,即创建阿里云账号A的同名文件。更多信息,请参见配置用户标识。 - touch /etc/ilogtail/users/12****456
步骤二:创建用户自定义标识机器组
- 在ECS服务器上创建机器组的自定义用户标识文件。 重要- 您需要在ECS集群B的每台ECS服务器中创建机器组的用户自定义标识文件。 - 登录阿里云账号B下的ECS服务器。 
- 在指定目录下创建/etc/ilogtail/user_defined_id文件并添加用户自定义标识。 - 例如配置用户自定义标识为 - application_b,则在文件中输入- application_b,并保存。文件路径说明,请参见创建用户自定义标识机器组。
 
- 在日志服务控制台上创建机器组。 - 使用阿里云账号A登录日志服务控制台。 
- 在Project列表区域,单击目标Project。 
- 在左侧导航栏中,选择。 
- 选择机器组右侧的。 
- 在创建机器组对话框中,配置如下参数,然后单击确定。 - 其中用户自定义标识需设置为您在步骤1中设置的用户自定义标识。其他参数说明,请参见创建用户自定义标识机器组。  
 
- 检查机器组中的服务器心跳都为OK。 - 在机器组列表中,单击目标机器组。 
- 在机器组配置页面,查看使用了相同用户自定义标识的ECS服务器及其心跳状态。 - 心跳为OK表示ECS服务器与日志服务的连接正常。如果显示FAIL请参见Logtail机器组无心跳。  
 
步骤三:采集日志
- 使用阿里云账号A登录日志服务控制台。 
- 单击快速接入。  
- 在快速接入数据对话框中,选择正则-文本日志。 
- 在接入数据向导中,选择目标Project和Logstore,单击下一步。 
- 配置机器组配置。 - 使用场景选择主机场景。 
- 安装环境选择ECS。 
- 选中您在步骤二中创建的机器组,将该机器组从源机器组移动到应用机器组,单击下一步。 
 
- 创建Logtail采集配置,单击下一步。 - 具体参数说明,请参见使用完整正则模式采集日志。 重要- 默认一个文件只能匹配一个Logtail采集配置。此时账号B下的采集未停止,账号A下的Logtail采集配置无法生效,因此您需要使用如下方式使账号A下的Logtail采集配置生效。 - 停止账号B下的采集,即使用账号B登录日志服务控制台,从目标机器组中移除Logtail采集配置。具体操作,请参见应用Logtail采集配置到指定机器组。 
- 在账号A下添加强制采集配置。更多信息,请参见如何实现文件中的日志被采集多份。 
 
- 此处创建Logtail采集配置成功后,请删除阿里云账号B下的原有Logtail采集配置,避免重复采集日志。如何删除,请参见删除Logtail采集配置。 
  
- 预览数据及设置索引,单击下一步。 - 日志服务默认开启全文索引。您也可以根据采集到的日志,手动或者自动设置字段索引。更多信息,请参见创建索引。 
相关操作
如果您需要将阿里云账号B下的历史数据迁移到当前的Logstore中,可以在原Logstore中创建数据加工任务,将数据复制到当前Logstore中。具体操作,请参见复制Logstore数据。
跨账号加工数据时,需使用自定义角色或密钥方式进行授权,此处以自定义角色为例。
- 第一个角色ARN用于授予数据加工任务使用该角色来读取源Logstore中的数据。角色权限配置说明请参见授权RAM角色只读访问源Logstore。 
- 第二个角色ARN用于授予数据加工任务使用该角色将数据加工结果写入目标Logstore。角色权限配置说明请参见授权RAM角色写数据到目标Logstore(跨账号)。 
 > 创建机器组
 > 创建机器组