更新时间:2024-11-11 GMT+08:00

云主机ECS文本日志接入LTS

弹性云服务器(Elastic Cloud Server)是一种可随时自助获取、可弹性伸缩的云服务器,可帮助您打造可靠、安全、灵活、高效的应用环境,确保服务持久稳定运行,提升运维效率。

当您选择了ECS接入方式时,云日志服务可以将ECS待采集日志的路径配置到日志流中,ICAgent按照日志采集规则采集日志,以日志流为单位发往云日志服务,您可以在云日志服务控制台查看和分析日志,可以确保服务器的稳定运行和信息安全。

您可以按照如下步骤完成接入配置。

  1. 步骤1:选择日志流
  2. 步骤2:选择主机组(可选)
  3. 步骤3:采集配置
  4. 步骤4:索引配置
  5. 步骤5:完成接入配置

若需要采集多个场景的日志,您可以选择批量设置多个接入配置的方式,同时设置多个接入配置。

前提条件

安装ICAgent添加至主机组。开启“ICAgent诊断开关”用于查看ICAgent异常监控、ICAgent整体状态和ICAgent采集监控,请参考设置ICAgent日志采集开关

步骤1:选择日志流

  1. 登录云日志服务控制台
  2. 在左侧导航栏中,选择“接入 > 接入中心”,单击“云主机 ECS-文本日志”进行ECS接入配置。

    或在左侧导航栏中,选择“接入 > 接入管理 > 接入日志”,单击“云主机 ECS-文本日志”进行ECS接入配置。

    或在左侧导航栏中,选择“日志管理”,单击目标日志流的名称进入日志详情页面。单击右上角,在弹出页面中,选择“日志接入”页签,单击“接入日志”,在弹出页面中,单击“云主机 ECS-文本日志”进行ECS接入配置。

  3. 单击“所属日志组”后的目标框,在下拉列表中选择具体的日志组。若没有所需的日志组,单击“所属日志组”目标框后的“新建”,在弹出的创建日志组页面创建新的日志组。详细请参考管理日志组
  4. 单击“所属日志流”后的目标框,在下拉列表中选择具体的日志流。若没有所需的日志流,单击“所属日志流”目标框后的“新建”,在弹出的创建日志流页面创建新的日志流。详细请参考管理日志流
  5. 单击“下一步:选择主机组”。

步骤2:选择主机组(可选)

  1. 在主机组列表中选择一个或多个需要采集日志的主机组,若没有所需的主机组,单击列表左上方“新建”,在弹出的新建主机组页面创建新的主机组,具体可参考管理LTS主机组

    主机组可以为空,但是会导致采集配置不生效,建议第一次接入时选择主机组。若不选择,可以在接入配置设置完成后对主机组进行设置。

    • 在“主机管理 > 主机组”页面对主机组和接入配置进行关联。
    • 在接入规则页面,单击操作列的“编辑”,进入接入配置页面对主机组和接入配置进行关联。
  2. 单击“下一步:采集配置”。

步骤3:采集配置

选择主机组信息后,采集配置的具体配置如下:

  • 请注意您的敏感信息是否在收集范围内。
  • 相同主机的同一个日志采集路径,如果在AOM进行了配置,则不能在LTS重复配置。
  • 配置日志接入时可以同时选择多个主机组,同一个主机组又可以添加多个主机。所以不同主机的路径可以通过主机组来控制采集配置接入。
  • 配置采集的文件最后修改时间和当前时间差如果已超过12小时,则不会采集。
  • LTS暂不支持采集PostgreSQL(数据库)实例的日志。
  1. 采集配置名称:自定义采集配置名称,长度范围为1到64个字符,只支持输入英文、数字、中文、中划线、下划线以及小数点,且不能以小数点、下划线开头或以小数点结尾。

    若需要复用其他已创建好的采集配置信息,单击输入框后面的“导入其他配置”,在导入其他配置页面勾选已创建好的配置,单击“确定”,即可直接复用该采集配置信息,后面的步骤可以不用设置了。

    导入旧版配置:将旧版主机接入配置导入到新版日志接入中。

    • 若是新安装云日志服务的场景,页面没有显示“导入旧版配置”,则表示不需要导入旧版配置,直接新建配置即可。
    • 若是升级云日志服务的场景,页面显示“导入旧版配置”,若需要旧版配置里的主机日志路径,可以选择导入旧版配置,或者直接新建配置。
  2. 路径配置:添加您需要收集的日志路径,LTS将按照配置的路径进行日志采集。采集路径设置规则参考如下:
    • 采集路径支持递归路径,**表示递归5层目录。

      示例:采集路径配置为 /var/logs/**/a.log,日志匹配如下:

      /var/logs/a.log
      /var/logs/1/a.log 
      /var/logs/1/2/a.log
      /var/logs/1/2/3/a.log
      /var/logs/1/2/3/4/a.log
      /var/logs/1/2/3/4/5/a.log
      • 以上示例中的/1/2/3/4/5/,表示/var/logs目录中,往里递归的5个目录层级,在这5个目录层级中只要存在a.log,都能进行日志匹配。
      • 采集路径中只能出现一次**,不能出现两个及以上。正确示例:/var/logs/**/a.log;错误示例:/opt/test/**/log/**。
      • 采集路径中第一个层级不允许为**(避免误采集系统文件),错误示例:/**/test。
    • 采集路径支持模糊匹配,匹配目录或文件名中的任何字符

      如果配置了C:\windows\system32类似的日志采集路径,但无法采集日志,请尝试打开WAF物理防火墙后重新配置。

      • 示例1:采集路径配置为 /var/logs/*/a.log,表示/var/logs/目录下,任何一个目录中存在a.log,都能进行日志匹配,例如:

        /var/logs/1/a.log

        /var/logs/2/a.log

      • 示例2:采集路径配置为 /var/logs/service-*/a.log,日志匹配示例:

        /var/logs/service-1/a.log

        /var/logs/service-2/a.log

      • 示例3:采集路径配置为 /var/logs/service/a*.log,日志匹配示例:

        /var/logs/service/a1.log

        /var/logs/service/a2.log

    • 采集路径如果配置的是目录,示例:/var/logs/,则只采集目录下后缀为“.log”、“.trace”和“.out”的文件

      如果配置的是文件名,则直接采集对应文件,只支持内容是文本格式的文件。

    • 添加自定义绕接规则,ICAgent目前是通过文件名规则来判断是否为绕接文件,如果您的绕接规则不符合内置类型时,可以通过单击“添加自定义绕接规则”来进行匹配,避免重复采集和绕接时的日志丢失。

      内置类型为{basename}{连接符}{绕接标识}.后缀,{basename}.{后缀}{连接符}{绕接标识}。其中连接符为-._绕接标识为非字母符号,后缀为字母。

      自定义绕接规则为{basename}+绕接文件的特征正则表达式组成匹配规则。例如您的日志文件名称为/opt/test.out.log,绕接后的文件名为test.2024-01-01.0.out.log,test.2024-01-01.1.out.log,因此在路径配置时,采集路径为/opt/*.log,绕接规则为{basename}\.[-0-9\.].out.log

  3. 允许文件多次采集。(暂不支持Windows场景)

    开启“允许文件多次采集”后,同一主机下的同一日志文件支持被采集到多个日志流。该功能依赖ICAgent版本,详见查看ICAgent版本说明

    关闭“允许文件多次采集”后,采集路径不能重复配置,即同一主机下的同一日志文件,即使跨日志流,也只能配置一次。

  4. 设置采集黑名单:LTS支持对日志进行过滤采集,即通过设置黑名单,在采集时过滤指定的目录或文件。

    目录和文件名支持完全匹配,也支持模糊匹配,具体可参考路径配置内容进行设置。

    • 当设置的黑名单与配置的采集路径重复或者有重合时,优先过滤掉黑名单设置的文件。
    • 已经加了黑名单的日志,新建日志接入也无法采集黑名单里的日志,除非在设置采集黑名单下方删除采集路径,才能重新采集。
    • 过滤指定的目录时,可以过滤掉该目录下的所有文件,但是不能过滤该目录下文件夹里的日志文件。
  5. 采集Windows事件日志:当选择Windows主机采集日志时,需要开启“采集Windows事件日志”,配置如下参数:
    表1 采集Windows事件日志参数

    名称

    说明

    日志类型

    日志类型有系统、应用程序、安全和启动。

    首次采集时间偏移量

    如设置为7天,表示采集开始时间前7天内的日志(7天前的日志被忽略),该时间仅在首次配置采集生效,确保不会重复采集。最大支持设置为7天。

    事件等级

    事件等级有information(信息)、warning(警告)、error(错误)、critical(严重)和verbose(详细)。根据Windows事件等级过滤采集。仅支持Windows Vista及以上的操作系统。

  6. 开启结构化解析配置,详细操作请参考ICAgent结构化解析规则说明

    支持组合解析,一个日志流的每个采集配置可以配置不同的结构化解析规则。

    若已经配置了云端结构化解析,请先删除云端结构化解析后再配置ICAgent结构化解析。

    图1 ICAgent结构化解析配置
  7. 其他配置。
    表2 其他配置

    名称

    说明

    最大目录深度

    最大目录深度为20层。

    采集路径支持使用**配置多层路径模糊匹配,该配置项限制最大目录深度。例如您的日志路径为/var/logs/department/app/a.log,采集路径配置为:/var/logs/**/a.log,当配置为1时日志不会被采集,配置>=2时日志会被采集。

    日志拆分

    云日志服务支持对日志进行拆分。

    当日志大小超过500KB时,开启日志拆分按钮,则单行日志会被拆分为多行采集。支持设置日志拆分大小,最大为1024KB。例如:日志大小为600KB,被拆分为2行日志采集,第一行500KB,第二行100KB。

    当日志大小超过500KB时,未开启日志拆分按钮,则单条日志大小限制不超过500KB,超过限制部分会被截断丢弃。

    采集二进制文件

    云日志服务支持采集二进制文件。

    您可以通过命令(file -i 文件名)查看文件类型,如果包含charset=binary,那么该日志文件就是二进制文件。

    当日志的文件类型为二进制时,开启采集二进制文件按钮,则对接入的二进制文件日志进行采集,但仅支持UTF8编码的字符串,非UFT8编码的字符在LTS控制台页面会显示乱码。

    当日志的文件类型为二进制时,未开启采集二进制文件按钮,则对接入的二进制文件日志停止采集,开启后即可进行采集。

    日志文件编码

    日志文件编码支持UTF-8、GBK(暂不支持Windows场景)。

    UTF-8编码是一种变长编码方式,用于表示Unicode字符集。GBK全称《汉字内码扩展规范》,中文计算机编码的一种,是ASCII码和GB2312编码的扩展。

    采集策略

    采集策略支持增量或全量。

    • 增量采集:ICAgent采集新文件时,从文件的末尾开始读。
    • 全量采集:ICAgent采集新文件时,从文件的开头开始读。

    自定义元数据

    • 关闭“自定义元数据”,使用ICAgent系统默认配置的字段上报到LTS,不需要用户配置且ICAgent系统不支持配置。
    • 开启“自定义元数据”,根据用户选择的内置字段和自定义键值增加字段上报到LTS。

      系统内置字段:勾选需要设置的内置字段。

      自定义键值对:单击“添加”,输入键值key和键值Value。

  8. 参考表3配置日志格式、日志时间。
    表3 日志采集信息

    名称

    说明

    日志格式

    • 单行日志:采集的日志文件中,如果您希望每一行日志在LTS界面中都显示为一条单独的日志数据,则选择单行日志。
    • 多行日志:采集的日志中包含像java异常的日志,如果您希望多行异常的日志显示为一条日志,正常的日志每一行都显示为一条单独的日志数据,则选择多行日志,方便您查看日志并且定位问题。

    日志时间

    系统时间:表示系统当前时间,默认为日志采集时间,每条日志的行首显示日志的采集时间。

    说明:
    • 日志采集时间:ICAgent采集日志,并且发送到云日志服务的时间。
    • 日志打印时间:系统产生并打印日志的时间。ICAgent采集日志并发送日志到云日志平台的频率为1秒钟。
    • 采集日志时间限制:系统时间的前后24小时内。

    时间通配符:用日志打印时间来标识一条日志数据,通过时间通配符来匹配日志,每条日志的行首显示日志的打印时间。

    • 如果日志中的时间格式为:2019-01-01 23:59:59.011,时间通配符应该填写为:YYYY-MM-DD hh:mm:ss.SSS。
    • 如果日志中的时间格式为:19-1-1 23:59:59.011,时间通配符应该填写为:YY-M-D hh:mm:ss.SSS。
    说明:

    如果日志中不存在年份信息,则云日志会自动补齐年份数据为当前年份数据。

    填写示例:

    YY   - year (19)     
    YYYY - year (2019)  
    M    - month (1)     
    MM   - month (01)    
    D    - day (1)       
    DD   - day (01)        
    hh   - hours (23)     
    mm   - minutes (59)   
    ss   - seconds (59) 
    SSS  - millisecond(999)
    hpm     - hours (03PM)
    h:mmpm    - hours:minutes (03:04PM)
    h:mm:sspm  - hours:minutes:seconds (03:04:05PM)       
    hh:mm:ss ZZZZ (16:05:06 +0100)       
    hh:mm:ss ZZZ  (16:05:06 CET)       
    hh:mm:ss ZZ   (16:05:06 +01:00)

    分行模式

    日志格式选择多行日志时,需要选择分行模式,分行模式选择“日志时间”时,是以时间通配符来划分多行日志;当选择“正则模式”时,则以正则表达式划分多行日志。

    正则表达式

    此配置是用来标识一条日志数据的正则表达式。日志格式选择“多行日志”格式后且“分行模式”已选择“正则模式”后需要设置。

    时间通配和正则表达式均是从每行日志的开头进行严格匹配,如果匹配不上,则会默认使用系统时间上报,这样可能会和文件内容中的时间不一致。如果没有特殊需求,建议使用单行日志-系统时间模式即可

步骤4:索引配置

  1. 索引配置(可选项),具体请参考设置LTS日志索引配置
  2. 单击“提交”。

步骤5:完成接入配置

接入成功后,在接入规则页签,则会生成一条接入配置信息。
  • 单击接入配置名称可进入详情页面,查看该接入配置详细信息。
  • 单击接入配置操作列的“编辑”重新修改接入配置信息。
  • 单击接入配置操作列的“标签管理”即可添加标签。
  • 单击接入配置操作列的“更多 > 复制”复制一条新的接入配置信息。
  • 单击接入配置操作列的“更多 > 删除”即可删除接入配置信息。
  • 单击接入配置操作列的“更多 > 采集诊断”,可查看ICAgent异常监控、ICAgent整体状态和ICAgent采集监控。

批量设置多个接入配置

支持同时批量设置多个接入配置,操作简单,不用重复配置即可快速完成多个场景的接入配置。

  1. 在“接入管理”页面,单击“批量接入”,进入配置详情页面,请参考表4

    表4 批量接入设置

    类型

    操作

    说明

    基本配置

    接入类型

    选择云主机 ECS-文本日志。

    接入配置数量

    在输入框填写接入配置数量,单击“添加接入配置”。

    在接入配置下方默认已有1个接入配置,最多支持再添加99个数量,因此支持同时添加100个接入配置。

    接入配置

    接入列表

    1. 左侧显示接入配置的信息,最多支持添加99个配置。
    2. 右侧显示配置接入的内容,详细请参考步骤3:采集配置进行设置。
    3. 一个接入配置设置完成后,单击“应用于其他接入规则”即可将该接入配置复制到其他接入配置。

  2. 单击“参数检查”,检查成功后,单击“提交”,批量接入设置完成。

    例如添加了4个接入配置,批量创建成功后,在接入规则页签下方,就会显示4条接入配置数量。

  3. (可选)支持对接入配置任务进行以下操作:

    • 勾选多个已创建成功的接入配置,单击“批量编辑”进入配置详情页面,通过选择不同接入类型,修改对应的接入配置信息。
    • 勾选多个已创建成功的接入配置,单击开启或关闭按钮。接入配置状态关闭后不会继续采集日志。
    • 勾选多个已创建成功的接入配置,单击删除按钮即可批量删除接入配置。