附录
常见应用程序属性
可以在文件内、文件内或作为命令行开关指定各种属性。
本附录提供了常见的 Spring Cloud Sleuth 属性列表以及对使用它们的基础类的引用。application.properties
application.yml
属性贡献可能来自 Classpath 上的其他 jar 文件,因此您不应将其视为详尽的列表。 此外,您还可以定义自己的属性。 |
名字 | 违约 | 描述 |
---|---|---|
spring.sleuth.async.configurer.enabled |
|
启用默认 AsyncConfigurer。 |
spring.sleuth.async.enabled |
|
启用检测异步相关组件,以便在线程之间传递跟踪信息。 |
spring.sleuth.async.ignored-beans 的 |
应忽略且不应包装在跟踪表示中的 {@link java.util.concurrent.Executor} bean 名称的列表。 |
|
spring.sleuth.baggage.correlation 已启用 |
|
启用将 Baggage 上下文与日志记录上下文相关联。 |
spring.sleuth.baggage.correlation-fields |
||
spring.sleuth.baggage.local-fields |
||
spring.sleuth.baggage.remote-fields |
引用与网络上相同的进程中的字段列表。例如,字段“x-vcap-request-id”将按原样设置,包括前缀。 |
|
spring.sleuth.baggage.tag-字段 |
||
spring.sleuth.circuitbreaker.enabled |
|
启用 Spring Cloud CircuitBreaker 插桩。 |
spring.sleuth.enabled |
|
|
spring.sleuth.feign.enabled |
|
在使用 Feign 时启用 span 信息传播。 |
spring.sleuth.feign.processor.enabled |
|
启用将 Feign Context 包装在其跟踪表示中的后处理器。 |
spring.sleuth.function.enabled |
|
启用基于 Spring Cloud Function 和 Spring Cloud Function 的项目(例如 Spring Cloud Stream)的插桩。 |
spring.sleuth.grpc.已启用 |
|
在使用 GRPC 时启用 span 信息传播。 |
spring.sleuth.http.enabled |
|
启用 HTTP 支持。 |
spring.sleuth.integration.enabled |
|
启用 Spring Integration 侦探检测。 |
spring.sleuth.integration.patterns |
|
一个 pattern 数组,通道名称将与之匹配。@see org.springframework.integration.config.GlobalChannelInterceptor#patterns() 默认为任何与 Hystrix Stream 和功能 Stream 通道名称不匹配的通道名称。 |
spring.sleuth.integration.websockets.enabled |
|
为 WebSockets 启用跟踪。 |
spring.sleuth.messaging.enabled |
|
是否应该打开消息传递。 |
spring.sleuth.messaging.jms.enabled |
|
启用 JMS 跟踪。 |
spring.sleuth.messaging.jms.remote-service-name |
|
JMS 远程服务名称。 |
spring.sleuth.messaging.kafka.enabled |
|
启用 Kafka 的跟踪。 |
spring.sleuth.messaging.kafka.mapper.enabled |
|
为 Kafka 启用 DefaultKafkaHeaderMapper 跟踪。 |
spring.sleuth.messaging.kafka.remote-service-name |
|
Kafka 远程服务名称。 |
spring.sleuth.messaging.kafka.streams.enabled |
|
是否应该打开 Kafka Streams。 |
spring.sleuth.messaging.rabbit.enabled |
|
开启 RabbitMQ 的追踪。 |
spring.sleuth.messaging.rabbit.remote-service-name |
|
Rabbit 远程服务名称。 |
spring.sleuth.mongodb.enabled |
|
为 MongoDB 启用跟踪。 |
spring.sleuth.opentracing.enabled |
|
启用 OpenTracing 支持。 |
spring.sleuth.propagation.type |
跟踪上下文传播类型。 |
|
spring.sleuth.quartz.enabled |
|
为 Quartz 启用跟踪。 |
spring.sleuth.reactor.decorate-on-each |
|
当 true 装饰每个运算符时,性能会降低,但 logging 将始终包含每个运算符中的跟踪条目。当 false 装饰最后一个运算符时,性能会更高,但日志记录可能并不总是包含跟踪条目。@deprecated通过 {@link SleuthReactorProperties#instrumentationType} 使用显式值 |
spring.sleuth.reactor.enabled |
|
如果为 true,则为 reactor 启用 instrumentation。 |
spring.sleuth.reactor.instrumentation-type |
||
spring.sleuth.redis.enabled |
|
使用 Redis 时启用 span 信息传播。 |
spring.sleuth.redis.remote-service-name |
|
远程 Redis 终端节点的服务名称。 |
spring.sleuth.rpc.enabled |
|
启用 RPC 跟踪。 |
spring.sleuth.rxjava.schedulers.hook.enabled |
|
通过 RxJavaSchedulersHook 启用对 RxJava 的支持。 |
spring.sleuth.rxjava.schedulers.ignoredthreads |
|
不会对其 span 进行采样的线程名称。 |
spring.sleuth.sampler.probability |
应采样的请求的概率。例如,应对 1.0 - 100% 的请求进行采样。精度仅为整数(即不支持 0.1% 的跟踪)。 |
|
spring.sleuth.sampler.rate |
|
对于低流量终端节点,每秒速率可能是一个不错的选择,因为它允许您进行浪涌保护。例如,您可能永远不会期望终端节点每秒接收的请求超过 50 个。如果流量突然激增,达到每秒 5000 个请求,您最终仍会得到每秒 50 条跟踪。相反,如果您有一个百分比,例如 10%,则相同的浪涌最终将导致每秒 500 条跟踪,这可能会使您的存储过载。Amazon X-Ray 为此,包括一个速率受限的采样器(名为 Reservoir)。Brave 通过 {@link brave.sampler.RateLimitingSampler} 采取了相同的方法。 |
spring.sleuth.sampler.refresh.enabled |
|
为 sampler 启用 refresh scope。 |
spring.sleuth.scheduled.enabled |
|
为 {@link org.springframework.scheduling.annotation.Scheduled} 启用跟踪。 |
spring.sleuth.scheduled.skip-pattern |
应跳过的类的完全限定名称的 pattern。 |
|
spring.sleuth.span-filter.additional-span-name-patterns-to-ignore |
要忽略的其他 span 名称列表。将附加到 {@link #spanNamePatternsToSkip} 中。 |
|
spring.sleuth.span-filter.enabled |
|
将打开默认的 Sleuth 处理程序机制。可能会忽略某些 span 的导出; |
spring.sleuth.span-filter.span-name-patterns-to-skip |
|
要忽略的 span 名称列表。它们不会发送到外部系统。 |
spring.sleuth.supports-join |
|
True 表示跟踪系统支持在客户端和服务器之间共享 span ID。 |
spring.sleuth.trace-id128 |
|
如果为 true,则生成 128 位跟踪 ID,而不是 64 位跟踪 ID。 |
spring.sleuth.tracer.mode |
设置应选择哪个 tracer 实现。 |
|
spring.sleuth.web.additional-skip-pattern |
在跟踪中应跳过的 URL 的其他模式。这将附加到 {@link SleuthWebProperties#skipPattern} 中。 |
|
spring.sleuth.web.client.enabled |
|
启用拦截器注入到 {@link org.springframework.web.client.RestTemplate} 中。 |
spring.sleuth.web.client.skip-pattern |
在客户端跟踪中应跳过的 URL 的模式。 |
|
spring.sleuth.web.enabled |
|
如果为 true,则为 Web 应用程序启用插桩。 |
spring.sleuth.web.filter-order |
|
跟踪筛选器的注册顺序。 |
spring.sleuth.web.ignore-auto-configured-skip-patterns |
|
如果设置为 true,则将自动配置的跳过模式将被忽略。 |
spring.sleuth.web.servlet.enabled |
|
启用 Servlet 插桩。 |
spring.sleuth.web.skip-pattern |
|
在跟踪中应跳过的 URL 的模式。 |
spring.sleuth.web.webclient.enabled |
|
为 WebClient 启用跟踪检测。 |
spring.zipkin.activemq.message-max-bytes |
|
通过 ActiveMQ 发送到 Zipkin 的给定消息的最大字节数。 |
spring.zipkin.activemq.queue |
|
应将 span 发送到 Zipkin 的 ActiveMQ 队列的名称。 |
spring.zipkin.api 路径 |
要作为后缀附加到 baseUrl(上面)的 API 路径。如果您使用其他监控工具,例如 New Relic,则适用此情况。跟踪 API 不需要 API 路径,因此您可以在配置中将其设置为空白 (“”)。 |
|
spring.zipkin.base-url |
zipkin 查询服务器实例的 URL。如果 Zipkin 已在服务发现中注册,您还可以提供 Zipkin 服务器的服务 ID(例如 zipkinserver/)。 |
|
spring.zipkin.compression.enabled |
|
|
spring.zipkin.discovery-client-已启用 |
如果设置为 {@code false},则始终将 {@link ZipkinProperties#baseUrl} 视为 URL。 |
|
spring.zipkin.enabled |
|
允许将 span 发送到 Zipkin。 |
spring.zipkin.encoder 中 |
发送到 Zipkin 的 span 的编码类型。如果您的服务器不是最新的,请设置为 {@link SpanBytesEncoder#JSON_V1}。 |
|
spring.zipkin.kafka.topic |
|
应将 span 发送到 Zipkin 的 Kafka 主题的名称。 |
spring.zipkin.locator.discovery.enabled |
|
启用通过服务发现查找主机名。 |
spring.zipkin.message-timeout |
|
超时(以秒为单位),待处理的 span 将批量发送到 Zipkin。 |
spring.zipkin.rabbitmq.addresses |
用于将 span 发送到 Zipkin 的 RabbitMQ 代理的地址 |
|
spring.zipkin.rabbitmq.queue |
|
应将 span 发送到 Zipkin 的 RabbitMQ 队列的名称。 |
spring.zipkin.sender.type |
将 span 发送到 Zipkin 的方法。 |
|
spring.zipkin.service.name |
通过 HTTP 发送 Span 的服务的名称,应显示在 Zipkin 中。 |