日志转储至OBS
对象存储服务 OBS提供日志存储功能;您可以将日志转储至OBS,并在OBS控制台下载日志文件。
- 创建日志转储时,除需拥有LTS使用权限外,还需要拥有以下OBS桶相关授权项:设置桶ACL(obs:bucket:PutBucketAcl)、获取桶列表(obs:bucket:ListAllMyBuckets)、获取桶元数据(obs:bucket:HeadBucket)、获取桶ACL(obs:bucket:GetBucketAcl)、获取桶的加密配置(obs:bucket:GetEncryptionConfiguration)。更多信息请参见桶相关授权项。
- 云日志服务配置的日志转储是将最新产生的日志转储到OBS桶中,不会对历史日志进行转储。
创建日志转储(周期性)
- 登录云日志服务控制台。
- 左侧导航选择“日志转储”。
- 在“日志转储”页面右上角,单击“配置转储”。
- 在“配置转储”页面,设置转储日志相关参数。
表1 配置转储参数说明 参数名称
说明
示例
日志源
- 当前账号:对用户所在账号下所产生的日志进行转储。
- 其他账号:对委托人账号下所产生的日志进行转储,如需转储其他账号日志,需该账号使用者在IAM中创建委托。
当前账号
委托名称
当转储其他账号时,需填写委托人在IAM中创建的委托名称。
-
委托人账号名称
当转储其他账号时,需填写委托人的账号名称。
-
是否开启转储
默认开启转储。
开启
转储对象
选择转储的云服务。
OBS
日志组名称
选择已创建的日志组。
-
企业项目
选择已创建的企业项目。
- 如果当前账号未开通企业项目则不显示该参数。
- 如果当前账号已开通企业项目,则存在以下情况:
- 当转储当前账号日志时,下拉框显示当前账号的全部企业项目。
- 当转储其他账号日志时,若委托账号未开通企业项目,则默认显示“default”。
- 当转储其他账号日志时,若委托账号已开通企业项目,则显示委托账号的全部企业项目。
-
日志流名称
选择已创建的日志流。
说明:已配置过OBS转储的日志流不能重复配置。
-
OBS桶
- 选择已创建的OBS桶。
- 如果没有可选择的OBS桶,单击“查看OBS”,进入对象存储服务管理控制台,创建OBS桶。
- 如果OBS桶为加密桶,则需要选择“密钥名称”,并勾选下方的“我同意在KMS创建授权给LTS账号,对转储日志加解密”。
- LTS目前仅支持单AZ存储策略、标准存储类别的OBS桶。
说明:首次配置一次性转储到未授权的OBS桶中时,LTS服务会授权给OBS桶ACL规则,授权生效需要15分钟,如果您第一次配置一次性转储后失败,请15分钟后重试。请谨慎修改桶策略,防止转储失败。
-
密钥名称
对于加密的OBS桶,选择密钥名称。如果没有可选择的密钥,单击“创建密钥并授权”,进入数据加密控制台,创建密钥。
-
自定义转储路径
- 开启:将日志转储至自定义路径中,用于区分不同日志流之间的转储日志文件。
格式为:/LogTanks/RegionName/%GroupName/%StreamName/自定义转储路径。自定义转储路径默认为lts/%Y/%m/%d,其中%Y代表年,%m代表月,%d代表日,格式需要符合如下规范:
- “/LogTanks/RegionName”为系统默认路径,不可以修改。
- 新增%GroupName代表日志组名称,%StreamName代表日志流名称。
- 名称只能由英文字母、数字及特殊字符“&”“$”“@”“;”“:”“,”“=”“+”“?”“-”“.”“_”“/”和“%”组成,且“%”后只可跟Y(年)、m(月)、d(日)、H(时)、M(分),在%Y、%m、%d、%H和%M前后可以添加任意长度字符,并且可对其先后顺序进行调换。
- 自定义转储路径名称不允许为空,长度限制为1~128个字符。
示例:
- 输入LTS-test/%Y/%m/%d/%H/%M,则日志转储路径为:LogTanks/RegionName/LTS-test/Y/m/d/H/M/日志文件名称。
- 输入LTS-test/%d/%H/%m/%Y,则日志转储路径为:LogTanks/RegionName/LTS-test/d/H/m/Y/日志文件名称。
- 不开启:将日志转储至系统默认路径中。系统默认路径为:LogTanks/RegionName/2019/01/01/日志组/日志流/日志文件名称。
LTS-test/%GroupName/%StreamName/%Y/%m/%d/%H/%M
日志文件前缀
转储至OBS桶中的日志文件前缀。
日志文件前缀需符合如下规范:
- 名称长度限制为0~64个字符。
- 名称只能由英文大小写字母、数字、中划线“-”、下划线“_”和小数点“.”组成。
示例:输入LTS-log,则日志文件名称为:LTS-log_日志文件名称。
LTS-log
转储格式
用于配置日志的转储格式,可选择“原始日志格式”、“Json格式”。
- 原始日志格式示例:
- JSON格式示例:
{"host_name":"ecs-bd70","ip":"192.168.0.54","line_no":249,"message":"Sep 30 14:40:01 ecs-bd70 CRON[4363]: (root) CMD (/opt/oss/servicemgr/ICAgent/bin/manual/mstart.sh > /dev/null 2>&1)\n","path":"/var/log/syslog","time":1569825602303}
Json
转储周期
日志自动转储至OBS桶的时间间隔,支持2分钟、5分钟、30分钟、1小时、3小时、6小时、12小时。
3小时
文件名时区
日志自动转储至OBS桶时,按照UTC时间生成转储目录及文件名称。
(UTC)协调世界时间
是否投递tag
如主机日志,转储时会增加采集器收集的tag字段。
- 不开启:不会投递tag。
- 开启:默认的投递tag有:主机信息(hostIP、hostId、hostName、pathFile、collectTime);kubernetes信息(clusterName、clusterId、nameSpace、podName、appName、containerName)。可选择公共tag有:regionName、projectId、logStreamName、logGroupName。
说明:
当开启投递tag后,转储格式必须是JSON格式。
- 转储标签:开启后,会将日志流标签添加至转储内容。
开启
压缩格式
支持不压缩、压缩gzip、压缩zip、压缩snappy。
说明:压缩格式支持白名单用户申请提交工单开通。
gzip
- 单击“确定”,完成配置。当转储任务状态为“正常”时,表示转储任务创建成功。
- 单击“转储对象”列的OBS桶名称,可以跳转至OBS控制台,查看转储的日志文件。
转储到OBS后的日志,支持从OBS下载到本地进行查看。
转储至OBS的日志支持下载的格式:原始日志、JSON格式。
修改日志转储
- 在日志转储列表中,单击待修改配置转储任务所在行的“修改”,弹出“修改转储”对话框,进行修改。
- 修改完成后,单击“确定”。
查看转储详情
- 在日志转储列表中,单击待查看配置转储任务所在行的“更多>详情”。
- 在弹出的“转储详情”页面中,可查看日志转储详情。
删除转储任务
如果日志不再需要转储,可以删除转储任务。
- 转储任务一旦删除将不再对日志进行转储,请谨慎操作。
- 删除转储任务后,之前已经转储日志将会继续保存在OBS。
- 创建转储任务时,选中的OBS桶会将读写策略授权给云日志服务。当多个转储任务使用同一OBS桶时,如您需要删除转储任务,请按如下操作:
- 如果仅使用该OBS桶创建了一个转储任务,删除该转储任务时,请在对象存储服务(Object Storage Service,OBS)中,“访问权限控制”>“桶ACLs”里删除特定用户的桶访问权限。
- 如果使用该OBS桶创建了多个转储任务,请勿删除桶访问权限,否则会导致转储失败。
- 在日志转储列表中,单击待删除的日志组所在行的“删除”,弹出“删除”对话框。
- 单击“确定”,删除转储任务。
查看转储状态
日志转储任务的转储状态共分为正常、异常、关闭三种状态。
- 正常:日志转储任务正常进行。
- 异常:日志转储任务异常,可能是如下原因导致:
- OBS桶策略异常,请您在对象存储服务中设置访问控制策略。
- OBS加密桶的密钥被删除或被取消授权,请您确保授权密钥的合法性。
- 关闭:日志转储任务停止。