2010-02-09 2 views
18

이 팀의 공유 심볼 서버를 설정하는 방법에 대한 자세한 내용은 Setting up a Symbol Server을 읽었습니다.심볼 서버를 설치하면 어떤 이점이 있습니까?

내가 궁금한 점은 내 기호를 상점에 추가하는 것입니다.

내 질문은 이것입니다. 정확히 내가 이걸 얻었습니까?

의 내가 다음 빌드 프로세스를 가지고 있다고 가정하자 :

  1. 내가
  2. 인 TeamCity CI 도구는 변경 사항을 수정 해 빌드 + 단위 테스트를
  3. 바이너리를 수행 내 Subversion 저장소에 변경 사항을 커밋 다른 응용 프로그램을 참조하기 위해 Subversion 저장소에 커밋되었습니다.

위의 세 번째 요점을 추가하면 빌드 된 파일을 추가 할 수 있습니다 기호 저장소에, 그게 나에게 무엇을 주는가?

리포지토리에 커밋 된 바이너리를 참조하면 프로그램에서 .dll, .pdb 및 .xml (intellisense 지원)을 모두받습니다. 따라서 스택 추적에 이미 필요한 모든 것이 포함되어있는 것처럼 보입니다.

.pdb를 배포하기위한 대체품입니까?

아니면 .DMP 파일을 WINDBG에 열어서 스택을 분석해야 할 필요가 있습니다. 여기에는 실행 파일이 전혀 없으며 다른 사람이 제공 한 .DMP 파일 만있을 것입니다. (즉, exectuables는 아마도 이전 버전의 것일 뿐이고 .DMP 파일 만 받았습니다.)

답변

18

분명하지 않음 : 기호 서버는 기호를 제공합니다. 따라서 코드가 충돌하여 화상을 입었을 때 고객이 얻은 미니 덤프를 디버깅 할 수 있습니다. 고객이 겪고있는 문제 에 대한 사후 분석을하는 것은 절대적으로 중요합니다. 몇 개월 된 코드 버전이 고객의 컴퓨터에서 충돌 할 기회를 얻었으므로 이미 두 버전을 진행했습니다.

실제 노력은 기호 서버를 설정하는 것이 아니라 올바른 디버깅 기회를 제공하는 올바른 pdb 파일이 있는지 확인하는 것입니다. 빌드 프로세스를 제어하는 ​​것은이 방정식의 핵심 부분입니다.

+2

나는 이것이 내 대답이라고 생각한다. 우리 팀과 테스터, 그리고 사용자들에게 정상적인 충돌 보고서에는 이미 필요한 모든 것이 포함되어 있지만 요즘에는 WINDBG를 사용하여 높은 메모리 사용 문제를 조사해 왔으며 클라이언트로부터 덤프 파일을 다시 받으면 하나 이상의 중급 버전이 오래되었습니다, 나는 로컬 파일을 가지고하지 않습니다. 이것은 심볼 서버를 사용할 수있는 영역이라는 것을 의미합니다. –

+1

당신은 그것을 행운을 빌어 요. –

1

코드에 문제가있을 수 있지만 Subversion 저장소에 액세스 할 수없는 사용자가있는 경우 어떻게됩니까? 당신은 그들에게 그들이 필요로하는 상징을 갖게됩니까? 예를 들어, 회계 부서의 응용 프로그램을 개발하여 초기 버전의 코드를 시험해보고 싶다면, 그 중 하나를 추적 할 수 있습니다. Subversion 등록자가 필요합니까?

심볼 서버는 기호가 필요한 모든 사람이 쉽게 사용할 수있는 단일 네트워크 위치 일뿐입니다.

기호 정보를 원하면 .pdb 파일 대신 사용할 수있는 방법은 없습니다.

+0

지원 도구에서 유용한 스택 트레이스를 얻으려면 이미 응용 프로그램과 함께 .pdb 파일을 배포해야합니다. 그러므로 내 질문. 기본적으로 모든 .dll (우리가 직접 빌드)에 대해 해당 .pdb 파일도 제공합니다. 내장 된 충돌 보고서 기능을 통해 전송 된 스택 추적에는 이미 파일 및 행 번호 정보가 포함되어 있습니다. 이 문맥에서이 심볼 서버에 실제로 사용되지 않는다는 것을 의미합니까? 테스터 머신에서 프로그램이 충돌하는 경우이 서버에서 우리가 아닌 라이브러리의 심볼을 가져 오는 방법은 무엇입니까? 그 기사는 말하지 않는다. –

+0

당신이 묘사하는 상황에서 상징 공유는 필요하지 않을 것이라고 나는 말할 것이다. 심볼 서버의 큰 장점은 (1) 배포판의 배포/크기에 포함 된 파일의 수를 최소화하고 (2) 심볼 파일의 표준 위치를 만드는 것입니다 (버전 관리를 추적하지 않아도 됨). 이 문제를 다른 방식으로 처리하고있는 것 같습니다. – jfawcett

1

이 블로그 게시물에 대해 살펴 보자 Source Server and Symbol Server Support in TFS 2010 그것은 기호 서버 & 원본 서버에 관하여

는 TFS 2010 년에 특정 기능을하지만 당신은 많은 정보를 가지고 다른 빌드 및 소스 제어 시스템에 적용 할 수 있습니다 잘.