alibaba / alibaba/clusterdata

Microservice traces: issues with "services"?

Open
#158 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
Jupyter Notebook
Stars
2.2k
Forks
482
PR merge metrics
No merged PRs in 30d

Description

Hi I have a few questions regarding identifying services in the traces. Thanks in advance and any help is sincerely appreciated!

**1) When you anonymized the data, did you **consistently** map a service name to a corresponding string?**
Is the example below in the picture true?
eg

**2) Service vs. Online service???**
In the README's Discussion, the answer to "How to identify a specific service in the traces?" is "In practice, microservice architecture adopts proxy modules like Nginx to forward users' requests to an entering MS. The entering MS, e.g., interface of entering MS A in Fig.2, containing multiple interfaces, and each interface provides a specific service. As such, each interface of MS called by proxy MS could be labelled as an online service. As revealed in the paper, we classify the call graphs of each online service into different classes when analyzing the dynamics of microservices. It is worth noting that, some call graphs could even contain two proxy modules, and the name of the second proxy MS are usually recorded as '(?)' or ''. "

I am super confused by how you use different terms.

**2a) Services:** What is the difference between an **_"online service"_** vs. a **_"service"_**?
**2b) Interface:** By interface, do you mean function/method? Or an entire service?
**2c) Proxy:** Is a proxy always a microservice? Can we tell which um/dm in the data are the proxies? Is the set of first services the proxies? How do we know when an "(?)" in the um/dm is a result of some missing data or because of the service being the second proxy?

**3) I found some consistent patterns in the calls that have rpcid as **_"0"_** or rpcid **_"0.1"_**.**

**3a)** Almost always, the calls with rpcid **_"0"_** 's um is an empty string. What does this mean? Is the dm of the call always a proxy or does it count as an entering service or online service?
0

**3b)** Usually, not always, the calls with rpcid **_"0.1"_** has um as "(?)". Do you have any intuition why this is the case?
0 1

Thank you so much!

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the README's Discussion section and the trace examples linked in the issue; compare the definitions of service, online service, interface, proxy, and the rpcid 0/0.1 cases. Done means the documentation clearly answers each numbered question and explains how anonymized service names map consistently.

Written by the indexing model from the issue text.

Assessment

Domain
distributed-systems, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.