HttpClient 日志

更新时间: 2019-06-21

SOFATracer 集成 sofa-tracer-httpclient-plugin 插件后输出 HttpClient 请求的链路数据,默认为 JSON 数据格式。

HttpClient 摘要日志(httpclient-digest.log)

以 JSON 格式输出的数据,相应 key 的含义解释如下:

key表达含义
time日志打印时间
local.app当前应用名
traceIdTraceId
spanIdSpanId
request.url请求 URL
method请求 HTTP 方法
result.codeHTTP 调用返回状态码
req.size.bytesRequest Body 大小
resp.size.bytesResponse Body 大小
time.cost.milliseconds请求耗时(ms)
current.thread.name线程名
remote.app被调用的应用名称
baggage透传的 baggage 数据

样例:

  1. {"time":"2018-09-27 21:58:43.067","local.app":"HttpClientDemo","traceId":"0a0fe8801538056723034100235072","spanId":"0","request.url":"http://localhost:8080/httpclient","method":"GET","result.code":"200","req.size.bytes":0,"resp.size.bytes":-1,"time.cost.milliseconds":33,"current.thread.name":"I/O dispatcher 1","remote.app":"","baggage":""}

备注:应用名称可以通过 SofaTracerHttpClientBuilder 构造 HttpClient 实例时以入参的形式传入。

HttpClient 统计日志(httpclient-stat.log)

stat.key 即本段时间内的统计关键字集合,统一关键字集合唯一确定一组统计数据,包含local.app、request.url、和 method 字段.

key表达含义
time日志打印时间
stat.keylocal.app当前应用名
request.url请求 URL
method 请求 HTTP 方法
count本段时间内请求次数
total.cost.milliseconds本段时间内的请求总耗时(ms)
success请求结果:Y 表示成功(1 开头和 2 开头的结果码算是成功的,302表示的重定向算成功,其他算是失败的);N 表示失败
load.test压测标记:T 是压测;F 不是压测

样例:

  1. {"time":"2018-09-27 21:59:42.233","stat.key":{"request.url":"http://localhost:8080/httpclient","local.app":"HttpClientDemo","method":"GET"},"count":2,"total.cost.milliseconds":562,"success":"true","load.test":"F"}