Jaeger

uber/jaeger-client-node: backend wont receive data

馋奶兔 提交于 2019-12-12 04:47:43
问题 I'm currently looking into different openTracing Tracer-Implementations. I want to use uber/jaeger-client-node but the backend won't receive my traces. Here is what I did: I started the all-in-one docker image: docker run -d -p5775:5775/udp -p16686:16686 jaegertracing/all-in-one:latest Next, i wrote a simple example application: Gist But when I go to Jaeger UI, nothing is shown about the example service. What did I do wrong? Thanks 回答1: There are two issues here. One is that your code sets

Trace id is not shown on controller level log (Spring boot, Jaeger configuration)

雨燕双飞 提交于 2019-12-11 16:34:46
问题 Language: Java Framework: Spring boot Tools: Jaeger I have done the following configuration for put whole trace on logs. But at controller level log not shown a trace. when hibernate query executed than after trace is put on logs(on service and repository level logs) application.log 2019-11-08 05:14 INFO [iHub-service,] [http-nio-8080-exec-27] INFO c.s.controller.Controller ...............message............. 2019-11-08 05:14 DEBUG [iHub-service,294d434a24290786:294d434a24290786:0:1 - ] [http

How to enrich Jaeger opentracing data with the application logs (produced by slf4j) for Spring Boot?

江枫思渺然 提交于 2019-12-06 03:26:13
问题 There is an existing Spring Boot app which is using SLF4J logger. I decided to add the support of distributed tracing via standard opentracing API with Jaeger as the tracer. It is really amazing how easy the initial setup is - all that is required is just adding two dependencies to the pom.xml : <dependency> <groupId>io.opentracing.contrib</groupId> <artifactId>opentracing-spring-web-autoconfigure</artifactId> <version>${io.opentracing.version}</version> </dependency> <dependency> <groupId>io

Istio distributed tracing with Jaeger not working

邮差的信 提交于 2019-12-06 03:19:04
I'm trying to set up a local k8s cluster and on minikube with installed istio and I have an issue with enabling distributed tracing with Jaeger. I have 3 microservices A -> B -> C . I am propagating the all the headers that are needed: {"x-request-id", "x-b3-traceid", "x-b3-spanid", "x-b3-parentspanid", "x-b3-sampled", "x-b3-flags", "x-ot-span-context"} But on Jaeger interface, I can only see the request to the service A and I cannot see the request going to service B. I have logged the headers that are sent in the request. Headers from service A: Header - x-request-id: c2804368-2ff0-9d90-a2aa

How to enrich Jaeger opentracing data with the application logs (produced by slf4j) for Spring Boot?

北慕城南 提交于 2019-12-04 11:21:11
There is an existing Spring Boot app which is using SLF4J logger. I decided to add the support of distributed tracing via standard opentracing API with Jaeger as the tracer. It is really amazing how easy the initial setup is - all that is required is just adding two dependencies to the pom.xml : <dependency> <groupId>io.opentracing.contrib</groupId> <artifactId>opentracing-spring-web-autoconfigure</artifactId> <version>${io.opentracing.version}</version> </dependency> <dependency> <groupId>io.jaegertracing</groupId> <artifactId>jaeger-core</artifactId> <version>${jaegerVersion}</version> <

DevOps专题 |监控,可观测性与数据存储

隐身守侯 提交于 2019-12-04 08:10:45
对于DevOps而言,监控是其中重要的一环,上一次的专题内容中,我们与大家分享了大型企业级监控系统的设计。今天我们将和大家从另一个角度进一步探讨互联网工程技术领域的监控设计(monitoring):系统的可观测性(observerbality)。 无论监控,还是可观测性,都是工程界的术语,并非严格定义的概念。人们可以描述它,但很难定义它。所以本文不会纠结于这些名词之间的区别。 在实践中,所有这些概念/术语,目标都是增强工程师对于线上系统运行情况的了解。 对工程师而言,监控/可观测性工程存在的意义,是帮助工程师发现问题,定位问题,解决问题。 对系统自身而言,这些工作都是通过数据的采集/存储/分析,以及进一步迭代来完成。 一、监控需求的产生 当程序被交付,部署到生产环境,才是其生命周期中最长的部分的开始。人们需要了解生产环境是否一切正常,监控需求自然而然产生。 互联网发展过程中涌现大量监控相关的工具/系统,Ganlia, Zabbix, RRDTools, Graphite,各自在不同的层面为“是否正常”提供答案。 监控本身,无论是业界对监控的认知,监控工具/系统自身的能力,也在以下两个方向演进着: 黑盒到白盒 资源到业务 这个阶段监控的愿景是很明确的,如何落地则各显神通。 直到 Etsy 于 2011 年通过博客公开了他们的 监控实践,利用 StatsD(已开源)

phpQuery使用DOMDocument::loadHTML方法产生报错的处理方式

半世苍凉 提交于 2019-12-02 20:22:44
发现问题 在做爬虫的时候,用了QueryList,在运行的过程中查看日志,出现很多关于phpQuery单文件的error报错,问题是出在html非标准化格式 [ error ] [2]DOMDocument::loadHTML(): htmlParseEntityRef: expecting ';' in Entity, line: 1262[/home/querying/PhpstormProjects/xianlang10.com/EngineSeo/vendor/jaeger/phpquery-single/phpQuery.php:328] [ error ] [2]DOMDocument::loadHTML(): htmlParseEntityRef: expecting ';' in Entity, line: 1262[/home/querying/PhpstormProjects/xianlang10.com/EngineSeo/vendor/jaeger/phpquery-single/phpQuery.php:328] 解决问题 在查看 php手册 关于 DOMDocument 类 loadHTML 方法的使用的时候,发现 libxml_use_internal_errors 可以对此类错误,强制以 libxml_get_errors() 进行获取

Integrate ODL with Jaeger or Zipkin

旧时模样 提交于 2019-12-02 10:38:20
I am trying to integrate an ODL application with Jaeger or Zipkin to trace the logs. Jaeger worked with fine with a Java Application, but doesn't work with ODL. I get NoClassDefError even though I added the bundles: install -s wrap:mvn:org.apache.thrift/libthrift/0.12.0 install -s wrap:mvn:io.jaegertracing/jaeger-core/0.35.4 install -s wrap:mvn:io.jaegertracing/jaeger-thrift/0.35.4 install -s wrap:mvn:io.opentracing/opentracing-api/0.31.0 install -s wrap:mvn:io.opentracing/opentracing-util/0.31.0 install -s wrap:mvn:io.opentracing/opentracing-noop/0.31.0 install -s wrap:mvn:io.opentracing

How to configure Jaeger with elasticsearch?

随声附和 提交于 2019-11-30 23:37:08
I have tried executing this docker command to setup Jaeger Agent and jaeger collector with elasticsearch. sudo docker run \ -p 5775:5775/udp \ -p 6831:6831/udp \ -p 6832:6832/udp \ -p 5778:5778 \ -p 16686:16686 \ -p 14268:14268 \ -e SPAN_STORAGE_TYPE=elasticsearch \ --name=jaeger \ jaegertracing/all-in-one:latest but this command gives the below error. How to configure Jaeger with ElasticSearch? "msg":"Failed to init storage factory","error":"health check timeout: no Elasticsearch node available","errorVerbose":"no Elasticsearch node available\ Ashen Jayasinghe After searching a solution for

Go微服务全链路跟踪详解

余生长醉 提交于 2019-11-30 05:14:24
在微服务架构中,调用链是漫长而复杂的,要了解其中的每个环节及其性能,你需要全链路跟踪。 它的原理很简单,你可以在每个请求开始时生成一个唯一的ID,并将其传递到整个调用链。 该ID称为 CorrelationID ¹,你可以用它来跟踪整个请求并获得各个调用环节的性能指标。简单来说有两个问题需要解决。第一,如何在应用程序内部传递ID; 第二,当你需要调用另一个微服务时,如何通过网络传递ID。 什么是OpenTracing? 现在有许多开源的分布式跟踪库可供选择,其中最受欢迎的库可能是 Zipkin ²和 Jaeger ³。 选择哪个是一个令人头疼的问题,因为你现在可以选择最受欢迎的一个,但是如果以后有一个更好的出现呢? OpenTracing ⁴可以帮你解决这个问题。它建立了一套跟踪库的通用接口,这样你的程序只需要调用这些接口而不被具体的跟踪库绑定,将来可以切换到不同的跟踪库而无需更改代码。Zipkin和Jaeger都支持OpenTracing。 如何跟踪服务器端点(server endpoints)? 在下面的程序中我使用“Zipkin”作为跟踪库,用“OpenTracing”作为通用跟踪接口。 跟踪系统中通常有四个组件,下面我用Zipkin作为示例: recorder(记录器):记录跟踪数据 Reporter (or collecting agent)(报告器或收集代理)