I have the following questions:
1. how the span isError convert to the status of service scope, I have the
following questions
2. how the oal define in fllowing status:
In SkyWalking, it depends on the interface response of C, if C propagates
the error because of b's response code, then yes, it will be recorded as
one failure.
C(method1 NORMAL )-> C(method2 EXCEPTION )-> B(method1 NORMAL
)->B(method2 EXCEPTION )
在 2020/1/2 下午4:20,“Sheng Wu”<[email protected]> 写入:
Answer inline.
Liu,Jiapeng <[email protected]> 于2020年1月2日周四 下午4:06写道:
> Hi All:
> Dear skywalking submitter,I am from Baidu Aifanfan,.We are currently
> selecting the tracing system.There are currently 2 alternatives
> 1. Skywalking
> 2. Baidu Internal System in feng chao
> Since the calculation of skywalking relies only on OAP clusters, reducing
> the cost of deployment and operation and maintenance, currently it is more
> inclined to choose skywalking
> As the current system sla calculation is relatively special, the specific
> logic is as follows:
> One call across 3 systems.The call is c-> b-> a. If B is exception, A is
> normal, C will also be recorded as an exception
>
In SkyWalking, it depends on the interface response of C, if C propagates
the error because of b's response code, then yes, it will be recorded as
one failure.
>
> I want to ask All, service, entrypoint dimensions, what is the logic of
> sla? At present our department will want to It is used in the test
> environment on k8s, but there is a problem in the calculation logic of
sla,
> because the relevant information is relatively small and cannot be
> determined at present,
>
SLA today in SkyWalking is quite simple, SLA == successful rate, due to the
OAL script.
> service_sla = from(Service.*).percent(status == true);
You could override this logic by providing your own function at OAL level.
> The currently understood skywalking process:
> 1. java agent dot, generate span
> 2. Instance-level spans are aggregated into segments and issued
> 3. OAP parsing segments and local files
> 4. Stream processing
>
>
> Points in doubt (none found in the code):
> 1.The segment index in the es data has an isError field. Is this part of
> the isError an OR relationship? If there is an error in a segment in a
> segment, the overall segment is judged for error
>
If there is at least one span in the segment tagged as an error, then this
segment will be `isError=true`.
> 2.How does the isError of the spans in the segment converge to statuses
> such as ALL, SERVICE, etc.
>
That depends on the OAL script. Such as for service
> service_sla = from(Service.*).percent(status == true);
You could find all in the official_analysis.oal in source code or release
tar
> 3. If the access party's RBI interface throws a service exception, is
> there an ignored interface in skywalking?
>
What is RBI interface? Today, all error is related to error status of span
in the tracing scenario,
https://github.com/apache/skywalking/blob/4e501328171f434c74144d373be6df0264f43a24/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/MultiScopesSpanListener.java#L224.
How is span in error status, it depends on the plugin. Mostly, if an
exception or 400+ HTTP response code detected.
Sheng Wu 吴晟
Twitter, wusheng1108
>
> I hope to get help from you, thankyou
>
>
>
> Evan.liu
>
>
>
>
> Evan.liu
>
>