Cat Client
优质
小牛编辑
126浏览
2023-12-01
总览
我们目前支持以下编程语言:
以下编程语言在我们的支持计划中:
- PHP
- C# (.net)
名词解释
消息类型
- Transaction
- Event
- Heartbeat
- Metric
消息属性
type
表示一种类型的消息,比如
SQL
,RPC
或HTTP
。name
表示一个特定的行为,举例来说:
- 如果 type 是
SQL
, name 可以是select <?> from user where id = <?>
, 表示一个 SQL 模版。 - 如果 type 是
RPC
, name 可以是QueryOrderByUserId(string, int)
, 表示一个 API 的函数签名。 如果 type 是
HTTP
, name 可以是/api/v8/{int}/orders
, 表示基础 URI。更详细的信息建议在 data 字段中记录,比如 api 的参数
- 如果 type 是
status
表示消息的状态。
当消息的状态不为 "0" 时,会被标记成一个 "problem"。无论消息类型是什么,只要被标记为 "problem",它所在的消息树就不会被聚合,这也意味着你随时可以获取它完整的日志信息。
data
记录一个消息的详细信息
- 如果 type 是
SQL
, data 可以是id=75442432
- 如果 type 是
RPC
, data 可以是userType=dianping&userId=9987
如果 type 是
HTTP
, data 可以是orderId=75442432
在一些情况下,
data
字段会包含错误堆栈信息(比如代表一个 exception 或者 error)
- 如果 type 是
timestamp
代表消息的创建时间,会在消息树中展示。
从
1970-01-01 00:00:00
开始到创建时经过的毫秒数。
Transaction 特有的参数
duration
表示一个 transaction 花费的时间,以毫秒计算。
会在 transaction 被完成时计算。
duration = currentTimestamp() - durationStart
你可以通过相关 API 在 transaction 被完成前指定
duration
的值,并且跳过计算过程。durationStart
表示 transaction 开始执行的时间。
区别于
timestamp
,durationStart
只用来计算 transaction 的duration
,修改durationStart
不会影响timestamp
。