> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flashcat.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Issue Overview and Details

> Master RUM error tracking features to quickly discover and resolve website issues.

After errors are reported, you can view Issues in the Error Tracking module. In RUM, an Issue is a group of similar errors, typically related to the same bug.

<Frame>
  <img src="https://docs-cdn.flashcat.cloud/imges/png/7eaffcd3d631d03ffb553f8956ff94ac.png" alt="Issue List" />
</Frame>

<Info>
  For detailed grouping rules, please refer to [Error Grouping](./error-aggregation).
</Info>

## Issue Information Overview

<Frame>
  <img src="https://docs-cdn.flashcat.cloud/imges/png/5fb33aa6b0283515ca9f2427ae4aff27.png" alt="Issue Information Overview" />
</Frame>

Each entry listed in the Issue browser contains the following information:

| Item                                     | Description                                  |
| ---------------------------------------- | -------------------------------------------- |
| Error type and error message             | Core identifying information of the Issue    |
| File path where error occurred           | Locate error source                          |
| Service name                             | Associated service                           |
| Error cause                              | System-inferred possible root cause          |
| Whether issue has regressed              | Indicates if a resolved issue has reappeared |
| First and last occurrence time           | Issue lifecycle information                  |
| Occurrence count chart                   | Trend over time                              |
| Occurrence count in selected time period | Statistical data                             |

## Issue Status

Issues have 4 statuses, with transitions as follows:

<Frame>
  <img src="https://docs-cdn.flashcat.cloud/imges/png/d81cfab46793c24b044c8d87ef30402b.png" alt="Issue Status Transitions" />
</Frame>

| Status         | Description                                 |
| -------------- | ------------------------------------------- |
| **For Review** | Newly discovered issues that need attention |
| **Reviewed**   | Confirmed issues being fixed                |
| **Resolved**   | Issues that have been fixed                 |
| **Ignored**    | Issues that don't need handling             |

<Tip>
  For regression-related transition logic, please refer to [Issue Status](./issue-status).
</Tip>

## Filtering and Sorting

<Tabs>
  <Tab title="Time Range">
    The timeline in the upper right corner of the browser allows you to display Issues that had errors during the selected time period. You can:

    * Select a preset range from the dropdown menu
    * Directly modify the time
    * Enter natural language for filtering
  </Tab>

  <Tab title="Sort Options">
    | Sort Option       | Description                                            |
    | ----------------- | ------------------------------------------------------ |
    | Update Time       | Sort by issue update time (default)                    |
    | Create Time       | Sort by first discovery time                           |
    | Occurrence Count  | Sort by total error occurrences in selected time range |
    | Affected Sessions | Sort by number of affected RUM sessions                |
  </Tab>

  <Tab title="Filters">
    RUM automatically indexes predefined attributes for your Issues and creates corresponding filters.

    <Frame>
      <img src="https://docs-cdn.flashcat.cloud/imges/png/718ff0527731fd89465a3a7e0fb7c7ea.png" alt="Filters" />
    </Frame>

    Supported attributes include:

    | Attribute     | Description                                                                                      |
    | ------------- | ------------------------------------------------------------------------------------------------ |
    | Error Cause   | Possible root cause type when error occurred                                                     |
    | Environment   | The env field when Issue was reported                                                            |
    | Service       | The service field when Issue was reported                                                        |
    | Error Type    | The error.type field in the reported error event                                                 |
    | Error Message | The error.message field in the error event, supports fuzzy matching                              |
    | Issue ID      | ID when Issue was grouped, multiple IDs can be separated by commas                               |
    | Regression    | If a resolved issue occurs again, the Issue will be marked as regressed                          |
    | Fingerprint   | Fingerprint information when Issue was grouped, multiple fingerprints can be separated by commas |
  </Tab>
</Tabs>

## Error Cause Classification

Flashcat adds an error cause classification to each Issue when created, helping improve fault localization efficiency.

| Error Cause           | Description                                    |
| --------------------- | ---------------------------------------------- |
| Code Error            | Errors caused by code defects                  |
| Illegal Object Access | Code accessed a null or undefined object       |
| Invalid Parameter     | Function called with invalid parameters        |
| Network Error         | Server response too slow or poor network speed |
| API Request Failed    | API endpoint returned an error status code     |
| Unknown Error         | Unable to locate this error type               |

<Tip>
  When hovering over an error cause classification, the system will use AI capabilities to provide inferred root causes and fix suggestions.
</Tip>

### Classification Mechanism

The system uses a two-layer analysis mechanism to classify errors:

**Layer 1: Pattern Matching**

The rule engine checks error types and messages in priority order; the first matching rule determines the classification:

| Check Order | Match Condition                                                                                              | Classification        |
| ----------- | ------------------------------------------------------------------------------------------------------------ | --------------------- |
| 1           | Error message contains "Unexpected token ... is not valid JSON"                                              | Invalid Parameter     |
| 2           | Associated resource HTTP status code is 4xx or 5xx                                                           | API Request Failed    |
| 3           | Error type contains "Network" or "AbortError"                                                                | Network Error         |
| 4           | Error type contains "Syntax", "Reference", "Range", "URI", or "Eval"                                         | Code Error            |
| 5           | Error type is TypeError and message matches null access patterns (e.g., "Cannot read property of undefined") | Illegal Object Access |
| 6           | Error message matches invalid argument patterns (e.g., "invalid argument", "unexpected token")               | Invalid Parameter     |
| 7           | Error message contains "API ERROR:" or license-related errors                                                | API Request Failed    |
| 8           | Error message contains network connection keywords (e.g., "timeout", "connection", "dns")                    | Network Error         |
| 9           | None of the above matched                                                                                    | Unknown Error         |

**Layer 2: AI Inference**

When pattern matching results in "Unknown Error", the system invokes an AI model for deeper analysis. The AI model evaluates the following information:

* **Error Message**: The error description text
* **Stack Trace**: The complete call stack
* **Platform Type**: Browser/JavaScript, Android/Kotlin/Java, iOS/Swift/Objective-C, WeChat Mini Program, etc.

The AI outputs an error classification and a brief cause explanation (up to 100 words). Inference results are displayed as hover tooltips on the Issue card, helping you quickly understand the root cause of the error.

## Regression

Regression refers to previously fixed bugs reappearing.

<Frame>
  <img src="https://docs-cdn.flashcat.cloud/imges/png/489e8b51c598fc2ef0a248508dd546d6.png" alt="Regression" />
</Frame>

<Warning>
  If an error is marked as resolved but the same error occurs later (with a different version), the Issue status will be reopened from the closed state and marked as "Regression".
</Warning>

## Issue Details

The Issue list supports two viewing modes: sidebar mode and fullscreen mode. By default, the details panel opens as a sidebar. You can click the expand button to switch to fullscreen mode for a more spacious view and more complete data display.

Click any Issue to open the details panel and view more information.

<Frame>
  <img src="https://docs-cdn.flashcat.cloud/imges/png/964b9102aca07b4e68b569acf1d99891.png" alt="Issue Details" />
</Frame>

<AccordionGroup>
  <Accordion title="Basic Information">
    The top of the panel displays basic Issue information, such as status and error cause. You can also understand the Issue lifecycle: first and last occurrence dates, duration, and error occurrence count over time (aggregated by time granularity).
  </Accordion>

  <Accordion title="Label Distribution">
    In the label distribution section, you can view the proportion of different labels under this Issue across various dimensions, quickly determining the impact scope and helping locate root causes.

    Currently supports labels like `view_name`, `browser_name`, `version`, `env`, etc.
  </Accordion>

  <Accordion title="Error Sample">
    By default, displays the most recent error information reported during the Issue's occurrence as an error sample. You can also switch through the navigation bar.
  </Accordion>

  <Accordion title="Error Stack and Source Mapping">
    View error context and stack information. If the corresponding SourceMap, Android mapping file, or iOS dSYM file has been uploaded, you can see mapped original source code locations and code snippets.

    <Frame>
      <img src="https://docs-cdn.flashcat.cloud/imges/png/551f3fdc7eef25ac2888f71db87b9f69.png" alt="Error Stack" />
    </Frame>

    You can view uploaded source code information in "Application Management" - "Source Code Management". See [Source Mapping](./source-mapping) for details.
  </Accordion>

  <Accordion title="Error Stack (Native — Android/iOS)">
    The error stack display for native platforms (Android/iOS) is specifically designed for mobile characteristics, providing the following capabilities:

    **Pretty / Raw Mode Toggle**

    * **Pretty Mode**: Displays structured stack information, automatically distinguishing between app frames and third-party frames. Third-party frames are collapsed by default, highlighting your own code
    * **Raw Mode**: Displays raw stack text for easy copying and analysis in external tools

    **Symbolication Status**

    If the corresponding version's symbol files (Android mapping or iOS dSYM) have been uploaded, obfuscated addresses in the stack are automatically restored to readable function names, file names, and line numbers. When not symbolicated, the system prompts you to upload symbol files with direct links to "Source Code Management" and the upload tool.

    **Thread Stacks (Threads)**

    Native crashes typically involve multiple threads. The thread panel displays stack information for all threads at the time of the crash, supporting:

    * Viewing total thread count and currently displayed threads
    * Expanding/collapsing all threads
    * Independent separation of app frames and third-party frames within each thread, with third-party frames expandable on demand
    * The crashing thread's stack is displayed first

    **Binary Images (iOS)**

    For iOS crashes, you can also view the list of Binary Images loaded at the time of the crash, including image names, address ranges, and UUIDs, for offline symbolication analysis.

    For detailed symbol file upload procedures, see [Source Mapping](./source-mapping).
  </Accordion>

  <Accordion title="Session Timeline">
    View the total number of Session events for the current error sample, as well as user resource access and operations before and after the error occurred.

    <Note>
      Currently displays up to 20 context items including the current Error event. You can view more log information in the Session Viewer module later.
    </Note>

    <Tip>
      If the session has replay data collected, you can click the "View Replay" button to jump directly to the session replay page, recreating the complete user operation path when the error occurred from the user's perspective.
    </Tip>
  </Accordion>

  <Accordion title="Attributes">
    Error events carry a series of attributes when reported. You can view current Session, view, user, and other information in the attributes section to help troubleshoot issues.
  </Accordion>
</AccordionGroup>

## Issue Alerts

Discover problems immediately when they occur, giving you the opportunity to proactively identify and fix them before they become severe.

<Frame>
  <img src="https://docs-cdn.flashcat.cloud/imges/png/eebe04d7a964b0dfaafd87daa9b6a345.png" alt="Alert Configuration" />
</Frame>

<Steps>
  <Step title="Enter Application Management">
    Select an application card and edit it
  </Step>

  <Step title="Enable Alerts">
    Turn on the "Alerts" switch
  </Step>

  <Step title="Select Channel">
    Select the notification channel
  </Step>
</Steps>

<Info>
  For detailed alert configuration instructions, please refer to [Issue Alerts](./issue-alerts).
</Info>

## Best Practices

<CardGroup cols={2}>
  <Card title="Configure Source Mapping" icon="code">
    Facilitates problem localization in production environments
  </Card>

  <Card title="Add User Information" icon="user">
    Configure user-related information to provide better error context
  </Card>

  <Card title="Set Alert Policies" icon="bell">
    Configure appropriate channels and escalation rules for errors
  </Card>

  <Card title="Regular Error Analysis" icon="chart-line">
    Regularly check error reports to discover potential issues
  </Card>

  <Card title="Team Collaboration" icon="users">
    Use team ownership features to ensure issues are quickly assigned to relevant teams
  </Card>

  <Card title="Monitor Regressions" icon="rotate">
    Closely monitor potential regressions of resolved issues
  </Card>
</CardGroup>

## Next Steps

<CardGroup cols={3}>
  <Card title="Source Mapping" icon="code" href="./source-mapping">
    Configure source mapping
  </Card>

  <Card title="Error Grouping" icon="layer-group" href="./error-aggregation">
    Learn about grouping mechanisms
  </Card>

  <Card title="Issue Status" icon="circle-check" href="./issue-status">
    Manage Issue status
  </Card>
</CardGroup>
