本节我们将在OpenSearch中查看Trace。我们将通过trace来定位微服务中存在问题的模块
WEB页面的入口通过LoadBalancer类型的service来暴露:
kubectl get svc -nclient-service | awk '{print $4}' | tail -n1
首先进入这个页面,点击添加商品到购物车,并完成Step1到Step4的购买过程。不断重复这四个过程,生成几条购买记录,其中的几条购物记录可以在中间取消订单:

在OpenSearch控制台中,进入Observability页面:

点击Create application:

输入应用的名称及描述:

展开Log source部分,在Base Query中输入source = sample_app_logs:

在Service & entities部分,选择所有的服务:

其他保持默认,点击Create:

创建完成后,自动进入test-app这个应用的Observability页面。在Overview部分,可以查看每个trace group的延迟情况、错误率:

在Service部分,能看到每个服务的情况:

在Trace & Spans部分,点击某个trace id,能够查看具体的信息:

这些信息包括Time spent by service和Spans


目前我们收到用户的反馈,整个购物的流程经常出现报错。现在我们将通过trace来定位具体是哪个模块出了问题
进入之前的Overview页面,查看Application Composition Map。在Error Rate我们看到是payment这个模块颜色最深,表示它的出错率最高,点击它:

进入到Traces & Spans页面,里面展示了跟payment相关的所有trace:
