加载中

性能调优

有许多可用于调优代理性能的选项。要调整哪个选项取决于您是在优化速度、内存使用量、带宽还是存储。

在调优代理性能时,首先要调整的参数是 TransactionSampleRate。调整采样率可控制要追踪的请求百分比。默认情况下,采样率设置为 1.0,这意味着会追踪所有请求。

采样率会影响上述所有四个性能类别,因此调低采样率是提高性能的简单方法。

以下是使用 ASP.NET Core 上的配置将采样率设为 20% 的示例

{
    "ElasticApm": {
        "TransactionSampleRate": 0.2
    }
}
		

在复杂的应用程序中,一个请求可能会产生许多 Span。为每个 Span 捕获堆栈跟踪可能会导致显著的内存使用量。每个错误也会捕获堆栈跟踪。有几个设置可以用来调整堆栈跟踪的捕获方式。

要停用捕获堆栈跟踪(针对 Span 和错误),请将 StackTraceLimit 设置为 0

在默认设置下,APM .NET 代理会为持续时间超过 5ms 的每个记录的 Span 收集堆栈跟踪。若要提高持续时间阈值,请设置 SpanStackTraceMinDuration

StackTraceLimit 控制在捕获堆栈跟踪时应收集多少个堆栈帧。

捕获 HTTP 请求和响应标头会增加内存分配、网络带宽以及 Elasticsearch 使用的磁盘空间。若要停用捕获 HTTP 请求和响应标头,请将 CaptureHeaders 设置为 false

.NET 代理会跟踪某些系统和应用程序指标。系统会定期收集这些指标并将其发送到 APM Server,然后从那里发送到 Elasticsearch。您可以使用 MetricsInterval 设置来调整指标收集的时间间隔。

© . This website operates independently and is not affiliated with or endorsed by Elasticsearch B.V. All brand names, logos, and trademarks are the property of their respective owners.