Report

class Report(    val header_: ReportHeader? = null,     traces_per_query: Map<String, TracesAndStats> = emptyMap(),     val end_time: Instant? = null,     val operation_count: Long = 0,     val traces_pre_aggregated: Boolean = false,     unknownFields: ByteString = ByteString.EMPTY) : Message<Report, Nothing>

This is the top-level message used by the new traces ingress. This is designed for the apollo-engine-reporting TypeScript agent and will eventually be documented as a public ingress API. This message consists solely of traces; the equivalent of the StatsReport is automatically generated server-side from this message. Agent should either send a trace or include it in the stats for every request in this report. Generally, buffering up until a large size has been reached (say, 4MB) or 5-10 seconds has passed is appropriate. This message used to be know as FullTracesReport, but got renamed since it isn't just for traces anymore

Constructors

Link copied to clipboard
constructor(    header_: ReportHeader? = null,     traces_per_query: Map<String, TracesAndStats> = emptyMap(),     end_time: Instant? = null,     operation_count: Long = 0,     traces_pre_aggregated: Boolean = false,     unknownFields: ByteString = ByteString.EMPTY)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val adapter: ProtoAdapter<Report>
Link copied to clipboard
val end_time: Instant? = null

This is the time that the requests in this trace are considered to have taken place If this field is not present the max of the end_time of each trace will be used instead. If there are no traces and no end_time present the report will not be able to be processed. Note: This will override the end_time from traces. required if no traces in this message

Link copied to clipboard
val header_: ReportHeader? = null
Link copied to clipboard

Total number of operations processed during this period.

Link copied to clipboard

key is statsReportKey (# operationName\nsignature) Note that the nested traces will not have a signature or details.operationName (because the key is adequate).

Link copied to clipboard

If this is set to true, the stats in TracesWithStats.stats_with_context represent all of the operations described from this report, and the traces in TracesWithStats.trace are a sampling of some of the same operations. If this is false, each operation is described in precisely one of those two fields.

Link copied to clipboard
val unknownFields: ByteString

Functions

Link copied to clipboard
fun copy(    header_: ReportHeader? = this.header_,     traces_per_query: Map<String, TracesAndStats> = this.traces_per_query,     end_time: Instant? = this.end_time,     operation_count: Long = this.operation_count,     traces_pre_aggregated: Boolean = this.traces_pre_aggregated,     unknownFields: ByteString = this.unknownFields): Report
Link copied to clipboard
fun encode(sink: BufferedSink)
Link copied to clipboard
fun encodeByteString(): ByteString
Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open override fun toString(): String