Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visualize uninstrumented services in the dependency diagrams #5062

Open
wants to merge 11 commits into
base: main
Choose a base branch
from

Conversation

nidhey27
Copy link

@nidhey27 nidhey27 commented Dec 30, 2023

Which problem is this PR solving?

Description of the changes

  • Updated GetDependencies to identify and include client spans without corresponding server spans, ensuring a complete dependency graph.
  • Implemented updateServiceDependencyLinks to streamline the update of service dependencies, reducing code duplication.
  • Enabled the representation of uninstrumented services in the dependency graph by inferring names from client spans lacking server spans.

How was this change tested?

  • Introduced TestInferredServiceDependency to specifically evaluate the functionality of inferred service dependencies in the scenario of uninstrumented services.
  • Created a client span without a corresponding server span and asserted the correct formation of dependencies, ensuring the inclusion of inferred services in the dependency graph.
  • Employed assertions to confirm the presence and accuracy of inferred service dependencies, ensuring they are adequately represented with the correct attributes and relationships.

Checklist

@nidhey27 nidhey27 requested a review from a team as a code owner December 30, 2023 04:33
@nidhey27
Copy link
Author

nidhey27 commented Dec 30, 2023

Ref PR: #4853

@kannan-ak
Copy link

+1, we are awaiting this feature.
Currently the deep dependency graph is not showing the relationship with the databases and other non-instrumented services, for the given service.

Copy link

codecov bot commented Apr 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 93.76%. Comparing base (a72dfc3) to head (d031261).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5062      +/-   ##
==========================================
- Coverage   95.20%   93.76%   -1.44%     
==========================================
  Files         343      343              
  Lines       16813    16846      +33     
==========================================
- Hits        16006    15795     -211     
- Misses        608      869     +261     
+ Partials      199      182      -17     
Flag Coverage Δ
badger 10.43% <0.00%> (-0.04%) ⬇️
cassandra-3.x 18.31% <0.00%> (-0.07%) ⬇️
cassandra-4.x 18.31% <0.00%> (-0.07%) ⬇️
elasticsearch-5.x 20.81% <0.00%> (-0.10%) ⬇️
elasticsearch-6.x 20.81% <0.00%> (-0.13%) ⬇️
elasticsearch-7.x 20.87% <0.00%> (-0.12%) ⬇️
elasticsearch-8.x 21.10% <0.00%> (-0.03%) ⬇️
grpc ?
kafka 10.13% <0.00%> (-0.04%) ⬇️
opensearch-1.x 20.90% <0.00%> (-0.07%) ⬇️
opensearch-2.x 20.93% <0.00%> (-0.05%) ⬇️
unittests 91.74% <100.00%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature]: Visualize uninstrumented services in the dependency diagrams
3 participants