방법: 카운터와 범주의 존재 여부 확인

업데이트: 2007년 11월

PerformanceCounterCategory 클래스의 CounterExists 메서드를 사용하면 로컬 컴퓨터나 원격 컴퓨터의 특정 범주 안에 지정된 성능 카운터가 있는지 확인할 수 있습니다. 새 카운터를 만들기 전에 존재 여부를 확인해야 같은 이름을 가진 다른 카운터가 존재하는 오류가 발생하지 않습니다.

PerformanceCounterCategory 클래스의 Exists 메서드를 사용하면 카운터의 존재 여부뿐만 아니라 지정 범주의 존재 여부도 확인할 수 있습니다. 이렇게 하면 사용자 지정 카운터를 만들 때 해당 카운터의 범주가 이미 있는지 확인할 수 있습니다. 지정한 범주가 이미 만들어져 있으면 Create 메서드에서 오류를 발생시킵니다.

ExistsCounterExists 메서드는 항목이 있는 경우 true를 반환하고 항목이 없는 경우 false를 반환합니다.

카운터가 있는지 여부를 확인하려면

  • PerformanceCounterCategory 클래스의 Exists 메서드를 호출하고 다음 매개 변수를 지정합니다.

    매개 변수

    CounterName

    쿼리할 카운터의 이름

    CategoryName

    서버에 있는 성능 개체의 범주

    MachineName

    범주와 카운터를 찾을 서버

    참고:

    Visual Basic에서 MachineName 매개 변수는 선택적 요소이며 지정하지 않은 경우 기본적으로 로컬 컴퓨터가 사용됩니다. C#에서 컴퓨터 이름을 지정하지 않으려면 Exists 메서드의 오버로드를 사용합니다.

범주가 있는지 여부를 확인하려면

  • PerformanceCounterCategory 클래스의 Exists 메서드를 호출하고 다음 매개 변수를 지정합니다.

    매개 변수

    CategoryName

    쿼리할 범주

    MachineName

    범주를 찾을 서버

    다음 예제에서는 If 문을 사용하여 범주와 카운터를 만들기 전에 범주가 있는지 여부를 확인하는 방법을 보여 줍니다.

    If Not (PerformanceCounterCategory.Exists("MyCat")) Then
        PerformanceCounterCategory.Create( _
           "MyCat", "Description", _
           PerformanceCounterCategoryType.SingleInstance, _
           "MyCounter", "Description")
    End If
    
         if (!System.Diagnostics.PerformanceCounterCategory.Exists("MyCat"))
            {
                System.Diagnostics.PerformanceCounterCategory.Create(
                   "MyCat", "Description", PerformanceCounterCategoryType.SingleInstance,
                   "MyCounter", "Description");
            }
    

참고 항목

작업

방법: 성능 카운터에 값 쓰기

개념

범주 및 카운터 관리

성능 카운터 값 검색