
什么是可观测性
|
21
可能导致异常的相关模式。例如,你可以检索:“所有
502
错误请求都发生在过去半小
时,发生在主机
foo
上”或者“所有
403
错误请求都在
/export
端点,
由用户
bar
产
生”或者“所有超时的支付请求都由应用程序
baz
以及这个应用所在的主机发送到
/
payments
端点
”。
只用这
6
个维度,你就可以检测一组有用的条件来确定应用系统中可能发生的情况。现
在想象一下,除了
6
个维度之外,你可能还需要关注成百上千个包含任何细节、值、计
数器或字符串的维度,这些维度在将来的某个时候可能对调试有帮助。例如,你可以包
含像这样的维度:
app.api_key
app.batch
app.batch_num_data_sets
app.batch_total_data_points
app.dataset.id
app.dataset.name
app.dataset.partitions
app.dataset.slug
app.event_handler
app.raw_size_bytes
app.sample_rate
app.team.id
…
response.content_encoding
response.content_type
response.status_code
service_name
trace.span_id
trace.trace_id
有了更多可用的维度,你就可以检测各种事件,从而在任何一组服务请求之间建立高度
复杂的关联(参见第
8
章)。数据的维度越高,你就越有可能发现应用程序行为中隐藏