A newer version is available. For the latest information, see the
current release documentation.
Transactionsedit
Transactions are events corresponding to an incoming request or similar task occurring in a monitored service.
Transaction Schemaedit
The APM Server uses JSON Schema for validating requests. The specification for transactions is defined below:
{ "$id": "docs/spec/transactions/transaction.json", "type": "object", "description": "An event corresponding to an incoming request or similar task occurring in a monitored service", "allOf": [ { "$ref": "../timestamp_epoch.json" }, { "properties": { "id": { "type": "string", "description": "Hex encoded 64 random bits ID of the transaction.", "maxLength": 1024 }, "trace_id": { "description": "Hex encoded 128 random bits ID of the correlated trace.", "type": "string", "maxLength": 1024 }, "parent_id": { "description": "Hex encoded 64 random bits ID of the parent transaction or span. Only root transactions of a trace do not have a parent_id, otherwise it needs to be set.", "type": ["string", "null"], "maxLength": 1024 }, "span_count": { "type": "object", "properties": { "started": { "type": "integer", "description": "Number of correlated spans that are recorded." }, "dropped": { "type": ["integer","null"], "description": "Number of spans that have been dropped by the agent recording the transaction." } }, "required": ["started"] }, "context": { "$ref": "../context.json" }, "duration": { "type": "number", "description": "How long the transaction took to complete, in ms with 3 decimal points" }, "name": { "type": ["string","null"], "description": "Generic designation of a transaction in the scope of a single service (eg: 'GET /users/:id')", "maxLength": 1024 }, "result": { "type": ["string", "null"], "description": "The result of the transaction. For HTTP-related transactions, this should be the status code formatted like 'HTTP 2xx'.", "maxLength": 1024 }, "type": { "type": "string", "description": "Keyword of specific relevance in the service's domain (eg: 'request', 'backgroundjob', etc)", "maxLength": 1024 }, "marks": { "type": ["object", "null"], "description": "A mark captures the timing of a significant event during the lifetime of a transaction. Marks are organized into groups and can be set by the user or the agent.", "patternProperties": { "^[^.*\"]*$": { "$ref": "mark.json" } }, "additionalProperties": false }, "sampled": { "type": ["boolean", "null"], "description": "Transactions that are 'sampled' will include all available information. Transactions that are not sampled will not have 'spans' or 'context'. Defaults to true." } }, "required": ["id", "trace_id", "span_count", "duration", "type"] } ] }