从术语的Angular 来看,tracing和logging之间有什么区别?谢谢你!
tracing
logging
slmsl1lt1#
Logging
当您设计一个大型应用程序时,您需要有良好而灵活的错误报告(可能是跨机器的),以便以集中的方式收集日志数据。这是Logging Application Block的一个完美用例,您可以在其中配置一些远程跟踪侦听器,并将日志数据发送到中央日志服务器,该服务器将其日志消息存储在数据库、日志文件或其他任何文件中。如果您使用进程外通信,您已经受到了网络性能的限制,在最好的情况下,网络性能是每秒几千个日志。
Logging Application Block
Tracing
除了错误报告之外,您还需要跟踪程序流以发现性能瓶颈所在;更重要的是,当一个错误发生时,你有机会发现你是如何到达那里的。2在理想的情况下,每个函数都应该启用一些跟踪,包括函数持续时间、传递的参数以及你进入函数的程度。
rfbsl7qr2#
如果上下文是在分布式架构上开发可观察性功能,人们通常会谈论度量、日志和跟踪。在这种上下文中,跟踪指的是 * 分布式跟踪 *。分布式跟踪是一种专门的遥测技术(类似于日志记录,但不同),通常通过测量框架以高度自动化的方式生成。遥测从系统中的各个服务发送,并由中央服务聚合(分布式示踪剂),它能够将来自许多单独服务的遥测数据拼凑成进入系统的每个请求的单个跟踪。分布式跟踪的主要目的是调查分布式系统中的性能下降、错误传播和依赖关系交互。在传统的整体上下文中,跟踪通常关注应用程序中的单个函数调用,而分布式跟踪通常只关注服务 * 之间 * 的交互。可以遥测函数调用级别的细节,但很少实现。有关分布式跟踪的详细信息,可以在以下位置找到一个很好的介绍:https://opentelemetry.lightstep.com/tracing/
mi7gmzs63#
**Trace**是记录日志的最低过滤级别。每个记录日志语句都有一个过滤级别:
Trace
trace
debug
warning
error
severe
例如,如果日志记录库配置为使用warning级别进行日志记录,则所有warning、error和severe日志记录语句都将向日志记录输出输出消息。
balp4ylt4#
日志记录也用于性能监视。不需要为真,只有跟踪才能找出性能瓶颈所在。两者都可以在分布式模式下工作。
4条答案
按热度按时间slmsl1lt1#
Logging
当您设计一个大型应用程序时,您需要有良好而灵活的错误报告(可能是跨机器的),以便以集中的方式收集日志数据。这是
Logging Application Block
的一个完美用例,您可以在其中配置一些远程跟踪侦听器,并将日志数据发送到中央日志服务器,该服务器将其日志消息存储在数据库、日志文件或其他任何文件中。如果您使用进程外通信,您已经受到了网络性能的限制,在最好的情况下,网络性能是每秒几千个日志。Tracing
(四个月前)除了错误报告之外,您还需要跟踪程序流以发现性能瓶颈所在;更重要的是,当一个错误发生时,你有机会发现你是如何到达那里的。2在理想的情况下,每个函数都应该启用一些跟踪,包括函数持续时间、传递的参数以及你进入函数的程度。
rfbsl7qr2#
如果上下文是在分布式架构上开发可观察性功能,人们通常会谈论度量、日志和跟踪。在这种上下文中,跟踪指的是 * 分布式跟踪 *。
分布式跟踪是一种专门的遥测技术(类似于日志记录,但不同),通常通过测量框架以高度自动化的方式生成。遥测从系统中的各个服务发送,并由中央服务聚合(分布式示踪剂),它能够将来自许多单独服务的遥测数据拼凑成进入系统的每个请求的单个跟踪。分布式跟踪的主要目的是调查分布式系统中的性能下降、错误传播和依赖关系交互。
在传统的整体上下文中,跟踪通常关注应用程序中的单个函数调用,而分布式跟踪通常只关注服务 * 之间 * 的交互。可以遥测函数调用级别的细节,但很少实现。
有关分布式跟踪的详细信息,可以在以下位置找到一个很好的介绍:https://opentelemetry.lightstep.com/tracing/
mi7gmzs63#
**
Trace
**是记录日志的最低过滤级别。每个记录日志语句都有一个过滤级别:trace
debug
warning
error
severe
例如,如果日志记录库配置为使用
warning
级别进行日志记录,则所有warning
、error
和severe
日志记录语句都将向日志记录输出输出消息。balp4ylt4#
日志记录也用于性能监视。不需要为真,只有跟踪才能找出性能瓶颈所在。两者都可以在分布式模式下工作。