λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
iOS 🍎/iOS

Debugging 1 : dSYM, DWARF

by yongmin.Lee 2022. 3. 29.

DWARF ?

  • DWARFλŠ” 널리 μ‚¬μš©λ˜λŠ” ν‘œμ€€ν™”λœ 디버깅 자료 ν˜•μ‹.
  • 앱이 ν¬λž˜μ‹œκ°€ λ‚˜κ²Œλ˜λ©΄ μ‹œμŠ€ν…œμ€ ν¬λž˜μ‹œ 리포트λ₯Ό μƒμ„±ν•˜κ³  이λ₯Ό λ””λ°”μ΄μŠ€ 내뢀에 μ €μž₯ν•˜κ³  ν¬λž˜μ‹œ λ¦¬ν¬νŠΈλŠ” ν¬λž˜μ‹œκ°€ λ°œμƒν•œ μ‹œμ μ— λŒ€ν•œ ν™˜κ²½ μ •λ³΄λ‚˜ 기타 ν¬λž˜μ‹œ 뢄석에 μœ μš©ν•œ 정보듀을 λ‹΄κ³ μžˆλŠ”λ°, μ΄λ ‡κ²Œ μƒκΈ°λŠ” ν¬λž˜μ‹œ 리포트 DWARF ν˜•μ‹μœΌλ‘œ μ“°μ—¬μžˆλ‹€

 

Symbol, Symbolication? 

  • Symbol :  μ‚¬λžŒμ΄ 읽을 수 μžˆλŠ” λ°μ΄ν„° νƒ€μž…
  • Symbolication : ν¬λž˜μ‹œ λ¦¬ν¬νŠΈμ—μ„œ λ‚˜νƒ€λ‚˜λŠ” BackTrace의 μ£Όμ†Œκ°’μ„ Symbol둜 μ „ν™˜ν•˜λŠ” κ³Όμ •

 

dSYM?

  • dSYM : debug symbol file
  • Debug Symbol(dSYM)은 symbol μ€‘μ—μ„œ 디버깅을 μœ„ν•΄ ν•„μš”ν•œ 정보λ₯Ό μ’€ 더 많이 가지고 μžˆλŠ” symbol
  • Debug Symbol은 컴파일된 λ°”μ΄λ„ˆλ¦¬μ˜ machine instruction(μ£Όμ†Œκ°’ 정보)이 μš°λ¦¬κ°€ μž‘μ„±ν•œ μ†ŒμŠ€μ½”λ“œμ˜ μ–΄λ–€ 라인에 λ§€ν•‘λ˜λŠ”μ§€μ— λŒ€ν•œ 정보λ₯Ό 가지고 μžˆλ‹€
  • dSYM νŒŒμΌκ³Ό μ•± λ°”μ΄λ„ˆλ¦¬λŠ” Build UUIDλ₯Ό 톡해 μ„œλ‘œλ₯Ό μ‹λ³„ν•˜λŠ”λ° Build UUIDλŠ” 맀 λΉŒλ“œλ§ˆλ‹€ μƒˆλ‘œ μƒμ„±λ˜λ―€λ‘œ, μ†ŒμŠ€ μ½”λ“œ λ³€κ²½ 없이 λΉŒλ“œλ₯Ό μˆ˜ν–‰ν•˜λŠ” κ²½μš°μ—λ„ 이전에 μƒμ„±λœ dSYM νŒŒμΌκ³Ό μƒˆλ‘œ μƒμ„±λœ μ•± λ°”μ΄λ„ˆλ¦¬λŠ” μ„œλ‘œ λ‹€λ₯Έ Build UUIDλ₯Ό 가진닀.
  • μ•±μ—μ„œ ν¬λž˜μ‹œκ°€ λ°œμƒν•  경우, UnSymbolicated μƒνƒœμ˜ ν¬λž˜μ‹œ λ¦¬ν¬νŠΈκ°€ λ””λ°”μ΄μŠ€μ— μ €μž₯ -> UnSymbolicated μƒνƒœμ˜ ν¬λž˜μ‹œ λ¦¬ν¬νŠΈλŠ” dSYM νŒŒμΌμ„ 톡해 symbolicate !

 

 

 

 

 

 

 

참고자료

https://visu4l.tistory.com/entry/Embedded-DWARF

https://hcn1519.github.io/articles/2020-02/crash_report_symbolication

https://jjhyuk15.medium.com/ios-dsym-%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80-69516fa7ce99

http://minsone.github.io/mac/ios/where-is-the-dsym-file-in-xcode

https://velog.io/@ssionii/Xcode-%EB%94%94%EB%B2%84%EA%B9%85-%ED%95%98%EB%8A%94-%EB%B2%95%EC%97%90-%EB%8C%80%ED%95%B4-%EC%95%84%EB%9D%BC%EB%B3%B4%EC%9E%90-LLDB-%EC%A0%95%EB%B3%B5

'iOS 🍎 > iOS' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

Xcode 버전별 μ§€μ›λ˜λŠ” SDK  (0) 2022.04.28
Xcode 13, No StoryBoard Settings with SceneDelegate  (0) 2022.04.12
iOS FireBase Crashlytics 적용 : CocoaPods, SPM  (0) 2022.03.29
SPM, Swift Package Manager  (0) 2022.03.29
MVVM-C  (0) 2022.03.28