Overview
Automatic Anomaly Detection
Performance Monitoring
Traffic Analysis
Statistical Analysis
Automatic Notifications
Visual Reporting

Anomaly Detector settings form - All configuration fields
What is Anomaly Detector?
Basic Concept
Anomaly Detector is a monitoring system that automatically detects deviations from normal behavior in your API traffic.When to Use?
When to Use?
Performance Monitoring
Error Rate Monitoring
Traffic Analysis
SLA Tracking
Security Monitoring
Capacity Planning
How Does It Work?
How Does It Work?
Configuration
Scheduling
Data Collection
Condition Check
- Metric Check: Did the value exceed a certain threshold?
- Rate Check: Did the value increase/decrease by a certain rate?
- EMA Check: Is the value statistically abnormal?
Save Result
Notification
Quick Start
Creating Your First Anomaly Detector
Access from Menu
Create New Detector
Fill in Basic Information
- Name: A name for your detector (e.g., “Response Time Anomaly Detection”)
- Description: Optional description
- Environment: Select the environment to be analyzed
Define Query and Filter
Define Condition
Set Scheduling
Save
Creating a New Anomaly Detector
Step 1: Basic Information
Name - Required
Name - Required
- Must be unique within the project
- Cannot start with a space
- The system automatically checks the availability of the name
Response Time Anomaly DetectionError Rate Increase MonitoringTraffic Anomaly DetectorCritical API Performance Monitoring
Description - Optional
Description - Optional
- Maximum 500 characters
- Used to explain the purpose and scope of the detector
- Displayed on the list page
Created for response time anomaly detection of critical payment APIUsed to monitor error rate increases across all APIsUses EMA algorithm to detect traffic anomalies
Environment - Required
Environment - Required
- Select an environment from the environment list
- The selected environment must have Elasticsearch integration active
- Environments without integration are shown as disabled
Status - Default: Active
Status - Default: Active
- Active: Detector runs, scheduled analyses are performed
- Passive: Detector is stopped, no analysis is performed (historical data is preserved)
Step 2: Scheduling Settings
Determine how often the detector will run. Scheduling is done using Cron Expression.Common Scheduling Examples
| Description | Cron Expression | Use Case |
|---|---|---|
| Every 5 minutes | 0 */5 * ? * * | For critical APIs (most common) |
| Every 15 minutes | 0 */15 * ? * * | For normal APIs |
| Every hour | 0 0 * ? * * | For test/development environments |
| Every day at 09:00 | 0 0 9 * ? * | For daily reporting |
Step 3: Query and Filter Configuration
In this section, you define the API traffic to be analyzed.Query - Required
Query - Required
Select or Create Query
Query Selection or Creation
- You can select an existing query OR
- Create a new query
Define Query Criteria
- API Proxy: Which APIs will be analyzed?
- HTTP Method: Which HTTP methods will be analyzed?
- Endpoint: Which endpoints will be analyzed?
- And more…
- Analyze all failed requests
- Analyze all requests of a specific API proxy
- Analyze response times of a specific endpoint
Filter - Optional
Filter - Optional
Select or Create Filter
Filter Selection or Creation
- You can select an existing filter OR
- Create a new filter
Define Filter Criteria
- Date Range: Which time range will be analyzed?
- Proxy List: Which proxies will be included?
- Result Type: Successful/Failed/Blocked requests
- Analyze traffic from the last 1 hour
- Analyze only failed requests
- Exclude specific proxies
Step 4: Condition Definition
Conditions are the criteria used for anomaly detection. You can define multiple conditions. An anomaly is detected when at least one condition is met.Condition Types
Anomaly Detector supports 4 different types of conditions:Metric Value Check
Metric Increase/Decrease Rate
EMA with Bollinger Bands
Query/Filter Rate Check
Adding Conditions
- Click the ”+” button to add a new condition
- Select the condition type (Metric / Rate / EMA / Query - Filter Rate)
- Fill in the condition parameters
1. Metric Value Check
1. Metric Value Check

Example configuration of metric value check
| Field | Description |
|---|---|
| average of | Indicates which operation will be applied to the value in the next column. In this example, average value is selected. |
| time api proxy total | Specifies which metric field will be processed. In this example, API Proxy total time is selected. |
| above | Specifies how the found metric will be compared with the next value. |
| for … times | Specifies that this condition must be met for the last … times. |
- Above:
Value > Threshold - Above or Equal:
Value >= Threshold - Below:
Value < Threshold - Below or Equal:
Value <= Threshold - Between:
Threshold1 < Value < Threshold2
- Metric Type: Average Response Time
- Operator: Above
- Threshold Value: 1000 ms
- Repeat Count: 3
- Meaning: Anomaly is detected when average response time exceeds 1000 ms and this situation is repeated 3 times.
2. Metric Increase/Decrease Rate Check
2. Metric Increase/Decrease Rate Check

Example configuration of metric increase/decrease rate check
| Field | Description |
|---|---|
| average of | Indicates which operation will be applied to the value in the next column. In this example, average value is selected. |
| time api proxy total | Specifies which metric field will be processed. In this example, API Proxy total time is selected. |
| increased by | Specifies what the behavior of the found metric will be. In this example, increase rate is selected. |
| more than | Specifies how the metric behavior will be compared with the previous value. In this example, greater than comparison is selected. |
| average | Specifies how the last values to be checked will be handled. In this example, it specifies that the “Average” of the last values to be checked should be taken. |
| previous … result | Specifies that this condition must be met for the last … times. |
- Previous N results are compared with current result
- Increase/decrease rate is calculated
- This rate is compared with threshold value
- Metric Type: Total Request Count
- Operator: Increase Rate
- Rate Operator: Above
- Threshold Value: 50%
- Previous Result Count: 5
- Meaning: Anomaly is detected when total request count increases by more than 50% compared to the last 5 analysis results.
3. EMA with Bollinger Bands
3. EMA with Bollinger Bands

Example configuration of EMA with bollinger bands
| Field | Description |
|---|---|
| average of | Indicates which operation will be applied to the value in the next column. In this example, average value is selected. |
| time api proxy total | Specifies which metric field will be processed. In this example, API Proxy total time is selected. |
| EMA | Specifies what operation will be performed with the selected metric value. In this example, EMA value is selected. |
| above from upper bollinger band | Specifies how the result of the applied EMA formula will be applied. In this example, values above the Upper Bollinger Band value are selected. |
| is calculated with | Specifies how many previous values the EMA value will be calculated over. In this example, 10 values are selected. |
| data points and standard deviation multiplier sensitivity of | Specifies the sensitivity degree of EMA bollinger bands. |
- EMA calculates an average value based on historical data
- Upper and lower bands are created using standard deviation
- Anomaly is detected when current value goes outside these bands
- High Sensitivity (0.5-1.0): Detects more anomalies (more sensitive)
- Medium Sensitivity (1.0-1.5): Balanced anomaly detection (recommended)
- Low Sensitivity (1.5-2.0): Detects fewer anomalies (less sensitive)
- Metric Type: Average Response Time
- EMA Operator: Outside
- Data Point Count: 20
- EMA Sensitivity: 1.5
- Meaning: Response times that go outside the upper or lower bands of the EMA value calculated based on the last 20 analysis results are detected as anomalies.
4. Query/Filter Rate Check
4. Query/Filter Rate Check

Example configuration of query/filter rate check
| Field | Description |
|---|---|
| query/filter rate percent | Enables expressing the ratio of only the filter result to the query result in the filter and query at runtime as a percentage. |
| above | Specifies how the found metric will be compared with the next value. |
| 90 | Specifies the value to be compared with the metric. |
| for … time | Specifies that this condition must be met for the last … times. |
- Query/Filter Rate: 90%
- Operator: Above
- Repeat Count: 3
- Meaning: Anomaly is detected when the ratio of query results to filter results exceeds 90% and this situation is repeated 3 times.
Step 5: Action Configuration
Configure actions to be triggered when an anomaly is detected:Adding Actions
Adding Actions
Select Action
Select Action Type
- Email: Sends email notification
- API Call: Sends HTTP POST request
- Webhook: Sends notification to webhook endpoint
- And more…
Complete Action Configuration
Step 6: Saving
After filling in all information:-
Make sure form validations pass:
- ✅ Name entered and available
- ✅ Environment selected
- ✅ Query defined
- ✅ At least one condition defined
- ✅ Scheduling settings configured
- Click the “Save” button
- After the detector is saved, you are automatically redirected to the listing page
Monitoring and Reporting Results
Accessing Results Page
- Click the detector name in the detector list OR
- Select “Results” option from the operations menu (⋮)
Results Page Sections
1. Results Table
1. Results Table
- Date/Time: Date and time when the analysis run was performed
- Condition Results: Result of each condition:
- 🟢 Not Met (NOT MET): Condition not met (normal)
- 🔴 Met (MET): Condition met (anomaly detected)
- 🟠 Error (ERROR): Error occurred during analysis
- General Result:
- 🟢 Not Met: All conditions not met (normal)
- 🔴 Met: At least one condition met (anomaly detected)
- Operations: Menu button (⋮)

Anomaly Detector operation results page
2. Condition Charts
2. Condition Charts
- Metric Charts: Change of metric values over time
- EMA Charts: EMA values and upper/lower bands
- Anomaly Markers: Points where anomalies were detected on the chart
3. Viewing Result Details
3. Viewing Result Details
- Click the menu button (⋮) in the table
- Select one of the following options:
- View Error Message: View errors that occurred during analysis
- View Condition Results: View detailed results of each condition
- View Action Results: View notification sending status
- Delete: Delete the result
Anomaly Detector Management
List Page Features
You can view and manage all your detectors on the detector list page.Search and Filtering
Search and Filtering
- Search by Name: Filter detectors by typing in the name field
- Search by Description: Search by typing in the description field
- Project Filter (in Admin mode): View detectors from multiple projects
- Clear: Click the eraser icon to clear all filters
Table Columns
Table Columns
- Name: Name of the detector (clickable, goes to results page)
- Description: Detector description
- Environment: Analyzed environment
- Status: Active/Passive status (can be changed with toggle)
- Project (in Admin mode): Project the detector belongs to
- Operations: Menu button (⋮)
Operations Menu
Operations Menu
Changing Status
Changing Status
- Click the toggle in the Status column in the table
- Detector status is updated instantly
- Passive detectors do not run, but historical data is preserved
Best Practices
Naming Rules
- Use descriptive names:
Response Time Anomaly Detection - Add project/module prefix:
E-Commerce - Error Rate Monitoring - Add environment information:
Production - Traffic Anomaly Detector
Query and Filter Strategy
- Use specific queries
- Improve performance by filtering unnecessary data
- Select appropriate date range (too wide ranges reduce performance)
Condition Configuration
- Metric conditions: For simple threshold checks
- Rate conditions: To detect changes
- EMA conditions: For statistical anomaly detection
- Reduce false positives by increasing repeat count
EMA Sensitivity Settings
- High Sensitivity (0.5-1.0): For critical systems
- Medium Sensitivity (1.0-1.5): For normal systems (recommended)
- Low Sensitivity (1.5-2.0): For test systems
Frequently Asked Questions
How Often Does the Detector Run?
How Often Does the Detector Run?
0 */5 * ? * *→ Every 5 minutes0 0 * ? * *→ Every hour0 0 9 * ? *→ Every day at 09:00
What Happens When the Detector is Set to Passive?
What Happens When the Detector is Set to Passive?
- No new analyses are performed
- Existing scheduled jobs are cancelled
- Historical results are preserved and can be viewed
- Detector continues normal operation when set to active again
What is the Difference Between Metric, Rate, and EMA Conditions?
What is the Difference Between Metric, Rate, and EMA Conditions?
- Metric Condition: Did the value exceed a certain threshold? (Simple threshold check)
- Rate Condition: Did the value increase/decrease by a certain rate? (Change check)
- EMA Condition: Is the value statistically abnormal? (Statistical analysis)
How Should EMA Sensitivity Be Set?
How Should EMA Sensitivity Be Set?
- High Sensitivity (0.5-1.0): Detects more anomalies (more sensitive)
- Medium Sensitivity (1.0-1.5): Balanced anomaly detection (recommended)
- Low Sensitivity (1.5-2.0): Detects fewer anomalies (less sensitive)
What is the Purpose of Repeat Count?
What is the Purpose of Repeat Count?
- Repeat Count: 1: Anomaly is detected when condition is met once
- Repeat Count: 3: Anomaly is detected when condition is met 3 times consecutively
Can I Use Multiple Conditions?
Can I Use Multiple Conditions?
- Condition 1: Response time > 1000 ms
- Condition 2: Error rate > 10%
- Result: Anomaly is detected when either of the two conditions is met
What is the Difference Between Query and Filter?
What is the Difference Between Query and Filter?
- Query: Defines the API traffic to be analyzed (which APIs, which methods, etc.)
- Filter: Further narrows down query results (date range, result type, etc.)
Troubleshooting
Detector Not Running
Detector Not Running
- Detector may be in passive status → Check status toggle
- Scheduling settings may be wrong → Check cron expression
- Environment may not have Elasticsearch integration → Check environment settings
- Query may be incorrectly configured → Check query settings
- Set detector status to active
- Check scheduling settings
- Check environment Elasticsearch integration
- Check query configuration
All Results in 'Error' Status
All Results in 'Error' Status
- Query incorrectly configured
- Filter incorrectly configured
- Elasticsearch connection issue
- No data
- Check query configuration
- Check filter configuration
- Check Elasticsearch connection
- Check if data exists
Too Many False Positives
Too Many False Positives
- Threshold values too low
- Repeat count too low
- EMA sensitivity too high
- Increase threshold values
- Increase repeat count
- Decrease EMA sensitivity
Too Few Anomalies Detected
Too Few Anomalies Detected
- Threshold values too high
- EMA sensitivity too low
- Repeat count too high
- Decrease threshold values
- Increase EMA sensitivity
- Decrease repeat count

