All Products
Search
Document Center

Enterprise Distributed Application Service:Customize configurations

Last Updated:Jul 11, 2023

Application Real-Time Monitoring Service (ARMS) allows you to configure the settings of the application monitoring feature on the Custom Configuration tab. The configurable settings include the sampling rate of traces, agent switch, and the threshold of slow SQL queries.

Go to the feature tab

  1. Log on to the EDAS console.

  2. In the left-side navigation pane, choose Application Management > Applications. In the top navigation bar, select a region. In the upper part of the page, select a microservice namespace. From the Cluster Type drop-down list, select Kubernetes Cluster. Then, find the application that you want to manage and click the name in the Application Name column.

  3. In the left-side navigation pane, choose Application Settings > Application Settings.
  4. On the Application Settings page, click the Custom Configuration tab.

Configure the sample rate of traces

In the Invocation Trace Sampling Settings section, you can turn on or turn off the switch of trace sampling and specify a sample rate. In the Sampling Rate Settings field, enter the percent value. For example, if you enter 10, the sample rate is 10%.

Important The modifications immediately take effect. You do not need to restart the application. If trace sampling is disabled, the trace data is no longer captured. Proceed with caution.
Invocation Trace Sampling Settings section

After you modify the configurations, click Save in the lower part of the page.

Configure the agent switch and log level

In the Agent Switch Settings section, you can turn on or off the switch of the Application Real-Time Monitoring Service (ARMS) agent and the switches of different plug-ins, and configure the log level.

Important The modifications to the ARMS agent and log level immediately take effect. You do not need to restart the application. If the switch of the ARMS agent is turned off, ARMS cannot monitor the application. Proceed with caution. To make the modification to each plug-in switch take effect, you must manually restart the application.
Agent Switch Settings section

After you modify the configurations, click Save in the lower part of the page.

Configure thresholds

In the Threshold Settings section, you can configure the thresholds of slow SQL queries, API response time, and throttling.

Threshold Settings

After you modify the configurations, click Save in the lower part of the page.

Configure advanced settings

In the Advanced Settings section, you can configure advanced settings. For example, you can specify the APIs to be filtered out and the maximum length of the method stack.

Advanced Settings
  • Invalid Interface Invocation Filtering: Enter the APIs whose statistics you do not want to view. After the modification is saved, the specified APIs are hidden on the Interface Invocation page.
  • Method stack maximum length: Specify the maximum length of the method stack allowed. Default value: 128. Maximum value: 400. The value indicates the number of entries.
  • Stack depth to distinguish same exception: Specify the stack depth that is used to distinguish between exceptions of the same type. This parameter is typically set to the call depth of the first difference.
  • Collect the maximum length of SQL: Specify the maximum length of SQL data allowed. Default value: 1024. Minimum value: 256. Maximum value: 4096. The value indicates the number of characters.
  • Collect SQL Bindings: Specify whether to capture the variable value bound to the PrepareStatement parameter. The modification immediately takes effect. You do not need to restart the application.
  • Raw SQL: Specify whether to perform operations other than truncation on SQL statements.
  • Whitelist: Specify the exceptions that are not displayed in the charts on the application details page and Exception Analysis tab.
  • Error Code Filter: By default, all HTTP status codes greater than 400 are counted as errors. To ignore specific HTTP status codes greater than 400 so that they are not counted as errors, you can specify them in value.
  • Trace Storage: Specify whether to use a new storage format that sorts traces by time. By default, this switch is turned on.
  • Inner Callstack Reduce: Specify whether to simplify duplicated calls such as for loops. The modification immediately takes effect. You do not need to restart the application.
  • Max Length of Input Parameters: The maximum length of input parameter values allowed. Default value: 512. Maximum value: 2048. The value indicates the number of characters.
  • Quantile Statistics: Specify whether to enable quantile statistics.
  • Application Emergency Alert: Specify whether to enable alerts for emergencies such as thread deadlocks and out-of-memory (OOM). To enable the alerts, the ARMS agent must be of the version 2.5.8 or later.
  • RabbitMQ Custom Consumer: Specify the class name of a custom consumer or the name of the class that contains an anonymous internal consumer. You can then view the trace of the customer. You can specify multiple class names. Separate multiple class names with commas (,).
  • Thread pool monitoring: Specify whether to monitor thread pool metrics in frameworks such as Apache Tomcat, Apache Dubbo, and High-speed Service Framework (HSF). To enable this feature, the ARMS agent must be updated to the latest version. You must restart the application to apply the modification.

After you modify the configurations, click Save in the lower part of the page.

Configure thread settings

In the Thread settings section, you can turn on or turn off the switch of the thread diagnostics method stack and the switch of thread profiling. You can specify a threshold to trigger slow call listening.

Thread Settings
Note The listener is triggered when the response time of a service call exceeds the threshold and lasts until the call ends or the time consumed exceeds 15s. The default threshold is 1,000 ms. We recommend that you set the threshold to the 99th percentile of the call response time. For example, if 100 calls are sorted in ascending order by response time, the time consumed by the 99th one is the 99th percentile.

After you modify the configurations, click Save in the lower part of the page.

Configure memory snapshot settings

In the Memory snapshot settings section, you can enable or disable memory snapshots. If you turn on this switch, a memory dump is created (at most once a day) when memory leaks occur.

Memory Snapshot

After you modify the configuration, click Save in the lower part of the page.

Associate business logs with trace IDs

In the Business Log Linking Settings section, specify whether to associate the business logs of the application with trace IDs.
Business log
Note
  • If Link Business Logs with TraceId is turned on, trace IDs are automatically generated in the business logs.
  • You can also bind a project and a Logstore in Log Service to accurately identify business exceptions.

After you modify the configurations, click Save in the lower part of the page.

Configure URL convergence rules

In the URL Aggregation section, you can enable or disable the convergence feature. You can also set the convergence threshold, convergence rules, and troubleshooting rules. URL convergence means that similar URLs are displayed together as a single object. For example, URLs prefixed with /service/demo are displayed as an object. The convergence threshold is the minimum number of URLs required to trigger URL convergence. For example, when the threshold is set to 100, URLs converge only when 100 URLs meet the regular expression of the rules.

URL Aggregation

After you modify the configurations, click Save in the lower part of the page.

Configure business monitoring

In the Scenario settings section, you can enable or disable business monitoring and specify an HTTP encoding format.

Business monitoring

After you modify the configurations, click Save in the lower part of the page.