实时日志采集字段说明
开通实时日志服务后,您可以根据本文的表格查看不同类型的日志中所采集字段的名称和含义。
您可以自行选择投递下表字段,为了降低数据成本,建议仅选择实际所需的字段进行投递。
同一种日志类型下的所有投递任务共享相同的字段设置。对于某一任务所做的字段编辑将会在全局范围内生效。例如,当用户访问日志默认勾选了domain字段,如果用户在某个任务下取消了domain字段,那么该字段会立即从其他“用户访问日志”投递任务中移除。
注意事项
若A域名需要从账号1迁移到账号2,需先关闭A域名在账号1下的实时日志投递,待A域名迁移至账号2后,在账号2上重新创建A域名的实时日志投递。如未操作以上实时日志的关闭和新创建的动作,实时日志将持续向账号1投递日志并计费。
少数ISP在特定区域可能会分配私有IP地址给用户端,导致DCDN节点接收到的是用户的私有IP地址。
说明私有IP地址范围有以下三个:
A类私有IP地址:10.0.0.0~10.255.255.255,子网掩码:10.0.0.0/8
B类私有IP地址:172.16.0.0~172.31.255.255,子网掩码:172.16.0.0/12
C类私有IP地址:192.168.0.0~192.168.255.255,子网掩码:192.168.0.0/16
用户访问日志字段
开通用户访问日志服务后,您可以根据以下表格查看用户访问日志中采集字段的含义。
字段名称 | 字段含义 | 是否建立SLS索引 | 是否作为内置可视化分析的字段 |
unixtime | 请求时间。 | 是 | 是 |
domain | 请求的域名。 | 是 | 是 |
method | 请求方法。 | 是 | 是 |
scheme | 请求协议。 | 是 | 否 |
uri | 请求资源。 | 是 | 是 |
uri_param | 请求参数。 | 是 | 否 |
client_ip | 用户真实IP。从用户请求携带的请求头 | 是 | 是 |
proxy_ip | 代理IP。从用户请求携带的请求头 | 是 | 否 |
remote_ip | 与DCDN节点直接连接的公网IP。 | 是 | 否 |
remote_port | 和DCDN节点直接连接公网端口。 | 是 | 否 |
refer_protocol | HTTP Referer中的协议。 | 是 | 否 |
refer_domain | HTTP Referer中domain信息。 | 是 | 是 |
refer_uri | HTTP Referer中URI信息。 | 是 | 否 |
refer_param | HTTP Referer中的参数信息。 | 是 | 否 |
request_size | 请求大小(包体+头部),单位:字节。 | 是 | 否 |
request_time | 请求响应时间,单位:毫秒。 | 是 | 是 |
response_size | 请求返回大小,单位:字节。 | 是 | 否 |
return_code | 请求响应码。 | 是 | 是 |
sent_http_content_range | 应答头里表示的Range信息(由源站创建),如bytes:0~99/200。 | 是 | 否 |
server_addr | 服务的DCDN节点IP。 | 是 | 否 |
server_port | 服务的DCDN节点服务端口。 | 是 | 否 |
body_bytes_sent | 实际发送body大小,单位:字节。 | 是 | 否 |
content_type | 请求的资源类型。 | 是 | 否 |
hit_info | 是否命中信息(直播、动态加速除外),取值:
| 是 | 是 |
http_range | 用户请求中Header头Range字段取值,如bytes:0~100。 | 是 | 否 |
user_agent | 用户代理信息。 | 是 | 是 |
user_info | 用户信息。 | 是 | 否 |
uuid | 请求唯一标识。 | 是 | 否 |
via_info | Via头信息。 | 是 | 否 |
xforwordfor | 请求头中X-Forwarded-For字段。 | 是 | 否 |
边缘程序日志字段
开通边缘程序日志服务后,您可以根据以下表格查看边缘程序日志中采集字段的含义。
字段名称 | 字段含义 | 是否建立SLS索引 | 是否作为内置可视化分析的字段 |
console_alert | 用户在JS代码中调用console.alert()打印的自定义日志。 | 是 | 是 |
error_code | 代码执行错误为0表示没有错误。 | 是 | 是 |
error_message | error_code对应的错误说明。 | 是 | 是 |
fetch_status | 每个子请求的状态信息。 | 是 | 是 |
fetch_uuid | 子请求的UUID。 | 是 | 是 |
http_2xx | 子请求2xx的数量。 | 是 | 是 |
http_3xx | 子请求3xx的数量。 | 是 | 是 |
http_4xx | 子请求4xx的数量。 | 是 | 是 |
http_5xx | 子请求5xx的数量。 | 是 | 是 |
http_status_other | 子请求其他状态数量。 | 是 | 是 |
host | 主请求的HOST头。 | 是 | 是 |
in_method | 主请求的HTTP方法。 | 是 | 是 |
in_path | 主请求的路径。 | 是 | 是 |
out_size | 回复的整个大小。 | 是 | 是 |
out_status | 回复的状态码。 | 是 | 是 |
code_ver | 代码版本号。 | 是 | 是 |
routine_spec | 边缘程序的规格。 | 是 | 是 |
total_cpu_time_μs | 整个请求的CPU耗时,单位:微秒。 | 是 | 是 |
total_real_time_ms | 请求在ER里实际执行的时间,含子请求等待时间、IO时间,单位:毫秒。 | 是 | 是 |
uuid | 主请求的EagleTraceID。 | 是 | 是 |
UnixTime | 请求进入ER的时间。 | 是 | 是 |
WAF日志字段
开通边缘WAF日志服务后,您可以根据以下表格查看边缘WAF日志中采集字段的含义。
字段名称 | 字段含义 | 是否建立SLS索引 | 示例值 |
unixtime | 请求时间。 | 是 | 1640966400 |
domain | 请求的域名。 | 是 | api.aliyun.com |
method | 请求方法。 | 是 | GET |
scheme | 请求协议。 | 是 | http |
uri | 请求资源。 | 是 | /news/search.php |
uri_param | 请求参数。 | 是 | title=tm_content%3Darticle&pid=123 |
content_type | 被请求的内容类型。 | 是 | application/x-www-form-urlencoded |
matched_host | 客户端请求匹配到的已接入进行服务的域名。 | 是 | *.aliyun.com |
request_id | 请求唯一标识。 | 是 | 792a121e16405968501823589e |
return_code | 请求响应码。 | 是 | 200 |
referer | HTTP refer字段。 | 是 | http://example.com |
user_agent | 用户代理信息。 | 是 | Dalvik/2.1.0 (Linux; U; Android 10; Android SDK built for x86 Build/QSR1.200715.002) |
x_forwarded_for | 访问请求头部中带有的XFF头信息,用于识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址。 | 是 | 101.XX.XX.120 |
client_ip | 用户真实IP。 | 是 | 1.XX.XX.1 |
final_test | 最终匹配的是观察模式。 | 是 | FALSE |
cookie | 访问请求头部中带有的访问来源客户端Cookie信息。 | 是 | k1=v1;k2=v2 |
final_action | 最终执行的防护动作。
说明 如果一个请求同时触发了多个防护模块,则仅记录最终执行的防护动作。防护动作的优先级由高到低依次为:拦截(block) > 普通滑块验证(captcha) > 动态令牌验证(sigchl)>JS验证(js)。 | 是 | block |
final_plugin | 最终匹配的防护模块信息。
匹配的防护模块可能有多个值,多个值之间用半角逗号(,)分隔。对应防护模块信息:
| 是 |
|
final_rule_id | 最终匹配的防护规则信息。
匹配的防护规则ID可能有多个值,多个值之间用半角逗号(,)分隔。 | 是 |
|
remote_addr | 请求IP。 | 是 | 1.XX.XX.1 |