class OpenCensus::Trace::Formatters::Binary
This formatter serializes and deserializes span context according to the OpenCensus' BinaryEncoding specification. See [documentation](github.com/census-instrumentation/opencensus-specs/blob/master/encodings/BinaryEncoding.md).
Constants
- BINARY_FORMAT
Internal format used to (un)pack binary data
@private
Public Instance Methods
deserialize(binary)
click to toggle source
Deserialize a trace context header into a TraceContext
object.
@param [String] binary @return [TraceContextData, nil]
# File lib/opencensus/trace/formatters/binary.rb, line 38 def deserialize binary data = binary.unpack(BINARY_FORMAT) if data[0].zero? && data[1].zero? && data[3] == 1 && data[5] == 2 TraceContextData.new data[2], data[4], data[6] else nil end end
serialize(trace_context)
click to toggle source
Serialize a TraceContextData object.
@param [TraceContextData] trace_context @return [String]
# File lib/opencensus/trace/formatters/binary.rb, line 53 def serialize trace_context [ 0, # version 0, # field 0 trace_context.trace_id, 1, # field 1 trace_context.span_id, 2, # field 2 trace_context.trace_options ].pack(BINARY_FORMAT) end