لتأسيس العلاقة بين الوالدين والطفل بين الامتدادات، يجب استخدام الرؤوس في المواقف التي يكون فيها نشر السياق غير قابل للتطبيق. في هذا السيناريو، يتم تضمين معرف التتبع ومعرف الامتداد داخل رؤوس وسيط الرسائل، مما يسمح للمشترك بإنشاء نطاق جديد باستخدام معرف التتبع الأصلي.
يمكن للخطوات التالية يمكن اتخاذها لإنشاء سياق أو امتداد على جانب المشترك باستخدام معرف التتبع:
func constructNewSpanContext(traceID string) (spanContext trace.SpanContext, err error) {
traceID, err := trace.TraceIDFromHex(traceID)
if err != nil {
return trace.SpanContext{}, err
}
return trace.NewSpanContext(trace.SpanContextConfig{
TraceID: traceID,
}), nil
}
spanContext, err := constructNewSpanContext(request.TraceID)
if err != nil {
log.Fatal(err)
}
requestContext := context.Background()
requestContext = trace.ContextWithSpanContext(requestContext, spanContext)
إنشاء نطاق جديد باستخدام السياق المخصب:requestInLoopSpan, _ := otel.Tracer("requestInLoop").Start(requestContext, "requestInLoopSpan")
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3