TH1/Tools/CrashSight
2026-06-02 17:57:13 +08:00
..
2026-06-02 17:57:13 +08:00
2026-06-02 17:57:13 +08:00
2026-06-02 17:57:13 +08:00

CrashSight API Triage Tools

TH1 CrashSight analysis can run without browser automation through these two helpers:

  • crashsight_api.py: low-level signed OpenAPI calls and sample/detail fetches.
  • crashsight_daily.py: version/date scoped ERROR collection, classification, context fetch, decode input generation, and Markdown report writing.

Credentials are read from:

Temp/CrashSight/crashsight_api_credentials.json

That file is local-only and must not be committed.

Daily Workflow

python Tools\CrashSight\crashsight_daily.py collect --version 0.7.2b --date last_1_day --rows 100 --out-dir Temp\CrashSight\Daily_2026-06-01_0.7.2b
python Tools\CrashSight\crashsight_daily.py fetch-context --version 0.7.2b --date last_1_day --out-dir Temp\CrashSight\Daily_2026-06-01_0.7.2b --sample-rows 5 --sample-docs 2 --access-rows 30 --sleep 0.1
pwsh -NoProfile -ExecutionPolicy Bypass -File Tools\DecodeOnlineError.ps1 -InputPath Temp\CrashSight\Daily_2026-06-01_0.7.2b\blocking_decode_input.txt -OutputPath Temp\CrashSight\Daily_2026-06-01_0.7.2b\blocking_decoded.txt
python Tools\CrashSight\crashsight_daily.py write-reports --version 0.7.2b --date last_1_day --out-dir Temp\CrashSight\Daily_2026-06-01_0.7.2b --report-dir MD\CrashSight_2026-06-01_0.7.2b_1day --contexts-per-report 3

Classification Rule

The daily tool classifies every CrashSight ERROR issue into one of two buckets:

  • blocking: real exceptions, native CrashSight exception rows, or UnityLogError rows that wrap a concrete exception object/stack.
  • logerror: project diagnostic LogSystem.LogError rows without a concrete exception object/stack.

Blocking reports are merged by root-cause family and written under MD/CrashSight_<date>_<version>_1day/blocking/. Non-blocking diagnostics are merged into logerror_summary.md.