| Copyright | (c) 2013-2023 Brendan Hay |
|---|---|
| License | Mozilla Public License, v. 2.0. |
| Maintainer | Brendan Hay |
| Stability | auto-generated |
| Portability | non-portable (GHC extensions) |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
Amazonka.XRay.PutTraceSegments
Description
Uploads segment documents to Amazon Web Services X-Ray. The X-Ray SDK generates segment documents and sends them to the X-Ray daemon, which uploads them in batches. A segment document can be a completed segment, an in-progress segment, or an array of subsegments.
Segments must include the following fields. For the full segment document schema, see Amazon Web Services X-Ray Segment Documents in the Amazon Web Services X-Ray Developer Guide.
Required segment document fields
name- The name of the service that handled the request.id- A 64-bit identifier for the segment, unique among segments in the same trace, in 16 hexadecimal digits.trace_id- A unique identifier that connects all segments and subsegments originating from a single client request.start_time- Time the segment or subsegment was created, in floating point seconds in epoch time, accurate to milliseconds. For example,1480615200.010or1.480615200010E9.end_time- Time the segment or subsegment was closed. For example,1480615200.090or1.480615200090E9. Specify either anend_timeorin_progress.in_progress- Set totrueinstead of specifying anend_timeto record that a segment has been started, but is not complete. Send an in-progress segment when your application receives a request that will take a long time to serve, to trace that the request was received. When the response is sent, send the complete segment to overwrite the in-progress segment.
A trace_id consists of three numbers separated by hyphens. For
example, 1-58406520-a006649127e371903a2de979. This includes:
Trace ID Format
- The version number, for instance,
1. - The time of the original request, in Unix epoch time, in 8
hexadecimal digits. For example, 10:00AM December 2nd, 2016 PST in
epoch time is
1480615200seconds, or58406520in hexadecimal. - A 96-bit identifier for the trace, globally unique, in 24 hexadecimal digits.
Synopsis
- data PutTraceSegments = PutTraceSegments' {}
- newPutTraceSegments :: PutTraceSegments
- putTraceSegments_traceSegmentDocuments :: Lens' PutTraceSegments [Text]
- data PutTraceSegmentsResponse = PutTraceSegmentsResponse' {}
- newPutTraceSegmentsResponse :: Int -> PutTraceSegmentsResponse
- putTraceSegmentsResponse_unprocessedTraceSegments :: Lens' PutTraceSegmentsResponse (Maybe [UnprocessedTraceSegment])
- putTraceSegmentsResponse_httpStatus :: Lens' PutTraceSegmentsResponse Int
Creating a Request
data PutTraceSegments Source #
See: newPutTraceSegments smart constructor.
Constructors
| PutTraceSegments' | |
Fields
| |
Instances
newPutTraceSegments :: PutTraceSegments Source #
Create a value of PutTraceSegments with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:traceSegmentDocuments:PutTraceSegments', putTraceSegments_traceSegmentDocuments - A string containing a JSON document defining one or more segments or
subsegments.
Request Lenses
putTraceSegments_traceSegmentDocuments :: Lens' PutTraceSegments [Text] Source #
A string containing a JSON document defining one or more segments or subsegments.
Destructuring the Response
data PutTraceSegmentsResponse Source #
See: newPutTraceSegmentsResponse smart constructor.
Constructors
| PutTraceSegmentsResponse' | |
Fields
| |
Instances
newPutTraceSegmentsResponse Source #
Arguments
| :: Int | |
| -> PutTraceSegmentsResponse |
Create a value of PutTraceSegmentsResponse with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:unprocessedTraceSegments:PutTraceSegmentsResponse', putTraceSegmentsResponse_unprocessedTraceSegments - Segments that failed processing.
PutTraceSegmentsResponse, putTraceSegmentsResponse_httpStatus - The response's http status code.
Response Lenses
putTraceSegmentsResponse_unprocessedTraceSegments :: Lens' PutTraceSegmentsResponse (Maybe [UnprocessedTraceSegment]) Source #
Segments that failed processing.
putTraceSegmentsResponse_httpStatus :: Lens' PutTraceSegmentsResponse Int Source #
The response's http status code.