Support v3 extension header#4666
Support v3 extension header#4666wu-sheng merged 10 commits intoapache:masterfrom mrproliu:v3-extension
Conversation
Codecov Report
@@ Coverage Diff @@
## master #4666 +/- ##
============================================
- Coverage 51.30% 0.00% -51.31%
============================================
Files 1272 152 -1120
Lines 27623 3731 -23892
Branches 2997 444 -2553
============================================
- Hits 14171 0 -14171
+ Misses 12810 3731 -9079
+ Partials 642 0 -642 Continue to review full report at Codecov.
|
|
@dmsolr @wu-sheng @kezhenxu94 I think this PR is ready to review, thanks. |
|
@kezhenxu94 hello, I see the |
Yes, feel free to rerun it next time |
| entryService: http://localhost:8080/apm-toolkit-trace-scenario/case/tool-kit | ||
| healthCheck: http://localhost:8080/apm-toolkit-trace-scenario/case/healthCheck | ||
| startScript: ./bin/startup.sh | ||
| extendEntryHeader: |
There was a problem hiding this comment.
Is this config for injecting headers?
There was a problem hiding this comment.
Yes, follow this config I can read the extension header.
|
And one more important thing, I think you should add |
… capture the ignored context
I seem you have already implemented the |
There was a problem hiding this comment.
LGTM. @arugal after this, you could add the manipulation logic into go2sky, then in MOSN,
Such as in this scenario
HTTP call -> sidecar(1) -> service A -> sidecar(2) ------network-------> sidecar(3) -> serviceB
we should
- At (1), set entry span as normal, active
skipAnalysisin the header and tag exit span asskipAnalysis=true - At (2), override
skipAnalysisto false / or not propagate header ofsw8-x, so entry span isskipAnalysis=true, exit span is normal andsw8header injected as usual - At (3), same as step 1, just process the header, which we should already have. List here just for the explanation. Nothing special on the code level.
The above mode is side car agent mode. We need it when MOSN or Envoy(Rust agent) is deployed in the service mesh scenario. Because in there, proxy would always call delegated service by 127.0.0.1, drawing that on the topology is confusing, but we need this back, when service -> sidecar(active here) -> another sidecar
Basically, we need a mode config in the MOSN tracer config. Values are normal(default), proxy or sidecar. Normal it is fully functional, like it is already done today.
FYI @rootsongjc
Please answer these questions before submitting pull request
Why submit this pull request?
Bug fix
New feature provided
Improve performance
Related issues
Implement Extension Header Item in java agent #4634
New feature or improvement