使用匿名写入采集日志
如果您需要收集和分析用户在浏览器、小程序上的信息,例如用户的浏览器、浏览行为记录、购买行为记录、停留时间,可以使用匿名写入功能。只需在日志流页面开启匿名写入开关,就可以将用户行为信息上传到云日志服务的日志流中。
使用匿名写入采集日志功能仅支持华北-北京四、华东-上海一、华南-广州区域的白名单用户使用,如有需要,请提交工单,其他区域暂不支持申请开通。
背景信息
- 用户使用的浏览器、操作系统、分辨率等信息。
- 用户浏览行为记录(例如:用户在网站上的单击行为、购买行为等信息)。
- 用户在App中的停留时间、是否活跃等信息。
开启匿名写入
- 登录云日志服务控制台。
- 单击日志组名称对应的按钮。
- 单击“创建日志流”,在创建日志流页面,参考表1填写日志流相关信息,开启“匿名写入”,适用于端侧SDK上报日志,打开匿名写入则表示该日志流打开匿名写入权限,不会经过有效鉴权,可能产生脏数据。
图1 创建日志流
表1 日志流参数说明 参数
说明
日志组名称
默认显示目标日志组名称。
日志流名称
日志流名称只支持输入英文、数字、中文、中划线、下划线及小数点,且不能以小数点、下划线开头或以小数点结尾。长度为1-64个字符。
企业项目
选择业务需要的企业项目,默认为default。也可单击“查看企业项目”,在企业项目管理页面查看全部企业项目。
日志存储
若关闭日志存储,则无法开启日志存储时间。
- 开启“日志存储”:日志将会被存入搜索引擎,能使用日志全量功能。
- 关闭“日志存储”:日志不会存储到LTS,可节约索引流量和存储费用,只能使用日志生成指标、转储功能,不能使用日志搜索分析、告警、消费加工等其他功能。
日志存储时间(天)
日志流的存储时间,即日志上报到LTS后日志存储的时间。
日志数据默认存储30天,可以在1~365天之间设置。
- 打开日志流的“日志存储时间”:日志的存储时间使用日志流设置的日志存储时间。
- 关闭日志流的“日志存储时间”:日志的存储时间使用日志组设置的日志存储时间。
智能冷存储
开启日志存储时间后,根据业务需要设置智能冷存储功能。详细请参考智能冷存储。
说明:开启智能冷存储需要日志存储时间大于7天。
标准存储层数据保存时间
开启智能冷存储后,需要设置标准存储层数据的保存时间。
标准存储数据至少需保存7天才能转换为智能冷存储层数据。当日志保存时间大于标准存储层数据保存时间,且小于日志存储时间时,日志数据将自动转换为智能冷存储层数据存储。
标签
按照业务需求对不同的日志流添加对应的标签,单击“添加标签”,分别填写标签键key和标签值value。
说明:- 如需添加多个标签可重复该步骤,最多支持添加20个标签。
- 如需删除标签可单击标签操作列的“删除”。
- 标签键长度不能超过128个字符;标签值长度不能超过255个字符。
- 标签键名称不可重复。
- 如果配置转储时使用了该标签,删除标签后,请同步修改转储配置信息。
匿名写入
匿名写入默认关闭,适用于安卓/IOS/小程序/浏览器端上报日志,打开匿名写入则表示该日志流打开匿名写入权限,不会经过有效鉴权,可能产生脏数据。关于SDK使用请参考SDK接入。
备注
自定义填写备注信息,字符长度0-1024个字符。
- 单击“确定”。
通过HTTP GET请求上传日志
开通匿名写入后,您可以通过以下方法上传日志到日志流中。
- HTTP GET请求,开通GET请求的白名单后,技术支持工程师提供{endpoint}地址才能此功能。
/v3/{project_id}/lts/groups/{log_group_id}/streams/{log_stream_id}/struct/logs?key1=val1&key2=val2
- GET接口总数据量不能超过16KB,超过可能会上报失败。
- 不支持压缩。
- 配置参数说明
表2 配置参数 参数
是否必选
参数类型
描述
project_id
是
String
项目ID,获取方式请参见:获取账号ID、项目ID、日志组ID、日志流ID。
缺省值:None
最小长度:32
最大长度:32
log_group_id
是
String
日志组ID,获取方式请参见:获取账号ID、项目ID、日志组ID、日志流ID。
缺省值:None
最小长度:36
最大长度:36
log_stream_id
是
String
日志流ID,获取方式请参见:获取账号ID、项目ID、日志组ID、日志流ID。
缺省值:None
最小长度:36
最大长度:36
key1=val1&key2=val2
是
String
您要上传到日志服务的键值对(Key-Value),支持设置多个键值对,由&隔开。请确保长度小于16KB。
- 对于上报日志中的特殊字符,请您使用url编码,否则可能出现日志上报乱码、失败。
- 日志长度小于16KB,指的是url编码后的长度。假如您的日志大小只有13KB,但是经过编码后的大小为17KB,也是超过长度限制。
- 响应参数
表3 响应Body参数 参数
参数类型
描述
errorCode
String
错误码。
枚举值:
- SVCSTG.ALS.200.200
errorMessage
String
调用失败响应信息描述。
枚举值:
- Report success.
result
String
响应结果。
- 请求示例
curl -k "https://lts-access.cn-north-4.myhuaweicloud.com:8102/v3/xxxxxxProject_id/lts/groups/xxxxxxLog_group_id/streams/xxxxxxxLog_stream_id/struct/logs?key1=val1&key2=val2"
- 响应示例
日志上报成功。
{ "errorCode": "SVCSTG.ALS.200.200", "errorMessage": "Report success.", "result": null }
- 状态码
表4 状态码 状态码
描述
200
请求响应成功。
400
BadRequest。非法请求。建议根据error_msg直接修改该请求,不要重试该请求。
401
在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。
403
Forbidden。请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。
500
系统内部错误。
503
ServiceUnavailable。被请求的服务无效,服务不可用。