Frequently Asked Questions¶
Event Viewing and Time Range¶
"Unrecovered Events" only shows the last 48 hours by default. How do I view earlier unrecovered events?
There is a Time Widget in the top-right corner of the page that allows you to freely adjust the time range.
What is the difference between the "All Events" and "Unrecovered Events" tabs? Why can both filter out unrecovered events?
| Comparison Item | Unrecovered Events | All Events |
|---|---|---|
| Default Time Range | Last 48 hours | Usually longer (configurable) |
| Default Filter | df_status != ok |
None |
| Displayed Content | Events with abnormal status only | All statuses (normal/abnormal/recovered/no data) |
| Purpose | Quickly focus on current issues | Complete historical queries and analysis |
Key difference: "Unrecovered Events" is a shortcut that automatically filters for you; "All Events" requires manually adding filter conditions but offers greater flexibility.
After adjusting the Time Widget, will my previously set filter conditions be reset?
No. Time range adjustment is independent. Your filter conditions (event severity, alert policy, monitor name, etc.) remain unchanged, and the system applies those filters within the new time range.
Event Content and Variables¶
Variables in event content (such as {{df_dimension_tags}}, {{Result}}) appear empty or improperly formatted. How do I debug this?
Variable source: Variables in event content are defined in the monitor's Event Notification configuration section, and the system substitutes them based on actual monitoring data.
Common causes of empty values:
- The DQL query does not return the corresponding field
- Variable name typos (case-sensitive)
- Detection dimension tags are empty
Debugging methods:
- Check the Detection Metrics section in the event details to confirm the raw query results
- Check whether the monitor's DQL query statement is correct
Common variable reference:
{{Result}}- Detection value{{df_dimension_tags}}- JSON of detection dimension tags{{df_status}}- Event status{{df_monitor_name}}- Monitor name{{date}}- Event timestamp
What is the difference between the event title and the event content? Which one is sent in notifications?
- Event title: Displayed in the event list and also serves as the alert notification title (email subject, DingTalk message title, etc.)
- Event content: Shown on the event details page and serves as the default alert notification body
Custom notification content:
The monitor supports enabling the "Custom Notification Content" toggle. When enabled:
- Event content is still saved in the event details
- But alert notifications are sent using the custom template
- Suitable for scenarios where content needs to be customized for different notification channels
What template functions are supported in event content? Can numbers be formatted as percentages?
Currently supported template functions:
| Function | Purpose | Example |
|---|---|---|
to_datetime |
Convert timestamp to date | {{ date \| to_datetime }} |
to_status_human |
Convert status to readable text | {{ df_status \| to_status_human }} |
to_fixed(n) |
Fixed decimal places | {{ Result \| to_fixed(2) }} |
to_percent |
Convert to percentage | {{ Result \| to_percent }} |
to_pretty_tags |
Beautify tag output | {{ df_dimension_tags \| to_pretty_tags }} |
Event Status and Recovery¶
Is event recovery automatic or manual? Why do some events remain unrecovered?
Automatic recovery: When the monitor detects that metrics have returned to normal, it automatically generates a recovery event and df_status changes to ok
Manual recovery: Events can be manually recovered from the event list or details page
Common causes of unrecovered events:
- Monitor configuration issue: Recovery conditions are not correctly configured
- Data gap events: No recovery policy configured or data has not been re-reported
- Detection logic issue: Threshold settings prevent automatic recovery determination
Will events generated while a monitor is muted appear in the event list? What is their status?
Yes, they will appear in the event list, but:
- No alert notifications will be sent
- No incidents will be created in sync (if sync creation is configured)
- Event status is recorded normally (critical/warning, etc.)
Muting only pauses notification sending; it does not affect event generation or recording.
Data Gap Events¶
What is a data gap event? In which scenarios should it be enabled?
A data gap occurs when the monitor does not find the expected data within the detection period.
Configuration location: The "Data Gap Event" configuration area of the monitor (supported by some monitor types)
Three processing strategies:
- Do not trigger events - Mute handling
- Trigger recovery events - Data gap is treated as abnormal recovery
- Trigger data gap events - Generate a dedicated gap alert (severity configurable)
Why does a data gap event sometimes not trigger when data has clearly not been reported?
Guance uses an "edge-triggered" mechanism to determine data gaps:
In the previous round, X was detected; in the current round, X is not detected, so X has a data gap.
Key limitations:
- No alert is generated when no data is found during the first detection (the system does not know what "should" be present)
- A "data present" state must have been reached first; only then, if data is not detected again, is it determined to be a gap
Troubleshooting suggestions:
- Confirm the monitor has been running normally for at least one detection cycle and has queried data
- Check the "detection range drift" mechanism (the actual detection time range drifts by 1 minute)
- Check monitor execution logs to confirm whether the DQL query was successful
What is the generation logic for data gap events and data recovery events?
Alternating generation mechanism:
- Data gap events and data recovery events always alternate
- Consecutive data gap events are not generated
- Consecutive data recovery events are also not generated
Determination flow:
No data on first detection → No alert
↓
Data detected → Record "data present" state
↓
No data detected again → Trigger data gap event
↓
Data re-reported → Trigger data recovery event
↓
No data detected again → Trigger data gap event (new)
Event Correlation and Troubleshooting¶
How are "related events" on the event details page correlated? Why is it sometimes empty?
Correlation logic:
- Based on the same detection dimension tags (such as host, service, etc.)
- Based on time windows (related events within the same time period)
Common causes of empty correlation:
- The dimension tag does not exist in other events
- No other related events within the time window
- The current event type does not support correlation (some monitor types)
What does "Related SLO" showing 0 mean? When will there be data?
- Showing 0: Indicates the event is not associated with any SLO
- With data: Only when the event is triggered by an SLO will the associated SLO information be displayed
- Events triggered by monitors are not associated with SLOs by default
What does the "detection interval" dashed line in the historical trend chart mean? Can the time range be adjusted?
- Detection interval dashed line: Marks the specific detection time window that triggered the alert
- Chart display: Shows the trend of the detection metric over a longer time range
Click the "Get Chart Query" button in the top-right corner of the chart to jump to the metrics or log explorer, where you can flexibly adjust the time range for longer-term trend analysis.
Event Sources and Fields¶
What are the field differences for events from different sources (monitor, AI monitor, audit, OpenAPI)?
Different df_source values correspond to different additional fields:
| df_source | Source | Additional Fields |
|---|---|---|
monitor |
Monitor | Monitor-related fields (detection metrics, thresholds, etc.) |
smartMonitor |
Smart Monitoring | Smart monitoring reports, detection metrics, etc. |
aiMonitor |
AI Monitor | AI-generated structured event reports, monitor information, and data used for detection |
slo |
SLO | SLO and service quality objective-related information |
audit |
Audit event | Operator, operation type, change details, etc. |
user |
OpenAPI write | User-defined fields |
What is the functional difference between custom events written via OpenAPI and system-generated events?
Functional differences:
- Custom events can set fields such as df_status, df_title, df_message
- df_dimension_tags can be specified for correlation
- They are not automatically associated with dashboards like monitor events
- Recovery logic must be handled manually (by calling the recovery API)
Use cases: External system integration, custom business alerts, bulk importing historical events, etc.
Audit Events¶
What operations do audit events specifically record? Where can I view them?
Viewing location: Management > Basic Settings > Security > Operation Audit
General scope of records:
- Adding/deleting data authorization (cross-workspace authorization)
- Add, delete, and modify operations on configurations such as monitors, SLOs, and alert policies
- Workspace member permission changes
Field characteristics: df_source = audit, includes audit-specific fields such as operator, operation time, and operation type.
Common Issue Troubleshooting¶
Why does the time shown in the event details not match the actual incident occurrence time?
This is normal, for two reasons:
-
Scheduled trigger time vs actual execution time:
- The time displayed for an event is the monitor's scheduled trigger time (based on the aligned Crontab time)
- Not the actual time the event was generated in the system
-
Detection range drift:
- The actual data range detected is:
scheduled trigger time - detection range - 1 minutetoscheduled trigger time - 1 minute - Therefore, the timestamp of the incident data may be earlier than the event display time
- The actual data range detected is:
Troubleshooting suggestion: Check the "Detection Metrics" section in the event details to confirm the actual detected data time range.
I can query the incident data directly on the platform, but the monitor did not generate an event. Why?
Common causes:
- Data write delay: The incident data was not yet queryable at detection execution time (the monitor automatically drifts by 1 minute to avoid this, but it fails if the delay exceeds 1 minute)
- DQL query failure: The detection process was interrupted due to a query failure
- Monitor muted: Notifications are not sent during a mute period, but events are still generated (check the event list)
- Threshold configuration: The actual detection value did not reach the trigger threshold
How long can event data be retained? How do I export or archive it?
Long-term retention options:
- Use Dataway Sink to stream event data to external storage
- Use OpenAPI to periodically pull event data to local storage
- Use Data Forwarding to forward to external systems such as Kafka, S3, etc.