236 lines
14 KiB
Markdown
236 lines
14 KiB
Markdown
# NV-Log Analyzer
|
|
|
|
NVIDIA Bug Report 로그 자가 진단 서비스
|
|
|
|
`nvidia-bug-report.log.gz` 파일을 업로드하면 XID 에러, GPU 상태, 커널 로그를 자동 분석하여 권장 조치를 안내합니다.
|
|
|
|
## 주요 기능
|
|
|
|
- **XID 에러 탐지**: `NVRM: Xid` 패턴 자동 검출 + 에러 코드별 한글 권장 조치 제공
|
|
- **GPU 헬스 체크**: 온도, 전력, ECC 에러, 메모리 상태 요약
|
|
- **커널 로그 필터링**: dmesg 내 Critical, Error, OOM, PCIe 에러 추출
|
|
- **원본 로그 검색**: 키워드 기반 로그 검색 기능
|
|
- **XID 코드 조회**: 사이드바에서 XID 번호로 즉시 의미 확인
|
|
|
|
## 빠른 시작
|
|
|
|
### 방법 1: 로컬 실행
|
|
|
|
```bash
|
|
pip install -r requirements.txt
|
|
streamlit run app.py
|
|
```
|
|
|
|
브라우저에서 `http://localhost:8501` 접속
|
|
|
|
### 방법 2: Docker
|
|
|
|
```bash
|
|
docker-compose up -d
|
|
```
|
|
|
|
브라우저에서 `http://localhost:8501` 접속
|
|
|
|
## 프로젝트 구조
|
|
|
|
```
|
|
nvidia/
|
|
├── app.py # Streamlit 대시보드 (메인 UI)
|
|
├── log_parser.py # 핵심 분석 엔진
|
|
├── data/
|
|
│ └── xid_database.json # XID 에러 코드 매핑 DB (18종)
|
|
├── requirements.txt
|
|
├── Dockerfile
|
|
├── docker-compose.yml
|
|
└── README.md
|
|
```
|
|
|
|
## 분석 대상 로그 생성 방법
|
|
|
|
GPU 서버에서 아래 명령 실행:
|
|
|
|
```bash
|
|
sudo nvidia-bug-report.sh
|
|
```
|
|
|
|
생성된 `nvidia-bug-report.log.gz` 파일을 웹 대시보드에 업로드하면 됩니다.
|
|
|
|
## 지원하는 XID 코드
|
|
|
|
현재 시스템은 `Xid-Catalog.xlsx` 분석을 통해 총 **172개**의 XID 코드를 지원합니다.
|
|
|
|
| XID | 이름 | 심각도 | 설명 |
|
|
|-----|------|--------|------|
|
|
| 1 | ROBUST_CHANNEL_FIFO_ERROR_FIFO_METHOD | 심각 | Unused |
|
|
| 2 | ROBUST_CHANNEL_FIFO_ERROR_SW_METHOD | 심각 | Unused |
|
|
| 3 | ROBUST_CHANNEL_FIFO_ERROR_UNK_METHOD | 심각 | Unused |
|
|
| 4 | ROBUST_CHANNEL_FIFO_ERROR_CHANNEL_BUSY | 심각 | Unused |
|
|
| 5 | ROBUST_CHANNEL_FIFO_ERROR_RUNOUT_OVERFLOW | 심각 | Unused |
|
|
| 6 | ROBUST_CHANNEL_FIFO_ERROR_PARSE_ERR | 심각 | Unused |
|
|
| 7 | ROBUST_CHANNEL_FIFO_ERROR_PTE_ERR | 심각 | Unused |
|
|
| 8 | GPU Stopped Responding | 심각 | GPU가 응답을 중단했습니다. 하드웨어 결함 또는 드라이버 문제일 수 있습니다. |
|
|
| 9 | ROBUST_CHANNEL_GR_ERROR_INSTANCE | 심각 | Unused |
|
|
| 10 | ROBUST_CHANNEL_GR_ERROR_SINGLE_STEP | 심각 | Unused |
|
|
| 11 | ROBUST_CHANNEL_GR_ERROR_MISSING_HW | 경고 | Invalid or corrupted push buffer stream |
|
|
| 12 | ROBUST_CHANNEL_GR_ERROR_SW_METHOD | 심각 | Unused |
|
|
| 13 | Graphics Engine Exception | 심각 | 그래픽 엔진에서 예외가 발생했습니다. GPU 코어 또는 메모리 결함 가능성. |
|
|
| 14 | ROBUST_CHANNEL_FAKE_ERROR | 정보 | Unused |
|
|
| 15 | ROBUST_CHANNEL_SCANLINE_TIMEOUT | 심각 | Unused |
|
|
| 16 | ROBUST_CHANNEL_VBLANK_CALLBACK_TIMEOUT | 심각 | Unused |
|
|
| 17 | ROBUST_CHANNEL_PARAMETER_ERROR | 심각 | Unused |
|
|
| 18 | ROBUST_CHANNEL_BUS_MASTER_TIMEOUT_ERROR | 심각 | Unused |
|
|
| 19 | ROBUST_CHANNEL_DISP_MISSED_NOTIFIER | 심각 | Unused |
|
|
| 20 | ROBUST_CHANNEL_MPEG_ERROR_SW_METHOD | 심각 | Unused |
|
|
| 21 | ROBUST_CHANNEL_ME_ERROR_SW_METHOD | 심각 | Unused |
|
|
| 22 | ROBUST_CHANNEL_VP_ERROR_SW_METHOD | 심각 | Unused |
|
|
| 23 | ROBUST_CHANNEL_RC_LOGGING_ENABLED | 심각 | Unused |
|
|
| 24 | ROBUST_CHANNEL_GR_SEMAPHORE_TIMEOUT | 심각 | Unused |
|
|
| 25 | ROBUST_CHANNEL_GR_ILLEGAL_NOTIFY | 경고 | Invalid or illegal push buffer stream |
|
|
| 26 | ROBUST_CHANNEL_FIFO_ERROR_FBISTATE_TIMEOUT | 심각 | Unused |
|
|
| 27 | ROBUST_CHANNEL_VP_ERROR | 심각 | Unused |
|
|
| 28 | ROBUST_CHANNEL_VP2_ERROR | 심각 | Unused |
|
|
| 29 | ROBUST_CHANNEL_BSP_ERROR | 심각 | Unused |
|
|
| 30 | ROBUST_CHANNEL_BAD_ADDR_ACCESS | 심각 | Unused |
|
|
| 31 | GPU Memory Page Fault | 심각 | GPU 메모리 페이지 폴트. 메모리 손상 또는 드라이버 버그 가능성. |
|
|
| 32 | Invalid or Corrupted Push Buffer | 경고 | 손상된 푸시 버퍼 감지. 드라이버 또는 애플리케이션 문제. |
|
|
| 33 | ROBUST_CHANNEL_SEC_ERROR | 심각 | Unused |
|
|
| 34 | ROBUST_CHANNEL_MSVLD_ERROR | 심각 | Unused |
|
|
| 35 | ROBUST_CHANNEL_MSPDEC_ERROR | 심각 | Unused |
|
|
| 36 | ROBUST_CHANNEL_MSPPP_ERROR | 심각 | Unused |
|
|
| 37 | ROBUST_CHANNEL_FECS_ERR_UNIMP_FIRMWARE_METHOD | 정보 | Driver firmware error |
|
|
| 38 | Driver Firmware Mismatch | 경고 | 드라이버와 펌웨어 버전 불일치. |
|
|
| 39 | ROBUST_CHANNEL_CE0_ERROR | 경고 | Copy Engine Exception |
|
|
| 40 | ROBUST_CHANNEL_CE1_ERROR | 경고 | Copy Engine Exception |
|
|
| 41 | ROBUST_CHANNEL_CE2_ERROR | 경고 | Copy Engine Exception |
|
|
| 42 | ROBUST_CHANNEL_VIC_ERROR | 심각 | Unused |
|
|
| 43 | GPU Stopped Processing | 심각 | GPU 처리가 중단됨. 심각한 하드웨어 또는 드라이버 문제. |
|
|
| 44 | ROBUST_CHANNEL_GR_FAULT_DURING_CTXSW | 정보 | Graphics Engine fault during context switch |
|
|
| 45 | GPU Preemption Failure | 경고 | GPU 선점 실패. 특정 워크로드에서 타임아웃 발생. |
|
|
| 46 | ROBUST_CHANNEL_GPU_TIMEOUT_ERROR | 정보 | GPU stopped processing |
|
|
| 47 | ROBUST_CHANNEL_NVENC0_ERROR | 심각 | Unused |
|
|
| 48 | Double Bit ECC Error | 심각 | 수정 불가능한 Double Bit ECC 에러 발생. GPU 메모리 물리적 손상. |
|
|
| 49 | SILENT_RUNNING_CONSTANT_LEVEL_SET_BY_REGISTRY | 심각 | Unused |
|
|
| 50 | SILENT_RUNNING_LEVEL_TRANSITION_DUE_TO_RC_ERROR | 심각 | Unused |
|
|
| 51 | SILENT_RUNNING_STRESS_TEST_FAILURE | 심각 | Unused |
|
|
| 52 | SILENT_RUNNING_LEVEL_TRANS_DUE_TO_TEMP_RISE | 심각 | Unused |
|
|
| 53 | SILENT_RUNNING_TEMP_REDUCED_CLOCKING | 심각 | Unused |
|
|
| 54 | SILENT_RUNNING_PWR_REDUCED_CLOCKING | 경고 | Auxiliary power is not connected to the GPU board |
|
|
| 55 | SILENT_RUNNING_TEMPERATURE_READ_ERROR | 심각 | Unused |
|
|
| 56 | DISPLAY_CHANNEL_EXCEPTION | 심각 | Unused |
|
|
| 57 | FB_LINK_TRAINING_FAILURE_ERROR | 심각 | Unused |
|
|
| 58 | FB_MEMORY_ERROR | 심각 | Unused |
|
|
| 59 | PMU_ERROR | 심각 | Unused |
|
|
| 60 | ROBUST_CHANNEL_SEC2_ERROR | 경고 | Video processor exception |
|
|
| 61 | GPU Fallen Off the Bus | 심각 | GPU가 PCIe 버스에서 분리됨. 전원 또는 물리적 연결 문제. |
|
|
| 62 | GPU ECC Page Retirement | 경고 | ECC 에러로 인한 메모리 페이지 은퇴 처리. |
|
|
| 63 | ECC Page Retirement: Double Bit | 심각 | Double Bit ECC 에러로 인한 페이지 은퇴. 심각한 메모리 손상. |
|
|
| 64 | ECC Page Retirement Failure | 심각 | ECC 에러 페이지 은퇴 실패. 더 이상 은퇴할 수 있는 페이지가 없음. |
|
|
| 65 | ROBUST_CHANNEL_NVENC1_ERROR | 심각 | Unused |
|
|
| 66 | ROBUST_CHANNEL_FECS_ERR_REG_ACCESS_VIOLATION | 정보 | Illegal access by driver |
|
|
| 67 | ROBUST_CHANNEL_FECS_ERR_VERIF_VIOLATION | 정보 | Illegal access by driver |
|
|
| 68 | ROBUST_CHANNEL_NVDEC0_ERROR | 경고 | NVDEC0 Exception |
|
|
| 69 | GPU Access to System Memory Failed | 경고 | GPU에서 시스템 메모리 접근 실패. IOMMU 또는 드라이버 문제. |
|
|
| 70 | ROBUST_CHANNEL_CE3_ERROR | 경고 | CE3: Unknown Error |
|
|
| 71 | ROBUST_CHANNEL_CE4_ERROR | 경고 | CE4: Unknown Error |
|
|
| 72 | ROBUST_CHANNEL_CE5_ERROR | 경고 | CE5: Unknown Error |
|
|
| 73 | ROBUST_CHANNEL_NVENC2_ERROR | 심각 | Unused |
|
|
| 74 | NVLINK_ERROR | 정보 | NVLINK Error |
|
|
| 75 | ROBUST_CHANNEL_CE6_ERROR | 경고 | CE6: Unknown Error |
|
|
| 76 | ROBUST_CHANNEL_CE7_ERROR | 경고 | CE7: Unknown Error |
|
|
| 77 | ROBUST_CHANNEL_CE8_ERROR | 경고 | CE8: Unknown Error |
|
|
| 78 | VGPU_START_ERROR | 경고 | vGPU Start Error |
|
|
| 79 | GPU Fallen Off the Bus (Fatal) | 심각 | GPU가 PCIe 버스에서 완전히 분리됨. Xid 61의 치명적 버전. |
|
|
| 80 | PBDMA_PUSHBUFFER_CRC_MISMATCH | 경고 | Corrupted data sent to GPU |
|
|
| 81 | ROBUST_CHANNEL_VGA_SUBSYSTEM_ERROR | 심각 | Unused |
|
|
| 82 | ROBUST_CHANNEL_NVJPG0_ERROR | 경고 | NVJPG0 Error |
|
|
| 83 | ROBUST_CHANNEL_NVDEC1_ERROR | 경고 | NVDEC1 Error |
|
|
| 84 | ROBUST_CHANNEL_NVDEC2_ERROR | 경고 | NVDEC2 Error |
|
|
| 85 | ROBUST_CHANNEL_CE9_ERROR | 경고 | CE9: Unknown Error |
|
|
| 86 | ROBUST_CHANNEL_OFA0_ERROR | 경고 | OFA Exception |
|
|
| 87 | NVTELEMETRY_DRIVER_REPORT | 심각 | Unused |
|
|
| 88 | ROBUST_CHANNEL_NVDEC3_ERROR | 경고 | NVDEC3 Error |
|
|
| 89 | ROBUST_CHANNEL_NVDEC4_ERROR | 경고 | NVDEC4 Error |
|
|
| 90 | LTC_ERROR | 심각 | Unused |
|
|
| 91 | RESERVED_XID | 심각 | Unused |
|
|
| 92 | High Single-bit ECC Error Rate | 경고 | 단일 비트 ECC 에러 빈도가 높음. 메모리 노후화 징후. |
|
|
| 93 | INFOROM_ERASE_LIMIT_EXCEEDED | 정보 | Non-fatal violation of provisioned InfoROM wear limit |
|
|
| 94 | Contained ECC Error | 정보 | 격리된 ECC 에러. 자동으로 수정되었으나 모니터링 필요. |
|
|
| 95 | Uncontained ECC Error | 심각 | 격리되지 않은 ECC 에러. 데이터 손상 가능성. |
|
|
| 96 | ROBUST_CHANNEL_NVDEC5_ERROR | 경고 | NVDEC5 Error |
|
|
| 97 | ROBUST_CHANNEL_NVDEC6_ERROR | 경고 | NVDEC6 Error |
|
|
| 98 | ROBUST_CHANNEL_NVDEC7_ERROR | 경고 | NVDEC7 Error |
|
|
| 99 | ROBUST_CHANNEL_NVJPG1_ERROR | 경고 | NVJPG1 Error |
|
|
| 100 | ROBUST_CHANNEL_NVJPG2_ERROR | 경고 | NVJPG2 Error |
|
|
| 101 | ROBUST_CHANNEL_NVJPG3_ERROR | 경고 | NVJPG3 Error |
|
|
| 102 | ROBUST_CHANNEL_NVJPG4_ERROR | 경고 | NVJPG4 Error |
|
|
| 103 | ROBUST_CHANNEL_NVJPG5_ERROR | 경고 | NVJPG5 Error |
|
|
| 104 | ROBUST_CHANNEL_NVJPG6_ERROR | 경고 | NVJPG6 Error |
|
|
| 105 | ROBUST_CHANNEL_NVJPG7_ERROR | 경고 | NVJPG7 Error |
|
|
| 106 | SMBPBI_TEST_MESSAGE | 정보 | SMBPBI Test Message |
|
|
| 107 | SMBPBI_TEST_MESSAGE_SILENT | 정보 | SMBPBI Test Message Silent |
|
|
| 108 | NVLINK_REMOTE_TRANSLATION_ERROR | 정보 | Unused |
|
|
| 109 | ROBUST_CHANNEL_CTXSW_TIMEOUT_ERROR | 정보 | Context Switch Timeout Error |
|
|
| 110 | SEC_FAULT_ERROR | 정보 | Security Fault Error |
|
|
| 111 | BUNDLE_ERROR_EVENT | 심각 | Unused |
|
|
| 112 | DISP_SUPERVISOR_ERROR | 심각 | Unused |
|
|
| 113 | DP_LT_FAILURE | 심각 | Unused |
|
|
| 114 | HEAD_RG_UNDERFLOW | 심각 | Unused |
|
|
| 115 | CORE_CHANNEL_REGS | 심각 | Unused |
|
|
| 116 | WINDOW_CHANNEL_REGS | 심각 | Unused |
|
|
| 117 | CURSOR_CHANNEL_REGS | 심각 | Unused |
|
|
| 118 | HEAD_REGS | 심각 | Unused |
|
|
| 119 | GPU Recovery Action | 정보 | GPU 복구 작업 수행됨. 일시적 에러에서 자동 복구. |
|
|
| 120 | GSP_ERROR | 정보 | GSP Error |
|
|
| 121 | C2C_ERROR | 정보 | C2C Error |
|
|
| 122 | SPI_PMU_RPC_READ_FAIL | 심각 | Unused |
|
|
| 123 | SPI_PMU_RPC_WRITE_FAIL | 심각 | Unused |
|
|
| 124 | SPI_PMU_RPC_ERASE_FAIL | 심각 | Unused |
|
|
| 125 | INFOROM_FS_ERROR | 심각 | Unused |
|
|
| 126 | ROBUST_CHANNEL_CE10_ERROR | 경고 | CE10: Unknown Error |
|
|
| 127 | ROBUST_CHANNEL_CE11_ERROR | 경고 | CE11: Unknown Error |
|
|
| 128 | ROBUST_CHANNEL_CE12_ERROR | 경고 | CE12: Unknown Error |
|
|
| 129 | ROBUST_CHANNEL_CE13_ERROR | 경고 | CE13: Unknown Error |
|
|
| 130 | ROBUST_CHANNEL_CE14_ERROR | 경고 | CE14: Unknown Error |
|
|
| 131 | ROBUST_CHANNEL_CE15_ERROR | 경고 | CE15: Unknown Error |
|
|
| 132 | ROBUST_CHANNEL_CE16_ERROR | 경고 | CE16: Unknown Error |
|
|
| 133 | ROBUST_CHANNEL_CE17_ERROR | 경고 | CE17: Unknown Error |
|
|
| 134 | ROBUST_CHANNEL_CE18_ERROR | 경고 | CE18: Unknown Error |
|
|
| 135 | ROBUST_CHANNEL_CE19_ERROR | 경고 | CE19: Unknown Error |
|
|
| 136 | ALI_TRAINING_FAIL | 정보 | Link Training Failed |
|
|
| 137 | NVLINK_PRIV_ERR | 정보 | NVLink Privilege Error |
|
|
| 138 | ROBUST_CHANNEL_DLA_ERROR | 심각 | Unused |
|
|
| 139 | ROBUST_CHANNEL_OFA1_ERROR | 경고 | OFA1 Error |
|
|
| 140 | UNRECOVERABLE_ECC_ERROR_ESCAPE | 정보 | ECC Unrecovered Error |
|
|
| 141 | ROBUST_CHANNEL_FAST_PATH_ERROR | 정보 | CUDA Fast Path Error |
|
|
| 142 | ROBUST_CHANNEL_NVENC3_ERROR | 심각 | NVENC3 Error |
|
|
| 143 | GPU_INIT_ERROR | 정보 | GPU Initialization Error |
|
|
| 144 | NVLINK_SAW_ERROR | 정보 | NVLINK: SAW Error |
|
|
| 145 | NVLINK_RLW_ERROR | 정보 | NVLINK: RLW Error |
|
|
| 146 | NVLINK_TLW_ERROR | 정보 | NVLINK: TLW Error |
|
|
| 147 | NVLINK_TREX_ERROR | 정보 | NVLINK: TREX Error |
|
|
| 148 | NVLINK_NVLPW_CTRL_ERROR | 정보 | NVLINK: NVLPW_CTRL Error |
|
|
| 149 | NVLINK_NETIR_ERROR | 정보 | NVLINK: NETIR Error |
|
|
| 150 | NVLINK_MSE_ERROR | 정보 | NVLINK: MSE Error |
|
|
| 151 | ROBUST_CHANNEL_KEY_ROTATION_ERROR | 경고 | Key rotation Error |
|
|
| 152 | ROBUST_CHANNEL_DLA_SMMU_ERROR | 정보 | DLA SMMU Error |
|
|
| 153 | ROBUST_CHANNEL_DLA_TIMEOUT | 정보 | DLA timeout Error |
|
|
| 154 | GPU_RECOVERY_ACTION_CHANGED | 정보 | GPU Recovery Action Changed |
|
|
| 155 | NVLINK_SW_DEFINED_ERROR | 정보 | NVLINK: SW Defined Error |
|
|
| 156 | RESOURCE_RETIREMENT_EVENT | 정보 | Resource Retirement Event |
|
|
| 157 | RESOURCE_RETIREMENT_FAILURE | 정보 | Resource Retirement Failure |
|
|
| 158 | GPU_FATAL_TIMEOUT | 정보 | GPU Fatal Timeout |
|
|
| 159 | ROBUST_CHANNEL_CHI_NON_DATA_ERROR | 경고 | CHI Non-Data Error |
|
|
| 160 | CHANNEL_RETIREMENT_EVENT | 정보 | Channel Retirement Event |
|
|
| 161 | CHANNEL_RETIREMENT_FAILURE | 정보 | Channel Retirement Failure |
|
|
| 162 | PSHC_REENGAGED | 정보 | Power Smoothing HW Circuitry capability reengaged |
|
|
| 163 | PSHC_DISENGAGED | 정보 | Power Smoothing HW Circuitry capability disengaged |
|
|
| 164 | PSHC_LOW_LIFETIME | 정보 | Power Smoothing HW Circuitry low lifetime reached |
|
|
| 165 | PSHC_ZERO_LIFETIME | 정보 | Power Smoothing HW Circuitry lifetime exhausted |
|
|
| 166 | NVLINK_SECURE_CRYPTO_ERR | 정보 | CC traffic seen prior to link properly being configured for encrypted traffic |
|
|
| 167 | PCIE_FATAL_TIMEOUT | 정보 | PCIE_FATAL_TIMEOUT |
|
|
| 168 | REDUCED_GPU_MEMORY_CAPACITY | 정보 | Errors found in WPR (write protected region) |
|
|
| 169 | SEC2_HALT_ERROR | 정보 | Internal micro-controller halt |
|
|
| 170 | NVLINK_SECURE_OTHER | 정보 | Interrupt seen in CC mode |
|
|
| 171 | UNCORRECTABLE_DRAM_ERROR | 정보 | Additional to Xid 48 providing more details on particulars of fault to differentiate DRAM/SRAM |
|
|
| 172 | UNCORRECTABLE_SRAM_ERROR | 정보 | Additional to Xid 48 providing more details on particulars of fault to differentiate DRAM/SRAM |
|