다음을 통해 공유


방법: PerformanceCounter 구성 요소 인스턴스 구성

업데이트: 2007년 11월

사용자가 만든 PerformanceCounter 구성 요소에 설정해야 할 여러 속성이 있습니다. 이러한 속성은 구성 요소와 상호 작용할 카운터를 결정합니다. 설정해야 하는 속성은 다음과 같습니다.

  • CategoryName: 구성 요소와 상호 작용할 성능 개체를 결정합니다. Windows의 모든 성능 카운터는 Memory, Processes 및 Processor와 같은 범주로 그룹화됩니다.

  • CounterName: 구성 요소와 상호 작용할 지정된 범주의 카운터를 식별합니다.

  • InstanceName: 구성 요소와 상호 작용할 범주의 인스턴스를 식별합니다. 인스턴스가 포함되지 않는 범주도 많습니다. 따라서 이 속성을 비워 둘 수 있습니다. 이는 단일 인스턴스 카운터를 나타냅니다.

    참고:

    사용자가 정의하지 않은 범주가 설정되어 있는 경우 기존의 카운터와 인스턴스에서 선택해야 합니다. 또한 사용자 지정 범주에서만 새 카운터와 인스턴스를 만들 수 있습니다. 예를 들어, Memory 범주에서 새 카운터를 만들 수 없지만 Orders라는 새 범주를 만들면 이 범주 안에서 필요한 만큼의 카운터와 인스턴스를 정의할 수 있습니다.

  • MachineName: 구성 요소와 상호 작용할 성능 카운터가 있는 서버를 식별합니다. 로컬 컴퓨터를 나타내려면 이 속성을 "."으로 설정하고 현재 값을 기본값으로 사용하려면 이 속성을 비워 둡니다.

  • ReadOnly: 작성한 사용자 지정 카운터에 쓸 수 있는지 결정합니다. 기존 Windows 카운터와 같이 동작하도록 구성된 모든 PerformanceCounter 구성 요소의 인스턴스는 기본적으로 읽기 전용 모드로 동작하며 사용자는 이러한 카운터의 값을 변경할 수 없습니다. 그러나 구성 요소의 인스턴스가 사용자 지정 카운터와 같이 동작하도록 구성할 경우에는 기본값을 사용하여 읽기 전용 모드에서 작업하거나, 속성 값을 false로 다시 설정하여 값을 기록할 수도 있습니다.

    참고:

    로컬 컴퓨터에서만 카운터를 쓸 수 있습니다. 카운터 값을 읽으려면 액세스 권한이 있는 컴퓨터를 선택하면 됩니다.

PerformanceCounter 구성 요소의 인스턴스를 구성하려면

  1. PerformanceCounter 구성 요소의 인스턴스를 만듭니다. 자세한 내용은 방법: PerformanceCounter 구성 요소 인스턴스 만들기를 참조하십시오.

  2. 다음 속성을 설정하여 구성 요소와 상호 작용할 카운터를 나타냅니다.

    속성

    설정값

    MachineName

    액세스 권한이 있는 모든 서버

    CategoryName

    서버에 있는 모든 범주

    CounterName

    선택한 범주 안의 모든 카운터

  3. 상호 작용하는 카운터에 인스턴스가 여러 개 있으면 알맞은 인스턴스를 InstanceName 속성의 값으로 설정합니다.

  4. 사용자 지정 카운터에 대해 작업하며 쓰기 액세스 권한을 부여하려면 ReadOnly 속성을 false로 설정합니다.

    참고:

    이러한 속성은 속성 창 또는 코드에서 지정하거나 PerformanceCounter 구성 요소 인스턴스에 대한 특수한 형태의 생성자를 사용하여 지정할 수 있습니다.

    다음 예제에서는 프로그래밍 방식으로 이 값을 설정하여 로컬 서버에 있는 "aborted transactions"라는 기존의 Windows 성능 카운터에 연결하는 방법을 보여 줍니다.

    ' Connect to an existing Windows counter and category
    Dim abortedTransactions As New PerformanceCounter()
    abortedTransactions.CategoryName = _
       "distributed transaction coordinator"
    abortedTransactions.CounterName = "aborted transactions"
    abortedTransactions.MachineName = "."
    ' Connect to a custom counter and category in writable mode
    PerformanceCounterCategory.Create("orders", "desc", _
    PerformanceCounterCategoryType.SingleInstance, "milk", "desc")
    Dim myCounter2 As New PerformanceCounter("orders", "milk", False)
    
         // Connect to an existing Windows counter and category
            System.Diagnostics.PerformanceCounter abortedTransactions =
               new System.Diagnostics.PerformanceCounter();
            abortedTransactions.CategoryName =
               "distributed transaction coordinator";
            abortedTransactions.CounterName = "aborted transactions";
            abortedTransactions.MachineName = ".";
            // Connect to a custom counter and category in writable mode
            System.Diagnostics.PerformanceCounterCategory.Create(
               "orders", "desc", PerformanceCounterCategoryType.SingleInstance,
               "milk", "desc");
            System.Diagnostics.PerformanceCounter myCounter2 =
               new System.Diagnostics.PerformanceCounter("orders", "milk", false);
    
참고:

이 코드에서 "."은 로컬 컴퓨터를 나타냅니다.

참고 항목

작업

방법: PerformanceCounter 구성 요소 인스턴스 만들기

방법: 사용자 지정 성능 카운터 만들기

개념

범주 및 카운터 관리