|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 모든 클래스 | ||||||||||
개요: 상자 | 필드 | constructor | 메소드 | 상세: 필드 | constructor | 메소드 |
java.lang.Object | +--java.util.logging.LogManager
Logger 와 로그 서비스의 공유 상태세트를 관리하기 위해서 사용되는 단일의 글로벌 LogManager 오브젝트가 있습니다.
이 LogManager 에는 다음의 기능이 있습니다.
글로벌 LogManager 오브젝트는 LogManager.getLogManager()를 사용해 취득할 수 있습니다. LogManager 오브젝트는 클래스를 초기화할 경우에 작성되어 그 후 변경을 할 수 없습니다.
LogManager 클래스는 기동시에 java.util.logging.manager 시스템 프로퍼티를 사용해 배치됩니다.
디폴트로, LogManager 는 JRE 디렉토리의 프로퍼티 파일 lib/logging.properties 로부터 그 초기설정을 읽어들입니다. 프로퍼티 파일을 편집하는 경우, 그 JRE 의 모든 사용에 대해서 디폴트의 로그 구성을 변경할 수 있습니다.
또, LogManager 는 초기 구성의 read를 보다 상세하게 제어할 수 있는 다음의 2 개의 시스템 프로퍼티 옵션을 사용합니다.
java.util.logging.config.class 프로퍼티가 설정되는 경우, 프로퍼티의 값은 클래스명으로서 다루어집니다. 지정된 클래스가 로드 되어 오브젝트의 인스턴스가 생성되어 그 오브젝트의 constructor 이 초기 구성의 read를 실시합니다. 이 오브젝트는 구성을 제어하기 위해서 다른 시스템 프로퍼티를 사용하는 경우가 있습니다. 대체 구성 클래스는 readConfiguration(InputStream) 를 사용해, LogManager 의 프로퍼티를 정의할 수 있습니다.
java.util.logging.config.class 프로퍼티가 설정되지 않는 경우, java.util.logging.config.file 시스템 프로퍼티를 사용해, java.util.Properties 형식에서 프로퍼티 파일을 지정할 수 있습니다. 초기 로그 구성은 이 파일로부터 읽힙니다.
이러한 프로퍼티의 모두 정의되지 않는 경우, 전술대로, LogManager 는 JRE 디렉토리의 프로퍼티 파일 lib/logging.properties 로부터 그 초기 구성을 읽어들입니다.
로가-와 Handler 의 프로퍼티는 핸들러나 로가-에 관해서 닷으로 단락지어진 이름으로부터 시작되는 이름을 가집니다.
글로벌 로그의 프로퍼티에는 다음의 것이 있습니다.
LogManager 의 구성시에 로드 된 모든 클래스는 시스템의 클래스 패스에 없으면 안 되는 것에 주의해 주세요. 이것에는 LogManager 클래스, 모든 config 클래스, 모든 handler 클래스가 포함됩니다.
Logger 는 닷으로 단락지어진 이름에 근거하는 네이밍 계층에 저장됩니다. 그 결과, 「a.b.c」는 「a.b」의 아이가 됩니다만, 「a.b1」 및 「a.b2」는 피어가 됩니다.
이름이 「. level」로 끝나는 모든 프로퍼티는 Logger 의 로그 레벨을 정의한다고 보여집니다. 따라서, 「foo.level」는 「foo」라고 불리는 로가-, 및 네이밍 계층에 있는 그 아이의 로그 레벨을 재귀적으로 정의합니다. 로그 레벨은 프로퍼티 파일로 정의된 순서로 적용됩니다. 따라서, 트리내의 아이 노드에 대한 레벨의 설정은 부모에 대한 설정의 후에 실시할 필요가 있습니다. 프로퍼티명 「. level」를 사용해, 트리의 루트의 레벨을 설정할 수 있습니다.
LogManager 오브젝트의 모든 메소드는 multi-thread에 대해서 안전합니다.
생성자의 개요 | |
protected |
LogManager ()
protected constructor 입니다. |
메소드의 개요 | |
boolean |
addLogger (Logger logger)
이름 첨부 로가-를 추가합니다. |
void |
addPropertyChangeListener (PropertyChangeListener l)
로그의 프로퍼티가 재독 보고 붐비어 되었을 때에 불려 가는 이벤트 청취자를 추가합니다. |
void |
checkAccess ()
현재의 문맥이 로그 구성의 변경에 있어 신뢰할 수 있을지 어떨지를 조사합니다. |
Logger |
getLogger (String name)
이름 첨부 로가-를 검출하는 메소드입니다. |
Enumeration |
getLoggerNames ()
기존의 로가-의 이름의 열거를 돌려줍니다. |
static LogManager |
getLogManager ()
글로벌 LogManager 를 돌려줍니다. |
String |
getProperty (String name)
로그의 프로퍼티의 값을 돌려줍니다. |
void |
readConfiguration ()
로그의 프로퍼티를 재차 초기화해 로그 구성을 재차 읽어들입니다. |
void |
readConfiguration (InputStream ins)
로그의 프로퍼티를 재차 초기화해, 로그 구성이 지정된 스트림으로부터 재차 읽어들입니다. |
void |
removePropertyChangeListener (PropertyChangeListener l)
프로퍼티 변경 이벤트의 이벤트 청취자를 삭제합니다. |
void |
reset ()
로그의 구성을 리셋트 합니다. |
클래스 java.lang. Object 에서 상속받은 메소드 |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
생성자의 상세 |
protected LogManager()
메소드의 상세 |
public static LogManager getLogManager()
public void addPropertyChangeListener(PropertyChangeListener l) throws SecurityException
l
- 이벤트 청취자
SecurityException
- 시큐러티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우public void removePropertyChangeListener(PropertyChangeListener l) throws SecurityException
지정된 청취자가 발견되지 않는 경우는 아무것도 실시하지 않고 복귀합니다.
l
- 이벤트 청취자
SecurityException
- 시큐러티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우public boolean addLogger(Logger logger)
Logger 의 팩토리 메소드는 이 메소드를 호출해, 신규에 작성된 각 Logger 를 등록합니다.
어플리케이션은 Logger 오브젝트에 대한 스스로의 참조를 보관 유지해, 참조가 가베지 컬렉트되지 않게 할 필요가 있습니다. LogManager 는 약참조만을 보관 유지할 수가 있습니다.
logger
- 새로운 로가-
NullPointerException
- 로가-의 이름이 null 의 경우public Logger getLogger(String name)
신뢰할 수 없는 코드가 임의의 이름 로가-를 작성하는 경우가 있으므로, 이 메소드는 보안상 중요한 로깅용의 Logger 의 검출에는 사용하지 말아 주세요.
name
- 로가-의 이름
public Enumeration getLoggerNames()
주: Logger 는 새로운 클래스가 로드 되면(자) 동적으로 추가됩니다. 이 메소드는 현재 등록되어 있는 로가-에만 붙어 통지합니다.
public void readConfiguration() throws IOException , SecurityException
구성 프로퍼티의 배치에는 기동시에 사용된 같은 규칙이 사용됩니다. 이 때문에, 통상 로그의 프로퍼티는 기동시에 사용된 같은 파일로부터 재독 보고 붐비어 됩니다.
새로운 구성 파일의 모든 로그 레벨의 정의는 타겟의 Logger 가 있는 경우는 Logger.setLevel()를 사용해 적용됩니다.
PropertyChangeEvent 는 프로퍼티가 읽히고 나서 방아쇠 됩니다.
SecurityException
- 시큐러티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우
IOException
- 구성을 읽어들일 때 입출력의 문제가 발생했을 경우public void reset() throws SecurityException
모든 이름 첨부 로가-에 관해서는 리셋트 오퍼레이션은 모든 Handler 를 삭제해 닫고 나서, 루트 로가-이외를 레벨 null 로 설정합니다. 루트 로가-의 레벨은 Level.INFO 로 설정됩니다.
SecurityException
- 시큐러티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우public void readConfiguration(InputStream ins) throws IOException , SecurityException
새로운 구성 파일의 모든 로그 레벨의 정의는 타겟의 Logger 가 있는 경우는 Logger.setLevel()를 사용해 적용됩니다.
ins
- 프로퍼티를 읽어들이는 스트림
SecurityException
- 시큐러티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우
IOException
- 스트림으로부터 의 read에 문제가 있는 경우public String getProperty(String name)
name
- 프로퍼티명
public void checkAccess() throws SecurityException
이 체크에 실패했을 경우는 SecurityException 를 슬로우 합니다. 그렇지 않은 경우는 정상적으로 복귀합니다.
SecurityException
- 시큐러티 매니저가 존재하는 경우로, 호출원이 LoggingPermission("control")를 가지지 않는 경우
|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 모든 클래스 | ||||||||||
개요: 상자 | 필드 | constructor | 메소드 | 상세: 필드 | constructor | 메소드 |
Java, Java 2 D, 및 JDBC 는 미국 및 그 외의 나라에 있어서의 미국 Sun Microsystems, Inc. 의 상표 혹은 등록상표입니다.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.