@@ -143,28 +143,34 @@ void TracingSpanImpl::setComponentId(int32_t component_id) {
143143 component_id_ = component_id;
144144}
145145
146- TracingContextImpl::TracingContextImpl (const DynamicConfig& config,
146+ TracingContextImpl::TracingContextImpl (const std::string& service_name,
147+ const std::string& instance_name,
147148 RandomGenerator& random)
148149 : trace_id_(random.uuid()),
149150 trace_segment_id_ (random.uuid()),
150- config_(config) {}
151+ service_(service_name),
152+ service_instance_(instance_name) {}
151153
152154TracingContextImpl::TracingContextImpl (
153- const DynamicConfig& config, SpanContextPtr parent_span_context,
155+ const std::string& service_name, const std::string& instance_name,
156+ SpanContextPtr parent_span_context,
154157 SpanContextExtensionPtr parent_ext_span_context, RandomGenerator& random)
155158 : parent_span_context_(std::move(parent_span_context)),
156159 parent_ext_span_context_(std::move(parent_ext_span_context)),
157160 trace_id_(parent_span_context_->traceId ()),
158161 trace_segment_id_(random.uuid()),
159- config_(config) {}
162+ service_(service_name),
163+ service_instance_(instance_name) {}
160164
161- TracingContextImpl::TracingContextImpl (const DynamicConfig& config,
165+ TracingContextImpl::TracingContextImpl (const std::string& service_name,
166+ const std::string& instance_name,
162167 SpanContextPtr parent_span_context,
163168 RandomGenerator& random)
164169 : parent_span_context_(std::move(parent_span_context)),
165170 trace_id_(parent_span_context_->traceId ()),
166171 trace_segment_id_(random.uuid()),
167- config_(config) {}
172+ service_(service_name),
173+ service_instance_(instance_name) {}
168174
169175TracingSpanPtr TracingContextImpl::createExitSpan (TracingSpanPtr parent_span) {
170176 auto current_span = createSpan ();
@@ -214,8 +220,8 @@ std::string TracingContextImpl::encodeSpan(
214220 header_value += Base64::encode (trace_id_) + " -" ;
215221 header_value += Base64::encode (trace_segment_id_) + " -" ;
216222 header_value += parent_spanid + " -" ;
217- header_value += Base64::encode (config_. tracerConfig (). service_name () ) + " -" ;
218- header_value += Base64::encode (config_. tracerConfig (). instance_name () ) + " -" ;
223+ header_value += Base64::encode (service_ ) + " -" ;
224+ header_value += Base64::encode (service_instance_ ) + " -" ;
219225 header_value += Base64::encode (endpoint) + " -" ;
220226 header_value += Base64::encode (target_address.data ());
221227
@@ -240,8 +246,8 @@ skywalking::v3::SegmentObject TracingContextImpl::createSegmentObject() {
240246
241247 obj.set_traceid (trace_id_);
242248 obj.set_tracesegmentid (trace_segment_id_);
243- obj.set_service (config_. tracerConfig (). service_name () );
244- obj.set_serviceinstance (config_. tracerConfig (). instance_name () );
249+ obj.set_service (service_ );
250+ obj.set_serviceinstance (service_instance_ );
245251
246252 for (auto & span : spans_) {
247253 auto * entry = obj.mutable_spans ()->Add ();
@@ -260,22 +266,25 @@ bool TracingContextImpl::readyToSend() {
260266 return true ;
261267}
262268
263- TracingContextFactory::TracingContextFactory (const DynamicConfig& config)
264- : config_(config) {}
269+ TracingContextFactory::TracingContextFactory (const TracerConfig& config)
270+ : service_name_(config.service_name()),
271+ instance_name_(config.instance_name()) {}
265272
266273TracingContextPtr TracingContextFactory::create () {
267- return std::make_unique<TracingContextImpl>(config_, random_generator_);
274+ return std::make_unique<TracingContextImpl>(service_name_, instance_name_,
275+ random_generator_);
268276}
269277
270278TracingContextPtr TracingContextFactory::create (SpanContextPtr span_context) {
271- return std::make_unique<TracingContextImpl>(config_, span_context ,
272- random_generator_);
279+ return std::make_unique<TracingContextImpl>(service_name_, instance_name_ ,
280+ span_context, random_generator_);
273281}
274282
275283TracingContextPtr TracingContextFactory::create (
276284 SpanContextPtr span_context, SpanContextExtensionPtr ext_span_context) {
277285 auto context = std::make_unique<TracingContextImpl>(
278- config_, span_context, ext_span_context, random_generator_);
286+ service_name_, instance_name_, span_context, ext_span_context,
287+ random_generator_);
279288 if (ext_span_context->tracingMode () == TracingMode::Skip) {
280289 context->setSkipAnalysis ();
281290 }
0 commit comments