개요
VisualStudio.Extensibility Diagnostics Explorer 확장은 VisualStudio.Extensibility 확장을 개발하는 동안 디버그할 수 있도록 설계되었습니다. 이 확장의 대상 그룹은 확장 소비자가 아닌 확장 작성자입니다. 이 확장은 확장이 상호 작용하는 확장성 지점과 IDE에 제공하는 구성 개체 확장 및 해당 구성 개체의 메타데이터를 검사하기 위한 인터페이스를 제공합니다.
시작
다음 지침에 따라 Diagsnotics 탐색기를 설치, 시작 및 구성합니다.
확장 설치
Visual Studio의 확장 관리자 또는 Visual Studio Marketplace 여기를 통해 진단 탐색기를 받을 수 있습니다.
메모
VisualStudio.Extensibility Diagnostics Explorer 확장은 Visual Studio 2022 17.12 이상과 호환됩니다.
Visual Studio에서 진단 탐색기 열기
Visual Studio에서 진단 탐색기를 시작하려면 확장 메뉴에서 VisualStudio.Extensibility Diagnostics Explorer 선택합니다.
진단 데이터 수집 활성화
진단 탐색기는 기본적으로 확장에서 관련 진단 데이터를 수집하도록 구성됩니다. 이 데이터 수집을 사용하지 않도록 설정하거나 다시 사용하도록 설정하려면 도구 창의 왼쪽 아래 모서리에 진단 수집 사용 확인란을 전환할 수 있습니다. 이 설정을 변경하려면 Visual Studio를 다시 시작해야 합니다.
진단 페이지
진단 탐색기 도구 창의 왼쪽 패널에는 다른 진단 페이지목록이 포함되어 있습니다. 확장 가능한 기능과 확장성 인프라의 두 가지 진단 페이지 유형이 있습니다. 확장 가능한 기능 페이지는 명령과 같은 Visual Studio 내의 특정 확장 가능한 구성 요소에 대한 진단 정보를 제공합니다. 확장성 인프라 페이지는 확장이 어떤 확장성 포인트에 연결되든 관계없이 관련된 진단 정보를 제공합니다. 이벤트 페이지, 확장성 관련 이벤트에 대한 라이브 뷰어 및 활성화 제약 조건을 만드는 데 도움이 되는 관련 IDE 상태를 보여 주는 클라이언트 컨텍스트 페이지는 두 확장성 인프라 페이지입니다.
확장 가능한 기능 페이지
확장 가능한 기능 페이지에는 해당 기능 영역의 다양한 확장성 지점 대한 왼쪽 위에 ComboBox가 있으며, 각각 확장의 구성 개체에 직접 매핑할 수 있습니다. 예를 들어, 명령 페이지에는 메뉴 및 도구 모음에 대한 확장성 지점이 있으며, 이 지점에서는 Visual Studio가 VisualStudio.Extensibility 확장에서 발견한 각 메뉴와 도구 모음을 보여줍니다.
확장에서 속성이 업데이트되면 데이터가 실시간으로 업데이트됩니다. 예를 들어 확장이 런타임에 해당 명령 중 하나의 표시 이름을 변경하는 경우 해당 명령의 표시 이름 열의 셀에 해당 명령의 새 표시 이름이 즉시 표시됩니다.
확장성 지점 ComboBox에는 로그항목도 있습니다. 이 항목은 해당 업데이트의 라이브 보기를 보여 줍니다. ComboBox 옆에 있는 모든 지우기 단추를 사용하여 현재 보기에 표시되는 모든 줄을 지울 수 있습니다.
확장 ComboBox를 사용하여 보기의 항목을 필터링할 수 있습니다. 이 ComboBox에서 모든 선택하면 설치된 모든 VisualStudio.Extensibility 확장에 대한 데이터가 표시됩니다. 이 ComboBox를 특정 확장의 ID로 변경하면 해당 특정 확장과 관련된 항목만 표시됩니다. 이 ComboBox의 값은 확장 가능한 기능 페이지 사이를 탐색하는 경우에도 유지됩니다.
DataGrid의 일부 셀은 [확장하려면 클릭]. 이 메시지는 해당 속성과 관련된 메타데이터가 너무 장황해서 DataGrid의 셀에 깔끔하게 표시할 수 없음을 의미합니다. 셀을 클릭하면 해당 셀의 실제 값을 표시하는 모달 대화 상자가 열립니다.
확장 가능한 인프라 페이지
이벤트 페이지
이벤트 페이지에는 IDE에서 "발생한 일"이 표시됩니다. 각 이벤트는 해당 이벤트와 관련된 속성과 함께 DataGrid에 새 행으로 표시됩니다. 예를 들어 명령이 실행되면 Commands - 실행 이벤트가 보기에 표시되어 명령이 속한 확장의 ID와 실행된 명령의 ID가 표시됩니다.
이벤트 ComboBox를 사용하여 특정 이름의 이벤트만 포함하도록 보기를 필터링할 수 있습니다. 모든 선택하면 모든 이벤트가 표시됩니다. 특정 이벤트를 선택하면 이벤트의 모든 속성이 보기에 표시됩니다. 일부 속성은 단일 셀에 표시하기에 너무 자세한 경우 [확장하려면 클릭] 클릭하여 확장해야 합니다.
Contract ComboBox는 특정 확장 가능한 기능과 관련된 이벤트만 표시하도록 보기를 필터링합니다. 또한 특정 확장 가능한 기능과 관련된 이벤트의 이름만 포함하도록 Event
ComboBox를 필터링합니다.
모두 지우기 단추를 클릭하면 현재 보기에 표시된 모든 이벤트가 삭제됩니다.
열 설명
확장 프로그램 ID
확장 ID 열에는 이벤트 인스턴스가 관련된 확장의 ID가 표시됩니다. 특정 확장에 속하지 않고 대신 IDE 전체에 적용되는 경우 일부 이벤트에 대해 이 셀이 비어 있을 수 있습니다.
항목 ID
항목 ID 열에는 이벤트 인스턴스가 관련된 확장 항목의 ID가 표시됩니다. 예를 들어, 명령 - 실행 이벤트에 대한 항목 ID은 실행된 명령의 ID입니다.
속성
속성 열에는 DataGrid의 단일 셀에 표시될 수 있는 이벤트 인스턴스와 관련된 속성 집합이 표시됩니다. 자세한 정보 속성은 추가 정보 대화 상자에서만 표시되거나 Event ComboBox를 관심 있는 특정 이벤트의 이름으로 변경해야 합니다.
추가 정보
추가 정보 열에는 이벤트와 관련된 자세한 메타데이터가 표시됩니다. 이 열에서 셀을 클릭하면 해당 행이 나타내는 이벤트와 관련된 모든 메타데이터가 포함된 모달 대화 상자가 열립니다.
클라이언트 컨텍스트 페이지
클라이언트 컨텍스트 페이지에는 IDE 자체와 관련된 다양한 속성의 상태가 표시됩니다. 컨텍스트 ComboBox는 클라이언트 컨텍스트 ComboBox에서 현재 선택한 항목과 관련된 활성화 제약 조건을 모두 표시하거나 도구 창을 연 후 이러한 속성이 변경된 모든 시간의 로그를 표시하도록 보기의 데이터를 변경합니다. 이벤트 컨텍스트를 선택하면 모두 지우기 단추를 사용하여 현재 보기에 표시되는 모든 이벤트를 삭제할 수 있습니다.